Логи 1С на диске: журнал регистрации, техжурнал и дампы — что где лежит
Содержание
Журнал регистрации 1С хранится в папке 1Cv8Log. В файловой базе она лежит прямо в каталоге базы, рядом с файлом 1Cv8.1CD. В клиент-серверной — на сервере 1С, в каталоге кластера: srvinfo\reg_1541\<GUID базы>\1Cv8Log.
Это главный лог 1С: в него платформа пишет входы пользователей, изменения данных, ошибки и события регламентных заданий. Кроме него у 1С есть ещё два вида логов — технологический журнал и дампы аварийных завершений. Их по умолчанию нет, их включают вручную, и лежат они там, куда укажет администратор.
Какие логи ведёт 1С и чем они отличаются
У платформы 1С:Предприятие 8.3 три источника диагностики. Путают их постоянно, поэтому сначала разведём понятия.
| Лог | Что в нём | Включён по умолчанию | Где смотреть |
|---|---|---|---|
| Журнал регистрации | Действия пользователей, ошибки, записи от кода конфигурации | Да | В программе и в конфигураторе |
| Технологический журнал | Вызовы сервера, исключения, блокировки, запросы к СУБД | Нет, нужен logcfg.xml | Текстовые файлы .log |
| Дампы | Снимок памяти процесса в момент падения | Частично | Файлы .dmp |
Журнал регистрации — это то, что бухгалтер видит в программе, а администратор открывает из конфигуратора. Он привязан к конкретной информационной базе. У каждой базы свой журнал.
Технологический журнал описывает работу самой платформы: какой процесс что выполнял, сколько длился вызов, где упал. Он нужен, когда журнал регистрации молчит, а проблема есть.
Дампы — последний рубеж. Их анализируют, когда процесс 1cv8c.exe, 1cv8.exe или rphost.exe аварийно завершился.
Из каких файлов состоит журнал регистрации
Платформа поддерживает два формата хранения. Определить формат проще всего по расширениям файлов в папке 1Cv8Log.
- 📄 Последовательный формат. Файл
1Cv8.lgf— справочник пользователей , компьютеров, объектов метаданных. Файлы вида20261007000000.lgp— сами записи, по одному на период. Рядом могут лежать индексные файлы.lgx. - 🗄️ Формат SQLite. Один файл
1Cv8.lgd— база данных SQLite со всеми записями.
Файлы .lgp — обычный текст в кодировке UTF-8, но читать их глазами неудобно: вместо имён пользователей там номера из 1Cv8.lgf. Файл .lgd открывается любым клиентом SQLite.
Сколько файлов .lgp появится, зависит от настройки разделения журнала по периодам: по дням, месяцам или годам. При разделении по дням удобно удалять или архивировать старые периоды целиком.
Где найти журнал регистрации файловой базы
В файловом варианте всё просто: журнал лежит внутри каталога базы.
- Откройте окно запуска 1С.
- Выделите базу. Внизу окна показан путь вида
File="D:\Bases\Buh". - Перейдите в этот каталог в проводнике.
- Откройте папку
1Cv8Log.
Итоговый путь будет таким:
D:\Bases\Buh\1Cv8.1CD
D:\Bases\Buh\1Cv8Log\1Cv8.lgf
D:\Bases\Buh\1Cv8Log\20261001000000.lgp
Перенести журнал файловой базы в другое место средствами 1С нельзя. Папка 1Cv8Log всегда рядом с 1Cv8.1CD. Если копируете базу целиком, журнал переедет вместе с ней.
Копия базы без папки 1Cv8Log рабочая, но без истории. Для расследований — кто и когда удалил документ — копируйте каталог целиком.
Где лежат логи серверной базы 1С
На сервере журнал хранится в каталоге кластера. Каталог задаётся при установке службы агента сервера (ragent) параметром -d. Если его не меняли, пути такие.
| Система | Каталог кластера по умолчанию |
|---|---|
| Windows | C:\Program Files\1cv8\srvinfo\reg_1541\ |
| Linux | /home/usr1cv8/.1cv8/1C/1cv8/reg_1541/ |
Число 1541 в имени папки — порт менеджера кластера. Если кластер создан на другом порту, папка будет называться иначе, например reg_2541.
Внутри reg_1541 — по папке на каждую информационную базу. Имена папок — это GUID (уникальный идентификатор) базы, а не её имя. Журнал регистрации лежит во вложенной 1Cv8Log:
C:\Program Files\1cv8\srvinfo\reg_1541\5a3c1f0e-...-9b7d\1Cv8Log\
Как понять, какая папка относится к нужной базе
Есть три способа, от простого к надёжному:
- 🔎 По дате изменения. Отсортируйте папки по дате и откройте
1Cv8Logтой, что менялась только что, пока пользователи работают в нужной базе. Подходит, если баз немного. - 📋 Через файл реестра кластера. В каталоге
reg_1541лежит1CV8Clst.lst. Это текстовый файл: найдите в нём имя базы, рядом будет её GUID. - 🖥️ Через утилиту
rac. Команда выводит список баз с идентификаторами:
rac cluster list
rac infobase summary list --cluster=<id кластера>
Поле infobase в ответе и есть GUID — он совпадает с именем папки.
Как перенести логи сервера на другой диск
Журналы крупных баз занимают десятки гигабайт и забивают системный диск. Сменить каталог журнала в настройках базы нельзя, зато его можно перенести символьной ссылкой:
- Предупредите пользователей: при остановке службы все сеансы оборвутся. Делайте это вне рабочего времени.
- Остановите службу «Агент сервера 1С:Предприятия 8.3».
- Перенесите папку
1Cv8Logна другой диск, например вE:\1CLogs\Buh\1Cv8Log. - Создайте на старом месте точку соединения:
mklink /J "C:\Program Files\1cv8\srvinfo\reg_1541\<GUID>\1Cv8Log" "E:\1CLogs\Buh\1Cv8Log"
- Запустите службу и проверьте, что в журнал пишутся новые события.
Учётной записи, от которой работает служба (по умолчанию USR1CV8), нужны права на запись в новую папку. Без них журнал перестанет пополняться.
Технологический журнал и файлы отладки на клиенте
Когда ошибка возникает только у одного пользователя или только на одном компьютере, журнал регистрации её часто не показывает. Тогда включают технологический журнал.
Где создать logcfg.xml
Технологический журнал управляется файлом logcfg.xml. Платформа ищет его в каталоге conf:
C:\Program Files\1cv8\conf\— общий для всех установленных версий;C:\Program Files\1cv8\8.3.xx.xxxx\bin\conf\— для конкретной версии.
На сервере файл кладут туда же, на машину, где работают рабочие процессы. На клиентском компьютере — в каталог платформы клиента. Перезапуск не нужен: платформа перечитывает файл примерно раз в минуту.
Минимальная настройка — собирать только исключения и дампы:
<?xml version="1.0" encoding="UTF-8"?>
<config xmlns="http://v8.1c.ru/v8/tech-log">
<log location="D:\1C_TechLog" history="24">
<event>
<eq property="name" value="EXCP"/>
</event>
<property name="all"/>
</log>
<dump create="1" location="D:\1C_Dumps"/>
</config>
Здесь history="24" — хранить файлы за последние 24 часа, старые платформа удалит сама.
Как выглядят файлы технологического журнала
В каталоге из параметра location появятся подпапки по процессам: rphost_4120, 1cv8c_7744, ragent_2280. Цифры — идентификатор процесса. Внутри — файлы по часам с именами вида 26100714.log: год, месяц, день, час.
Не оставляйте технологический журнал с фильтром «всё подряд» на рабочем сервере. За час он может записать гигабайты и заполнить диск. Включайте узкий фильтр на время диагностики, потом удаляйте logcfg.xml или убирайте из него секцию <log>.
Дампы и вывод пакетного режима
- 💥 Дампы. Если секция
<dump>задана, файлы.dmpложатся в указанную папку. Без неё клиентские дампы обычно оказываются в профиле пользователя, в папкеdumpsвнутри каталога1C\1cv8в AppData. - 📝 Пакетный режим. При запуске конфигуратора из командной строки ключ
/Outпишет сообщения в текстовый файл. Это лог выгрузок и обновлений по расписанию:
"C:\Program Files\1cv8\8.3.xx.xxxx\bin\1cv8.exe" DESIGNER /F"D:\Bases\Buh" /N"Админ" /DumpIB"E:\Backup\buh.dt" /Out"E:\Backup\dump.log"
Как читать журнал регистрации и отфильтровать нужные события
Открывать файлы .lgp блокнотом бессмысленно. Журнал читают из 1С — там данные уже расшифрованы и есть отборы.
| Откуда | Путь |
|---|---|
| Конфигуратор | Администрирование → Журнал регистрации |
| БП 3.0, ЗУП 3.1, УТ 11 | Администрирование → Обслуживание → Журнал регистрации |
| Любая конфигурация | Главное меню → Функции для технического специалиста → Стандартные → Журнал регистрации |
Пункт «Функции для технического специалиста» включается в параметрах программы (Сервис → Параметры, флажок с тем же названием).
Какие отборы ставить
Журнал большой базы за месяц — сотни тысяч записей. Без отбора форма открывается долго. Сразу задавайте:
- 📅 Период — день или час, когда случилась проблема;
- 🔴 Уровень — «Ошибка» для сбоев, «Информация» для действий пользователей;
- 👤 Пользователь — если знаете, кто работал;
- 🧾 Данные — конкретный документ или элемент справочника, чтобы увидеть всю его историю;
- 🏷️ Событие — например,
Данные. УдалениеилиСеанс. Начало.
Типовые расследования выглядят так:
| Вопрос | Отбор |
|---|---|
| Кто удалил документ | Событие «Данные. Удаление», нужный период |
| Кто менял проведённый документ | Отбор по полю «Данные» на этот документ |
| Почему не отработало регламентное задание | Уровень «Ошибка», событие с «Регламентное задание» в названии |
| Кто заходил в базу ночью | Событие «Сеанс. Начало», период с 00:00 до 06:00 |
Журнал показывает, что объект изменили, но не показывает, какие реквизиты. Поштучную историю полей даёт механизм «Версионирование объектов» в типовых конфигурациях — его нужно включить заранее.
Как настроить, что пишется в журнал
В конфигураторе откройте Администрирование → Настройка журнала регистрации. Там выбирают уровень: от «Не регистрировать» и «Регистрировать ошибки» до «Регистрировать все события». Там же задают разделение журнала по периодам.
Для рабочих баз оставляйте «Регистрировать все события». Если поставить «Не регистрировать», журнал перестанет пополняться и расследовать будет нечего.
Автоматическая выгрузка и мониторинг журнала
Смотреть журнал руками удобно для разовых вопросов. Для контроля каждый день его выгружают и разбирают программно.
Выгрузка кодом
Метод платформы ВыгрузитьЖурналРегистрации() отдаёт записи в таблицу значений с учётом отбора. Пример для регламентного задания или обработки — ошибки за последние сутки:
Отбор = Новый Структура;
Отбор.Вставить("ДатаНачала", ТекущаяДатаСеанса() - 86400);
Отбор.Вставить("Уровень", УровеньЖурналаРегистрации.Ошибка);
Записи = Новый ТаблицаЗначений;
ВыгрузитьЖурналРегистрации(Записи, Отбор);
Для Каждого Строка Из Записи Цикл
Сообщить(Формат(Строка.Дата, "ДФ='dd.MM.yyyy HH:mm'") + " | "
+ Строка.ИмяПользователя + " | " + Строка.Комментарий);
КонецЦикла;
Вместо Сообщить() записи можно отправлять на почту администратору или во внешнюю систему мониторинга. Код выполняется на сервере и требует административных прав.
Свои события конфигурация пишет методом ЗаписьЖурналаРегистрации():
ЗаписьЖурналаРегистрации("Обмен.Загрузка", УровеньЖурналаРегистрации.Ошибка, , ,
"Не удалось прочитать файл обмена");
Внешние инструменты
- 📊 Журнал в формате SQLite (
1Cv8.lgd) читают SQL-запросами. Работайте с копией файла: открытый внешней программой рабочий журнал может блокировать запись. - 📦 Последовательный формат разбирают парсерами
.lgpи отправляют в системы сбора логов (ELK, ClickHouse). Готовые парсеры есть в открытом доступе. - 🛠️ Для технологического журнала у фирмы 1С есть «Корпоративный инструментальный пакет» — он собирает и анализирует техжурнал централизованно.
Частые проблемы с журналом регистрации
Не удаляйте папку 1Cv8Log целиком ради свободного места. История действий пропадёт безвозвратно, а в спорной ситуации, например при проверке, кто провёл документ задним числом, доказывать будет нечем. Сначала сократите журнал с сохранением в файл.
Частые вопросы
Можно ли открыть журнал регистрации без запуска 1С?
1Cv8.lgd открывается любым клиентом SQLite, файлы .lgp — текстовым редактором. Имена пользователей и объектов в .lgp заменены номерами, расшифровка — в 1Cv8.lgf.Входит ли журнал регистрации в выгрузку .dt?
.dt содержит данные и конфигурацию, но не журнал. Чтобы сохранить историю, копируйте папку 1Cv8Log отдельно.