Журнал регистрации в формате .lgd: где лежит, как читать и чинить

· 9 мин

Содержание

Файл 1Cv8.lgd — это журнал регистрации информационной базы 1С:Предприятия 8.3, записанный одним файлом в формате базы данных SQLite. В нём платформа хранит события: входы и выходы пользователей, запись и удаление объектов, ошибки, фоновые задания, обновления конфигурации. Лежит он в подкаталоге 1Cv8Log рядом с базой, а читать его правильно через сам журнал регистрации в 1С, а не напрямую.

Есть два формата журнала. Последовательный — словарь 1Cv8.lgf плюс много файлов *.lgp с событиями по периодам. Формат SQLite — один 1Cv8.lgd. Первый проще чинить и чистить, второй удобнее для выборок, но при сбое повреждается целиком. Какой из них выбрать и что делать, если журнал сломался или разросся до гигабайтов, разобрано ниже.

Что такое файл LGD и зачем он нужен базе

Журнал регистрации — встроенный механизм платформы, а не конфигурации. Он работает в любой базе: Бухгалтерии, ЗУП, УТ, самописной. Конфигурация может только добавлять свои события методом ЗаписьЖурналаРегистрации().

Что попадает в журнал:

  • 👤 начало и завершение сеанса, неудачные попытки входа;
  • 📝 запись, проведение, пометка на удаление и удаление объектов;
  • ⚠️ ошибки времени выполнения, в том числе с текстом исключения;
  • ⚙️ запуск и завершение фоновых и регламентных заданий;
  • 🔧 изменение конфигурации, обновление структуры базы, загрузка .dt;
  • 🗂 события, которые пишет сама конфигурация: обмены, загрузка банка, обновление релиза.

Для каждой записи хранятся дата и время, пользователь, компьютер, приложение (тонкий клиент, конфигуратор, фоновое задание), событие, объект метаданных, данные (ссылка), представление и комментарий, а также номер сеанса и статус транзакции.

Журнал регистрации и технологический журнал — разные вещи. Технологический журнал включается файлом logcfg.xml, пишется в текстовые .log и нужен для разбора производительности и сбоев платформы. Файлы .lgd к нему отношения не имеют.

Где находится 1Cv8.lgd в файловой и серверной базе

Путь зависит от варианта работы базы.

Вариант базыГде искать журнал
ФайловаяКаталог базы (там, где 1Cv8.1CD) → подкаталог 1Cv8Log
Клиент-серверная<каталог srvinfo>\reg_1541\<идентификатор базы>\1Cv8Log на рабочем сервере

Для серверной базы каталог srvinfo по умолчанию находится в C:\Program Files\1cv8\srvinfo, но при установке его часто переносят. Точное место видно в параметрах запуска службы агента сервера: ключ -d в строке запуска службы.

Идентификатор базы — это GUID. Чтобы понять, какой GUID у вашей базы, откройте в каталоге reg_1541 файл 1CV8Clst.lst любым текстовым редактором и найдите по имени базы её строку: рядом с именем стоит идентификатор.

Файл 1CV8Clst.lst — реестр кластера. Открывайте копию или только на чтение. Случайное сохранение с правкой может сломать список баз на сервере.

Как открыть и просмотреть журнал регистрации

Штатно, из 1С

Это основной способ. Платформа сама расшифрует коды пользователей, компьютеров и метаданных.

  1. Конфигуратор: меню Администрирование → Журнал регистрации.
  2. Режим 1С:Предприятие: Все функции → Стандартные → Журнал регистрации. Если пункта «Все функции» нет в меню, включите его в Сервис и настройки → Параметры → Отображать команду «Все функции».
  3. Типовые конфигурации на БСП (Бухгалтерия 3.0, ЗУП 3.1, УТ 11): журнал есть в разделе Администрирование → Обслуживание.

В форме журнала задайте отбор: период, пользователь, событие, объект метаданных. Без отбора по периоду в большом журнале форма может открываться минутами.

Самый быстрый поиск «кто удалил документ»: отбор по событию «Данные. Удаление» и по нужному объекту метаданных за узкий период. Потом откройте запись — в поле «Данные» будет представление удалённого объекта.

Выгрузка в файл

Отобранные записи можно сохранить из формы журнала в XML, а программно — методом ВыгрузитьЖурналРегистрации(ИмяФайла, Отбор). Так журнал передают разработчику или подрядчику, не отдавая саму базу.

Напрямую через SQLite

Файл .lgd открывается любым просмотрщиком SQLite, например DB Browser for SQLite. Внутри — таблицы-справочники кодов (пользователи, компьютеры, события, метаданные) и основная таблица событий, где вместо имён стоят числовые коды. Читать такое без связки таблиц неудобно, но для массового анализа SQL-запросом это работает.

Открывайте только копию файла. Работающая база держит журнал открытым на запись. Если просмотрщик заблокирует файл или запишет в него хоть что-то, 1С может начать выдавать ошибки записи журнала.

Формат хранения: LGD против LGF и LGP

Разница между форматами влияет на всё: на скорость, на чистку, на восстановление после сбоя.

ПризнакSQLite (1Cv8.lgd)Последовательный (1Cv8.lgf + *.lgp)
Сколько файловОдинСловарь и файлы событий по периодам
Поиск с отборомБыстрее на больших объёмахМедленнее, файлы читаются подряд
Удаление старых событийТолько через 1С или сокращение журналаМожно убрать старые .lgp целиком
ПовреждениеСтрадает весь файлОбычно один .lgp
Размер на дискеНе уменьшается сам после удаления записейУменьшается при удалении файлов

Если рядом с 1Cv8.lgd на короткое время появляется файл 1Cv8.lgd-journal — это служебный файл SQLite, который живёт во время записи транзакции. Удалять его вручную нельзя: он нужен для отката незавершённой записи.

Про упоминания «LDX» рядом с LGD: в штатной паре форматов журнала регистрации такие файлы не участвуют. Если в каталоге 1Cv8Log вы видите незнакомое расширение, не удаляйте его по отдельности — переносите каталог журнала целиком.

Как сменить формат журнала

Платформа определяет формат по тому, какой файл лежит в каталоге 1Cv8Log. На этом основан рабочий приём перевода:

  1. Выгоните пользователей и дождитесь завершения фоновых заданий. Пока база запущена, журнал трогать нельзя.
  2. Для серверной базы на время операции заблокируйте начало сеансов в консоли кластера.
  3. Перенесите весь каталог 1Cv8Log в архив — это ваша копия истории.
  4. Создайте новый пустой каталог 1Cv8Log.
  5. Положите в него пустой файл с нужным именем: 1Cv8.lgf — для последовательного формата, 1Cv8.lgd — для SQLite.
  6. Запустите базу. Платформа начнёт писать журнал в выбранном формате.

Старую историю после этого можно смотреть, подключив архивную копию к копии базы. В рабочем журнале её уже не будет.

Типичные проблемы с LGD и их диагностика

У журнала в формате SQLite три частых беды: он разрастается, повреждается или к нему нет доступа.

Диагностика: выберите симптом

Почему файл не уменьшается после сокращения

SQLite при удалении записей помечает страницы свободными, но размер файла не уменьшает. Поэтому «сократили журнал, а файл всё такой же большой» — нормальное поведение.

Уменьшить файл можно командой VACUUM в просмотрщике SQLite. Делайте это только так:

  1. Остановите работу с базой (для сервера — заблокируйте сеансы).
  2. Скопируйте 1Cv8.lgd в отдельную папку.
  3. Выполните над копией:
VACUUM;
  1. Проверьте, что копия открывается в просмотрщике.
  2. Положите сжатый файл на место исходного, исходник сохраните в архив.

Если на любом шаге что-то пошло не так, верните исходный файл. Не выполняйте VACUUM над журналом работающей базы.

Проблемы с доступом в серверной базе

Сервер 1С пишет журнал от имени пользователя службы агента — по умолчанию это USR1CV8. Если каталог srvinfo перенесли на другой диск или восстановили из бэкапа, права на него часто теряются.

Проверьте:

  • ✅ у пользователя службы есть право «Изменение» на весь каталог srvinfo;
  • ✅ каталог журнала не исключён из записи политикой антивируса и не лежит на сетевой папке;
  • ✅ система резервного копирования не держит 1Cv8.lgd открытым во время работы базы.

Настройка журнала регистрации

Настройка делается в конфигураторе: Администрирование → Настройка журнала регистрации. Монопольный доступ не нужен, но права администратора в базе обязательны.

Уровень регистрации

УровеньЧто пишетсяКогда выбирать
Не регистрироватьНичегоПочти никогда: теряется вся история
Регистрировать ошибкиТолько ошибкиТестовые базы, где важен минимальный размер
Ошибки и предупрежденияПлюс предупрежденияНебольшие базы без требований к аудиту
Ошибки, предупреждения и информациюПлюс информационные события, в том числе запись данныхРабочие базы, где нужно разбирать «кто что сделал»
Регистрировать все событияПлюс примечанияВременно, на время поиска проблемы

На практике для рабочей бухгалтерской базы ставят третий-четвёртый уровень. Максимальный уровень раздувает журнал быстро: в базе на 30–50 активных пользователей файл может прибавлять сотни мегабайт в месяц.

Разделение по периодам и сокращение

В той же форме задаётся период разделения журнала. Для последовательного формата это означает новые файлы .lgp за каждый период — их удобно архивировать и удалять.

Кнопка сокращения журнала удаляет события до указанной даты. Перед этим платформа предложит сохранить удаляемые записи в файл — не отказывайтесь, если журнал может понадобиться для проверки.

Программная настройка

Для автоматизации есть методы встроенного языка:

  • УстановитьИспользованиеЖурналаРегистрации() — задать уровень;
  • ПолучитьИспользованиеЖурналаРегистрации() — прочитать текущий;
  • ЗаписьЖурналаРегистрации() — записать своё событие;
  • ВыгрузитьЖурналРегистрации() — выгрузить записи с отбором в файл.

Пример записи своего события из серверного модуля:

ЗаписьЖурналаРегистрации("Загрузка выписки",
    УровеньЖурналаРегистрации.Информация,
    Метаданные.Документы.ПоступлениеНаРасчетныйСчет,
    ,
    "Загружено документов: " + Формат(КоличествоДокументов, "ЧГ=0"));

Журнал как инструмент аудита и безопасности

Журнал регистрации — главный источник ответа на вопрос «кто это сделал». Но он не заменяет полноценную систему аудита.

Что он умеет:

  • 🔍 показать, кто и когда изменил или удалил документ, справочник, настройку;
  • 🔍 показать неудачные попытки входа — признак подбора пароля;
  • 🔍 показать, кто запускал конфигуратор и обновлял структуру базы.

Чего он не делает: не хранит старые значения реквизитов. Журнал скажет, что документ изменён, но не покажет, какая сумма была до правки. Для этого в типовых конфигурациях есть отдельный механизм версионирования объектов, его включают в настройках администрирования.

Как защитить журнал

Пользователь с доступом к каталогу 1Cv8Log на диске может просто удалить файл — и вместе с ним следы. Поэтому:

  1. Дайте права на каталог только пользователю службы 1С и администраторам.
  2. Для файловой базы на общей папке это сложнее: всем пользователям нужен доступ на запись к каталогу базы. Если аудит важен, переводите базу на клиент-серверный вариант.
  3. Регулярно копируйте журнал в архив вместе с резервной копией базы.
  4. В ролях конфигурации право на просмотр журнала регистрации выдавайте только администраторам и ответственным лицам. Рядовому бухгалтеру оно не нужно.

В конфигурациях на БСП есть настройка регистрации событий доступа к персональным данным. Её включают, когда компания обязана фиксировать, кто просматривал данные сотрудников или клиентов. Журнал от этого растёт заметно быстрее.

Частые вопросы

Можно ли просто удалить файл 1Cv8.lgd?
При остановленной базе — да, платформа создаст новый журнал при запуске. Но вся история событий пропадёт. Лучше перенести каталог 1Cv8Log в архив, а не удалять.
Почему в каталоге базы нет файла lgd?
Значит, журнал ведётся в последовательном формате: в 1Cv8Log лежат 1Cv8.lgf и файлы lgp. Для серверной базы журнал хранится не у пользователя, а на рабочем сервере в srvinfo.
Сколько места занимает журнал регистрации?
Зависит от уровня и числа пользователей. В небольшой базе — десятки мегабайт за год, в базе на десятки пользователей с максимальным уровнем — гигабайты.
Переносится ли журнал при выгрузке в .dt?
Нет. Файл выгрузки содержит данные и конфигурацию, но не журнал регистрации. Чтобы сохранить историю, копируйте каталог 1Cv8Log отдельно.
Можно ли смотреть журнал другой базы?
Да: разверните копию базы и замените в ней каталог 1Cv8Log архивным. Журнал откроется штатно, со всеми расшифровками.