Файлы журнала регистрации .lgp: чем и как их просмотреть

· 9 мин

Содержание

Файл LGP открывают средствами самой платформы 1С: скопируйте всю папку 1Cv8Log вместе с файлом 1Cv8.lgf, запустите Конфигуратор любой базы и откройте 1Cv8.lgf через Файл → Открыть. Платформа покажет обычное окно журнала регистрации с отборами и сортировкой. Отдельный LGP без своего LGF в 1С не откроется: в нём хранятся коды пользователей, компьютеров и событий, а расшифровка этих кодов лежит в LGF.

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

Что за файл LGP в 1С и где его найти

LGP — это кусок журнала регистрации информационной базы. Журнал в «старом», последовательном формате состоит из двух типов файлов:

  • 📘 1Cv8.lgf — словарь. В нём перечислены пользователи, компьютеры, приложения, события, метаданные и узлы, каждому присвоен номер.
  • 📄 ГГГГММДДччммсс.lgp — файлы с самими событиями. Имя файла — дата и время его создания, например 20260915000000.lgp. Платформа начинает новый файл по периоду, заданному в настройках журнала.

Внутри LGP записи хранятся в текстовом виде, в фигурных скобках. Вместо имени пользователя стоит число, вместо названия события — тоже число. Поэтому в «Блокноте» файл открывается, но понять, кто что сделал, по нему почти невозможно.

Где лежит папка 1Cv8Log

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

Каталог кластера для службы Windows по умолчанию находится в папке srvinfo внутри профиля пользователя, от имени которого запущена служба 1С. GUID базы виден в консоли администрирования серверов: в свойствах информационной базы. Если баз много, сопоставить GUID с именем можно и по файлу 1CV8Clst.lst в каталоге reg_1541.

Если в папке вместо LGF и LGP лежит один файл 1Cv8.lgd, журнал хранится в формате SQLite. Его открывают тем же способом, только выбирают файл .lgd.

Как открыть LGP файл через Конфигуратор 1С

Главный приём: открывают не сам LGP, а словарь 1Cv8.lgf, лежащий в той же папке. Платформа подтягивает все LGP-файлы рядом с ним.

Пошагово

  1. Скопируйте папку 1Cv8Log целиком в отдельное место, например D:\Logs\Buh_1Cv8Log\. Работать с копией надёжнее, чем с живым журналом рабочей базы.
  2. Проверьте, что в копии есть и 1Cv8.lgf, и нужные по датам файлы .lgp.
  3. Запустите Конфигуратор любой базы. Подойдёт и пустая учебная база: содержимое журнала от конфигурации не зависит.
  4. Выберите Файл → Открыть.
  5. В диалоге выбора укажите тип файлов журнала регистрации и выберите 1Cv8.lgf.
  6. Откроется окно журнала. Установите отбор по периоду, пользователю, событию или метаданным — так же, как в обычном журнале.

Отбор по периоду ставьте сразу. Если папка за несколько лет весит десятки гигабайт, без отбора окно может долго загружаться.

Если база доступна

Когда нужен журнал работающей базы, файлы копировать не нужно:

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

Данные будут те же, что лежат в LGP. Платформа сама читает файлы из 1Cv8Log. Права на просмотр журнала есть у пользователей с ролью администратора; обычный бухгалтер этой команды в меню может не увидеть.

Просмотр в текстовом редакторе

Для быстрого поиска по тексту комментария подойдёт Notepad++ или любой редактор, который справляется с большими файлами. Файлы в кодировке UTF-8. Ищите конкретную строку — номер документа, фрагмент текста ошибки. Найдя запись, возьмите из неё дату и время в начале строки и посмотрите это событие уже в окне журнала 1С.

LGP и хранилище конфигурации: почему их путают

В инструкциях в интернете LGP иногда называют «файлом хранилища». Это неверно. Хранилище конфигурации — отдельный механизм групповой разработки, и устроено оно по-другому.

Журнал регистрацииХранилище конфигурации
Что хранитСобытия работы пользователей и системыВерсии объектов конфигурации
Основные файлы1Cv8.lgf, *.lgp или 1Cv8.lgd1cv8ddb.1CD и служебные каталоги
Чем открытьФайл → Открыть в КонфигуратореКонфигурация → Хранилище конфигурации
Зачем открыватьНайти, кто и когда изменил данныеПолучить версию модуля, формы, объекта

Если задача — достать из хранилища старую версию объекта, LGP не нужен. Подключитесь к хранилищу и откройте историю: Конфигурация → Хранилище конфигурации → История хранилища. Выделите версию и сохраните её в файл .cf или сравните с текущей конфигурацией. Отдельный объект из хранилища можно получить командой получения объектов в окне хранилища.

Если же вопрос звучит как «кто изменил объект в хранилище», ответ тоже в истории хранилища, а не в журнале базы. Журнал регистрации фиксирует изменения данных, а не правки конфигурации в хранилище.

Форматы журнала: LGP, LGF и LGD

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

ПризнакПоследовательный (LGF + LGP)SQLite (LGD)
Файлы1Cv8.lgf + много *.lgpОдин 1Cv8.lgd
Чем открыть вне 1СТекстовый редактор, без расшифровки кодовЛюбой просмотрщик SQLite
АрхивированиеСтарые LGP легко перенести или упаковать по одномуФайл один, частями не перенести
Рост размераФайлы делятся по периодамОдин файл растёт до сокращения журнала
Открыть в 1СВыбрать 1Cv8.lgfВыбрать 1Cv8.lgd

Конвертировать LGP «в нормальный формат» сторонними утилитами не нужно. Если в инструкциях встречаются программы вроде V83Convert, учтите: платформа читает оба формата сама, а запускать непроверенный exe на сервере с журналом рискованно.

Как поменять формат журнала

Формат определяется тем, какие файлы лежат в папке 1Cv8Log. Распространённый способ перейти с LGD на последовательный формат:

  1. Дождитесь, когда в базе никто не работает . Для серверной базы завершите сеансы и временно запретите подключения, иначе платформа продолжит писать в открытый файл.
  2. Перенесите 1Cv8.lgd в архивную папку. Удалять не нужно: его можно будет открыть через Файл → Открыть.
  3. Создайте в 1Cv8Log пустой файл 1Cv8.lgf.
  4. Разрешите подключения. Новые события платформа начнёт писать в формате LGF + LGP.

Старые записи при этом в новый формат не переходят. Они остаются в архивном файле, и смотреть их нужно отдельно.

Почему LGP не открывается: ошибки и решения

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

Отдельно о версии платформы. Если журнал записан более новой версией 8.3, а вы открываете его Конфигуратором заметно более старой, возможна ошибка чтения. Открывайте копию платформой с номером не ниже той, на которой работает база.

Автоматизация: выгрузка журнала кодом и скриптами

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

Выгрузка из 1С встроенным языком

Метод глобального контекста ВыгрузитьЖурналРегистрации выгружает события в таблицу значений или в XML-файл. Пример для внешней обработки, выполняемой на сервере:

&НаСервере
Процедура ВыгрузитьУдаленияНаСервере()

    Отбор = Новый Структура;
    Отбор.Вставить("ДатаНачала", НачалоДня(ТекущаяДата()) - 7 * 86400);
    Отбор.Вставить("ДатаОкончания", КонецДня(ТекущаяДата()));
    Отбор.Вставить("Событие", "_$Data$_.Delete");

    События = Новый ТаблицаЗначений;
    ВыгрузитьЖурналРегистрации(События, Отбор);

    Для Каждого Строка Из События Цикл
        Сообщить(Формат(Строка.Дата, "ДФ='дд.ММ.гггг ЧЧ:мм'") + " | "
            + Строка.ИмяПользователя + " | " + Строка.ПредставлениеДанных);
    КонецЦикла;

КонецПроцедуры

Код события удаления данных — _$Data$_.Delete, записи — _$Data$_.Update. Если вместо таблицы значений передать строку с путём к файлу, метод запишет события в XML. Такой файл дальше обрабатывают чем угодно, хоть Excel, хоть скриптом.

Скрипт для поиска по LGP без запуска 1С

Когда база недоступна, а нужно понять, в каком файле искать, поможет PowerShell. Скрипт ищет строку во всех LGP за выбранный месяц и показывает, где она нашлась:

$logDir = "D:\Logs\Buh_1Cv8Log"
$text   = "00БП-000125"

Get-ChildItem -Path $logDir -Filter "202609*.lgp" |
    Select-String -Pattern $text -SimpleMatch -Encoding UTF8 |
    Select-Object Filename, LineNumber |
    Format-Table -AutoSize

Дальше откройте журнал через 1Cv8.lgf и поставьте отбор на дату из имени найденного файла. Так на большом архиве вы не ждёте загрузки всего журнала целиком.

Регулярная архивация LGP

Простой bat-файл в планировщике заданий может раз в месяц упаковывать старые LGP. Трогайте только файлы за закрытые периоды: текущий LGP платформа держит открытым.

@echo off
set LOG=D:\1C\Base\1Cv8Log
set ARC=E:\Archive\1Cv8Log
robocopy "%LOG%" "%ARC%" *.lgp /MINAGE:40
robocopy "%LOG%" "%ARC%" 1Cv8.lgf

Первая строка копирует только LGP старше 40 дней. Вторая отдельно забирает словарь 1Cv8.lgf: он меняется постоянно, поэтому под фильтр по возрасту не попадёт, а без свежего словаря архивные LGP потом не расшифровать. Удалять скопированные LGP из рабочей папки — отдельное решение, его лучше принимать вручную, сверив архив.

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

Журнал регистрации — главное доказательство при разборе спорных ситуаций: кто провёл документ задним числом, кто удалил контрагента. Испортить его легко, восстановить нельзя.

  • 🔒 Работайте с копией. Открывать в Конфигураторе живую папку рабочей базы не нужно.
  • ⏱ Копируйте в тихое время. Файл, в который идёт запись, может скопироваться не полностью.
  • 📦 Переносите LGF вместе с LGP. Словарь пополняется со временем: старый LGF не расшифрует новые записи.
  • 🧾 Не правьте LGP вручную. Даже сохранение в редакторе с другой кодировкой или концом строк делает файл нечитаемым для 1С.
  • 🗂 Сокращайте журнал штатно. В Конфигураторе это Администрирование → Настройка журнала регистрации: там задают уровень регистрации, период разделения файлов и сокращают журнал с сохранением удаляемых событий в файл.

Не удаляйте содержимое 1Cv8Log на работающем сервере, чтобы «освободить место». Платформа продолжит работу, но история событий за весь период пропадёт. Сначала перенесите старые LGP в архив, потом удаляйте.

Доступ к копиям журнала ограничьте. В событиях видны имена пользователей, компьютеров и представления данных — номера документов, наименования контрагентов. Хранить такие архивы в общей папке не стоит.

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

Можно ли открыть LGP в тонком клиенте?
Открыть файл журнала из произвольной папки удобнее всего в Конфигураторе через «Файл → Открыть». В тонком клиенте журнал смотрят только для текущей базы.
Нужна ли для просмотра та же конфигурация, что у базы?
Нет. Подойдёт Конфигуратор любой базы, даже пустой. Имена объектов метаданных берутся из словаря LGF, а не из конфигурации.
Почему LGP-файлов так много?
Платформа начинает новый файл по периоду, заданному в настройках журнала: например, каждые сутки или каждый месяц. При мелком периоде за год набираются сотни файлов.
Можно ли удалить старые LGP?
Можно, если их история больше не нужна. Удалённые события из журнала исчезнут. Надёжнее сначала перенести файлы в архив вместе с 1Cv8.lgf.
Чем отличается LGP от LGD?
LGP — файл событий последовательного формата, работает в паре со словарём LGF. LGD — единый файл журнала в формате SQLite. Оба открываются в Конфигураторе через «Файл → Открыть».