Чужой или архивный журнал регистрации: читаем файлы 1Cv8Log без исходной базы

· 10 мин

Содержание

Чтобы открыть журнал регистрации 1С 8.3 из файла, создайте пустую файловую базу на той же или более новой платформе, закройте её и замените в ней папку 1Cv8Log на скопированную из нужной базы. Затем запустите пустую базу и откройте журнал: Все функции → Стандартные → Журнал регистрации. Платформа прочитает чужие файлы как собственные — со всеми пользователями, компьютерами и событиями.

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

Что у вас естьСпособКогда подходит
Рабочая база с доступомЖурнал в самой базеОбычный разбор инцидента
Только папка 1Cv8LogПустая база-«читалка»База удалена, сломана, на другом сервере
Нужен отчёт или поиск по годамВыгрузка в XML, скриптАудит, аналитика, передача подрядчику
Журнал в формате SQLite (.lgd)Пустая база или SQL-клиентБазы со старым форматом журнала

Где искать файлы журнала и из чего они состоят

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

📁 Файловая база. Папка 1Cv8Log находится внутри каталога базы, рядом с 1Cv8.1CD. Путь к каталогу видно в окне запуска 1С: выделите базу в списке, он показан внизу окна.

🖥 Клиент-серверная база . Журнал хранится на рабочем сервере 1С, а не на сервере СУБД. Путь по умолчанию для службы на Windows:

C:\Program Files\1cv8\srvinfo\reg_1541\<GUID базы>\1Cv8Log

Если при установке службы задали другой каталог srvinfo, ищите там. Папка reg_1541 соответствует порту менеджера кластера; при нестандартном порте номер будет другим. GUID базы — длинное имя папки; нужную найдёте по дате изменения файлов или в консоли кластера.

🐧 Сервер на Linux. Каталог по умолчанию — /home/usr1cv8/.1cv8/1C/1cv8/reg_1541/<GUID базы>/1Cv8Log.

Какие файлы внутри

В 8.3 встречаются два формата журнала.

Последовательный (текстовый) формат:

  • 1Cv8.lgf — словарь: пользователи, компьютеры, приложения, объекты метаданных, события. Каждой строке присвоен номер.
  • *.lgp — сами события. Имена файлов — дата и время начала периода, например 20261001000000.lgp. Внутри события ссылаются на номера из словаря.

Формат SQLite:

  • 1Cv8.lgd — одна база данных SQLite, внутри и словари, и события.

Файл .lgp без 1Cv8.lgf почти бесполезен. Вместо имён пользователей и названий документов вы увидите числа. Копируйте папку целиком, а не выборочные файлы.

Чтобы узнать формат, просто загляните в папку. Есть .lgf и .lgp — последовательный. Есть .lgd — SQLite. Пустая база-«читалка» понимает оба варианта.

Открываем журнал 1С из файла через пустую базу

Это основной и самый надёжный способ. Он работает и для архивных логов, и для журнала базы, которую уже удалили из кластера.

  1. Скопируйте папку журнала. С сервера копируйте 1Cv8Log целиком в рабочую папку, например D:\LogCheck\src. Копия нужна, чтобы не мешать службе, которая продолжает писать в живые файлы.
  2. Создайте пустую файловую базу. В окне запуска: Добавить → Создание новой информационной базы → Создание информационной базы без конфигурации. Каталог — например, D:\LogCheck\base.
  3. Запустите её один раз и закройте. Платформа создаст служебную папку 1Cv8Log внутри каталога базы.
  4. Замените папку. Удалите содержимое D:\LogCheck\base\1Cv8Log и скопируйте туда файлы из D:\LogCheck\src.
  5. Откройте базу в режиме 1С:Предприятие. Журнал откроется через Все функции → Стандартные → Журнал регистрации. Если пункта «Все функции» нет в главном меню, включите его: Сервис и настройки → Параметры → Отображать команду «Все функции».

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

Почему важна версия платформы

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

Если у вас стоит несколько версий, выберите нужную в свойствах базы в окне запуска: поле «Версия 1С:Предприятия» на последнем шаге редактирования.

Если журнал огромный

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

  • 📅 Переносите только файлы .lgp за нужные даты плюс обязательно 1Cv8.lgf.
  • 🔍 Сразу после открытия задайте отбор по периоду — до того, как пролистывать список.
  • 💾 Работайте с локального SSD, а не по сети с сервера.

Анализ событий в форме журнала 1С

Форма журнала одинакова в любой конфигурации — это платформенный механизм. В типовых конфигурациях на БСП есть ещё своя форма журнала в разделе Администрирование → Обслуживание, но для чужих файлов в пустой базе доступна только стандартная.

Каждая строка журнала содержит:

КолонкаЧто показывает
Дата, времяМомент события с точностью до секунды
ПользовательИмя из списка пользователей базы
КомпьютерИмя машины, с которой работал клиент
ПриложениеТонкий клиент, конфигуратор, фоновое задание, COM-соединение
СобытиеТип: начало сеанса, изменение данных, ошибка и т. д.
Метаданные, данныеКакой объект затронут: документ, справочник
КомментарийТекст ошибки или пояснение
СеансНомер сеанса — по нему связывают события одного входа

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

💡 Ссылки на документы в чужом журнале не откроются: в пустой базе нет этих объектов. Зато в колонке «Представление данных» сохраняется текст вида «Реализация товаров и услуг 0000-000123 от 05.10.2026». По нему документ легко найти в рабочей базе.

Отбор ошибок и подозрительных действий

Без отбора журнал — это сотни тысяч строк. Откройте настройку отбора кнопкой с воронкой или через меню «Ещё» формы. В окне отбора задают период, пользователей, компьютеры, события, метаданные, уровень важности, сеанс и текст комментария.

Уровни важности

  • 🔴 Ошибка — исключения при проведении, сбои фоновых заданий, падения обмена.
  • 🟠 Предупреждение — некритичные проблемы.
  • 🔵 Информация — штатные действия: вход, запись, проведение.
  • ⚪ Примечание — служебные записи.

Начните с уровня «Ошибка» за период инцидента. Это сразу отсекает 95–99% строк обычной базы — точная доля зависит от активности пользователей.

Типовые сценарии поиска

ЗадачаЧто поставить в отбор
Кто удалил документСобытие «Данные. Удаление», метаданные — нужный вид документа
Кто перепровёл периодСобытие «Данные. Проведение», период, вид документа
Подбор пароляСобытие «Сеанс. Ошибка аутентификации»
Кто менял конфигурациюСобытия группы «Информационная база», приложение «Конфигуратор»
Почему упал обменУровень «Ошибка», приложение «Фоновое задание»

💡 Нашли подозрительную запись — запомните номер сеанса и поставьте отбор по нему. Увидите всё, что этот пользователь делал от входа до выхода.

Журнал хранит только то, что разрешено уровнем регистрации. Если в базе стоял уровень «Регистрировать ошибки», событий изменения данных в файлах не будет — их не восстановить никаким способом.

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

Выгрузка журнала в XML и текст

Иногда журнал нужен вне 1С: отправить подрядчику, загрузить в аналитическую систему, найти строку по всем годам сразу.

Выгрузка из формы

В Конфигураторе в форме журнала есть команда сохранения журнала в файл XML — ищите её в меню «Действия» формы. Выгружается то, что попало в отбор, поэтому сначала настройте период и уровень. XML содержит уже расшифрованные имена пользователей и объектов, словарь не нужен.

Выгрузка кодом

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

Таблица = Новый ТаблицаЗначений;
Отбор = Новый Структура;
Отбор.Вставить("ДатаНачала", ТекущаяДата() - 7 * 86400);
Отбор.Вставить("ДатаОкончания", ТекущаяДата());
Отбор.Вставить("Уровень", УровеньЖурналаРегистрации.Ошибка);

ВыгрузитьЖурналРегистрации(Таблица, Отбор);

Для Каждого Строка Из Таблица Цикл
    Сообщить(СтрШаблон("%1 | %2 | %3",
        Строка.Дата, Строка.ИмяПользователя, Строка.Комментарий));
КонецЦикла;

Код выполняется на сервере и требует административных прав. Для разовой проверки удобно запустить его через внешнюю обработку в пустой базе-«читалке».

Если первым параметром передать строку с путём к файлу вместо таблицы, метод сохранит отобранные события в XML.

Чтение .lgp как текста

Файлы .lgp — обычный текст в кодировке UTF-8. Каждое событие — запись в фигурных скобках, где пользователь, компьютер и событие указаны номерами из 1Cv8.lgf. Открыть их можно любым редактором, но расшифровывать номера придётся вручную или скриптом. Для разовой проверки быстрее пустая база; для регулярного анализа — скрипт, который сопоставляет .lgp со словарём.

Журнал в формате SQLite (1Cv8.lgd) открывается любым клиентом SQLite. Работайте только с копией: открытие живого файла сторонней программой может помешать службе 1С.

Уровень детализации и ротация файлов журнала

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

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

  • «Не регистрировать» — журнал не ведётся;
  • «Регистрировать ошибки» — только ошибки;
  • «Регистрировать ошибки и предупреждения»;
  • «Регистрировать ошибки, предупреждения и информацию»;
  • «Регистрировать все события» — включая примечания.

Для расследований нужен уровень с информацией или «все события». Иначе удаления и изменения данных просто не записываются.

Разделение по периодам. В той же форме выбирают, как дробить журнал: по часам, дням, неделям, месяцам или годам. Каждому периоду соответствует свой файл .lgp. Чем мельче период, тем проще потом скопировать нужный кусок и не тащить гигабайты.

💡 Для активной базы на 50+ пользователей удобно делить журнал по дням. Файл за день легко переносится, а инцидент обычно привязан к конкретной дате.

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

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

Регулярный анализ и сторонние инструменты

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

  • 🗓 Регламентное задание в самой базе. Раз в сутки вызывает ВыгрузитьЖурналРегистрации с отбором по ошибкам и отправляет сводку администратору.
  • 📦 Архив журнала. Скрипт по расписанию копирует закрытые файлы .lgp предыдущего периода в архивное хранилище. Живой текущий файл не трогает.
  • 📊 Внешние системы анализа логов. Сторонние парсеры читают пару lgf + lgp, превращают события в записи с понятными полями и отправляют в систему поиска по логам. Там удобно строить графики ошибок и искать по всем базам сразу.
  • 🧩 Обработки с инфостарта и аналогичных ресурсов. Есть готовые внешние обработки для просмотра журнала с расширенным поиском. Перед запуском в рабочей базе проверьте код: обработка выполняется с вашими правами.

Журнал регистрации и технологический журнал — не одно и то же

Журнал регистрации пишет действия пользователей и ошибки прикладного уровня. Технологический журнал — это отдельный механизм платформы: запросы к СУБД, блокировки, взаимоблокировки, долгие вызовы. Он включается файлом logcfg.xml в каталоге conf платформы и пишет файлы .log в заданную папку.

Если вы ищете причину зависаний или ошибок блокировок, а в журнале регистрации пусто, значит, нужен технологический журнал.

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

Можно ли открыть журнал регистрации без установленной 1С?
Полноценно — нет. Без платформы доступны только сырые файлы: .lgp читается текстовым редактором, .lgd — клиентом SQLite, но номера пользователей и объектов придётся расшифровывать по словарю вручную.
Можно ли подменить журнал в рабочей базе вместо пустой?
Нет. Так вы потеряете собственный журнал рабочей базы и смешаете события двух баз. Для чтения чужих файлов всегда используйте отдельную пустую базу.
Сохраняется ли журнал при выгрузке базы в .dt?
Нет. Файл .dt содержит данные и конфигурацию, но не журнал регистрации. Журнал переносят отдельно — копированием папки 1Cv8Log.
Подходит ли журнал как доказательство действий сотрудника?
Журнал показывает, под каким пользователем и с какого компьютера выполнено действие. Но учётную запись мог использовать другой человек, а администратор с доступом к серверу может изменить файлы. Для внутренних проверок этого обычно достаточно, для споров нужны дополнительные подтверждения.
Почему журнал на сервере занимает десятки гигабайт?
Включён уровень «Регистрировать все события» без разделения и сокращения, плюс активные фоновые задания и обмены пишут много событий. Включите разделение по дням и раз в несколько месяцев сокращайте журнал с сохранением старых событий в файл.