Администрирование · 9 мин
Где хранится журнал регистрации 1С в SQL-базе
Где хранится журнал регистрации 1С в SQL-базе: формат lgd и lgf, таблица EventLog, выгрузка через конфигуратор и запросы. Практические инструкции для администраторов.
Журнал регистрации в клиент-серверном варианте 1С не хранится в таблицах SQL-базы вместе с данными конфигурации. Это отдельный файл на диске сервера, к которому платформа обращается напрямую. Поэтому попытка найти события журнала обычным запросом к базе данных чаще всего заканчивается ничем — их там просто нет.
В зависимости от версии платформы журнал регистрации хранится либо в старом бинарном формате .lgp, либо в новом формате .lgd, который внутри устроен как база SQLite. Именно второй вариант позволяет читать журнал SQL-запросами — но не через сервер СУБД, где лежит сама база 1С, а через файл на диске.
Ниже разберём, где физически искать файлы журнала, чем форматы отличаются, как выгрузить события штатными средствами и как безопасно читать файл формата LGD запросами, не повредив работающую систему.
Где физически лежит журнал регистрации
В файловом варианте работы журнал регистрации находится в подкаталоге 1Cv8Log внутри каталога информационной базы. В клиент-серверном варианте картина иная: каталог базы создаётся на сервере 1С:Предприятия (сервере приложений), а не на сервере СУБД.
Типовой путь на сервере 1С выглядит так: C:\Program Files\1cv8\srvinfo\reg_1541\<GUID базы>\1Cv8Log. GUID базы можно посмотреть в консоли кластера серверов 1С — откройте свойства информационной базы и скопируйте её идентификатор. Внутри каталога 1Cv8Log лежит один или несколько файлов журнала.
Важно понимать: сервер СУБД (MS SQL Server, PostgreSQL) хранит только данные конфигурации — справочники, документы, регистры. Журнал регистрации туда не пишется. Поэтому искать его средствами SQL Server Management Studio в таблицах базы бессмысленно.
Форматы хранения: LGP и LGD
Исторически платформа использовала собственный бинарный формат 1Cv8.lgp. Файл периодически разрезался на части по дате, а читать его можно было только штатными средствами платформы: через конфигуратор или функцию «ВыгрузитьЖурналРегистрации» встроенного языка.
Начиная с версии платформы 8.3.5 появился новый формат 1Cv8.lgd. Внутри это обычная база данных SQLite: один файл, таблица событий, индексы. Такой файл открывается любым инструментом, работающим с SQLite, и события можно выбирать произвольными SQL-запросами.
Переключение формата выполняется в конфигураторе: меню «Администрирование» → «Настройка журнала регистрации» → кнопка «Сменить формат». После конвертации рядом появится файл 1Cv8.lgd, а старые файлы .lgp останутся для истории.
Сравнение форматов журнала
Проприетарный бинарный формат. Читается только платформой: конфигуратором или встроенным языком. Прямые SQL-запросы невозможны.
Файл SQLite. Читается штатно платформой и внешними инструментами через SQL-запросы. Подходит для интеграции с системами мониторинга.
Как выгрузить журнал штатными средствами
Самый безопасный способ получить данные журнала — не трогать файлы напрямую, а использовать механизмы платформы. В конфигураторе откройте «Администрирование» → «Журнал регистрации», установите отбор по дате, пользователю, типу события и выгрузите результат в файл через кнопку «Выгрузить».
Для регулярной выгрузки удобнее встроенный язык. Метод ВыгрузитьЖурналРегистрации() позволяет записать события в XML-файл по расписанию — например, регламентным заданием или внешним скриптом, запускающим 1С в пакетном режиме.
// Выгрузка событий за сутки в XML
ПараметрыОтбора = Новый Структура;
ПараметрыОтбора.Вставить("ДатаНачала", НачалоДня(ТекущаяДата() - 86400));
ПараметрыОтбора.Вставить("ДатаОкончания", ТекущаяДата());
ВыгрузитьЖурналРегистрации("C:\Logs\EventLog.xml", ПараметрыОтбора);Штатная выгрузка не блокирует работу пользователей и не рискует повредить файл журнала — платформа сама управляет доступом. Для большинства задач аудита этого достаточно.
Как читать файл LGD SQL-запросами
Если журнал в формате LGD, его можно открыть утилитой sqlite3 или любым просмотрщиком SQLite (например, DB Browser for SQLite). Основная таблица с событиями называется EventLog, в ней есть поля даты, уровня важности, пользователя, компьютера, события и комментария.
Критическое правило: не открывайте живой файл на работающем сервере. SQLite при открытии может создавать служебные файлы и блокировать запись, что чревато ошибками в работе платформы. Скопируйте файл 1Cv8.lgd на отдельную машину или в другой каталог и работайте с копией.
- 1Остановите отбор: убедитесь, что журнал в формате LGD (файл 1Cv8.lgd в каталоге 1Cv8Log).
- 2Скопируйте файл 1Cv8.lgd в отдельный каталог на своей рабочей машине.
- 3Откройте копию в sqlite3 или DB Browser for SQLite.
- 4Выполните запрос к таблице EventLog с фильтрами по дате и событию.
- 5Проверьте результат: даты в журнале хранятся в числовом формате, их нужно преобразовывать.
Пример запроса к копии файла:
SELECT rowid, date, severity, userName, event, comment
FROM EventLog
ORDER BY rowid DESC
LIMIT 100;Учтите, что дата в LGD хранится в числовом представлении платформы 1С, а не в привычном формате SQLite. Для анализа проще выгрузить выборку в CSV и обработать даты во внешнем инструменте, либо использовать штатную выгрузку журнала, где даты уже человекочитаемы.
Настройка и ротация журнала
Без контроля журнал регистрации растёт неограниченно и может занять десятки гигабайт, особенно если включена регистрация всех событий. Настройка выполняется в конфигураторе: «Администрирование» → «Настройка журнала регистрации».
Там задаётся уровень детализации: можно регистрировать только ошибки, ошибки и предупреждения или все события включая информационные. Для большинства рабочих баз разумный минимум — ошибки и предупреждения плюс события доступа (вход, выход, отказ в доступе).
Ротация настраивается пунктом «Разделять хранение журнала по периодам»: день, неделя, месяц, квартал или год. Платформа будет автоматически создавать новый файл по окончании периода. Старые файлы никто не удаляет — это задача администратора: настройте архивацию или удаление файлов старше нужного срока через планировщик задач.
Диагностика: журнал не пишется или не открывается
Если в конфигураторе журнал пуст или события перестали появляться, проверьте базовые вещи. Первое — не закончилось ли место на диске сервера приложений: при переполнении запись в журнал прекращается. Второе — права учётной записи службы агента сервера 1С на каталог 1Cv8Log.
Третья частая причина — повреждение файла журнала после аварийного выключения сервера. Признак: конфигуратор выдаёт ошибку при открытии журнала. В этом случае остановите службу агента сервера, переместите повреждённый файл из каталога, запустите службу — платформа создаст новый пустой журнал. Старый файл можно попробовать прочитать как копию.
Как проверить результат
Размер 1Cv8.lgd увеличивается в течение рабочего дня
Размер не меняется сутками при активной работе пользователей
Журнал открывается, события отображаются с отборами
Ошибка чтения журнала или пустой список при активной базе
На разделе srvinfo есть запас свободного места
Диск заполнен, запись событий остановлена
Частые вопросы
Можно ли найти журнал регистрации в таблицах базы MS SQL или PostgreSQL?
Нет. Журнал регистрации не хранится в реляционной базе — это отдельный файл 1Cv8.lgd (или 1Cv8.lgp) в каталоге 1Cv8Log на сервере приложений 1С. В SQL-базе есть только служебные таблицы конфигурации, событий журнала среди них нет.
Как узнать GUID базы, чтобы найти каталог журнала?
Откройте консоль кластера серверов 1С, найдите нужную информационную базу в списке и посмотрите её свойства — там указан уникальный идентификатор. Каталог с этим именем внутри srvinfo\reg_1541 и содержит подкаталог 1Cv8Log с журналом.
Можно ли читать журнал формата LGP через SQL?
Нет, LGP — закрытый бинарный формат, читаемый только платформой. Чтобы получить возможность SQL-доступа, переключите журнал на формат LGD через настройку журнала регистрации в конфигураторе. Старые LGP-файлы при этом останутся доступны для просмотра штатными средствами.
Безопасно ли удалять старые файлы журнала регистрации?
Да, но с оговорками: удаляйте только файлы прошлых периодов ротации, а не текущий активный файл, и желательно при остановленной службе агента сервера 1С. Перед удалением имеет смысл заархивировать файлы — журнал может понадобиться для расследования инцидентов.
Почему даты в таблице EventLog выглядят как большие числа?
Платформа хранит дату и время в собственном числовом формате, а не в стандартном представлении SQLite. Для анализа выгружайте выборку и преобразуйте значения во внешнем инструменте, либо используйте штатную выгрузку журнала через конфигуратор, где даты уже в обычном виде.
Как настроить регулярный экспорт журнала в автоматическом режиме?
Используйте метод ВыгрузитьЖурналРегистрации встроенного языка: создайте обработку с отбором по периоду и запускайте её через регламентное задание или пакетный режим запуска 1С по расписанию. Результат сохраняйте в XML или CSV — такие файлы удобно загружать в системы мониторинга и SIEM.
Что важно запомнить
Журнал регистрации 1С хранится не в SQL-базе, а в файле 1Cv8.lgd (SQLite) или 1Cv8.lgp в каталоге 1Cv8Log на сервере приложений. Читайте LGD SQL-запросами только с копии файла, для регулярных задач используйте штатную выгрузку, а рост журнала контролируйте настройкой ротации.