Кто, когда и что поменял в базе: разбираемся с журналом регистрации 1С 8.3
Содержание
Журнал регистрации 1С 8.3 открывается в типовых конфигурациях через Администрирование → Обслуживание → Журнал регистрации, а в любой базе — через Все функции → Стандартные → Журнал регистрации или в Конфигураторе: Администрирование → Журнал регистрации. Физически он хранится в папке 1Cv8Log: у файловой базы — рядом с файлом 1Cv8.1CD, у клиент-серверной — на сервере 1С в каталоге srvinfo\reg_1541\<GUID базы>\1Cv8Log.
Типичная ситуация: главбух утром видит, что проводки за прошлый квартал «уехали», а вчера вечером всё сходилось. Кто перепровёл документ, с какого компьютера и во сколько — ответ лежит именно в журнале регистрации. Найти его, прочитать события и отсечь лишнее можно за 10–15 минут, если знать, где искать.
Как открыть журнал регистрации в 1С 8.3
Есть три способа, и они дают одно и то же содержимое. Разница только в удобстве отборов и в том, какие права нужны.
| Способ | Где | Когда удобен |
|---|---|---|
| Через раздел «Администрирование» | Администрирование → Обслуживание → Журнал регистрации | Бухгалтерия 3.0, ЗУП 3.1, УТ 11 и другие конфигурации на БСП |
| Через стандартные функции | Главное меню (☰) → Все функции → Стандартные → Журнал регистрации | Любая конфигурация, в том числе нетиповая |
| Через Конфигуратор | Администрирование → Журнал регистрации | Когда база не открывается в пользовательском режиме |
Если пункта «Все функции» нет в меню, включите его: Главное меню (☰) → Сервис → Параметры → флажок «Отображать команду “Все функции”».
Открыть журнал может пользователь с правом «Журнал регистрации» в роли. В типовых конфигурациях оно входит в профиль «Администратор». Рядовой бухгалтер обычно журнал не видит — это нормально, а не сбой.
Форма журнала в типовых конфигурациях
В конфигурациях на БСП журнал открывается своей формой, а не стандартной формой платформы. В ней есть:
- 📅 быстрый выбор периода;
- 🔍 кнопка отбора с полями «Пользователь», «Событие», «Метаданные», «Данные», «Компьютер»;
- 🔢 ограничение числа показанных событий — чтобы большая база не «висла» при открытии.
Если нужные записи не находятся, первым делом увеличьте это ограничение или сузьте период. Часто событие есть, просто оно не попало в первую порцию строк.
Журнал по конкретному объекту
Чтобы посмотреть историю одного документа, не обязательно листать весь журнал. Откройте отбор, в поле «Данные» выберите нужный документ — и останутся только записи по нему: создание, изменение, проведение, удаление.
Где хранится журнал регистрации физически
Журнал — это не таблица в базе данных, а отдельные файлы. Поэтому его не видно в SQL, он не попадает в выгрузку .dt и не переносится вместе с базой, если копировать только 1Cv8.1CD.
Файловая база
Папка 1Cv8Log лежит в каталоге информационной базы. Путь к каталогу виден в окне запуска 1С: выделите базу в списке — путь отображается внизу окна.
D:\Bases\Buh\
1Cv8.1CD
1Cv8Log\
1Cv8.lgd
Клиент-серверная база
Журнал лежит на рабочем сервере 1С, в каталоге кластера. Каталоги по умолчанию:
| ОС сервера | Типичный путь |
|---|---|
| Windows | C:\Program Files\1cv8\srvinfo\reg_1541\<GUID>\1Cv8Log |
| Linux | /home/usr1cv8/.1cv8/1C/1cv8/reg_1541/<GUID>/1Cv8Log |
Каталог srvinfo задаётся при установке службы сервера, поэтому у вас он может отличаться. Точный путь виден в параметрах запуска службы «Агент сервера 1С:Предприятия» — ключ -d.
1541 в имени папки — порт менеджера кластера. Если кластер работает на другом порту, папка будет называться иначе, например reg_2541.
Как понять, какой <GUID> относится к вашей базе:
- Откройте файл
1CV8Clst.lstв каталогеreg_1541любым текстовым редактором (только для чтения!). - Найдите имя базы — рядом с ним стоит её идентификатор.
- Папка с таким же именем и есть каталог этой базы.
Второй способ — отсортировать папки в reg_1541 по дате изменения: каталог базы, с которой сейчас работают, обновлялся последним.
Два формата файлов
| Формат | Файлы | Особенности |
|---|---|---|
| Новый (SQLite) | 1Cv8.lgd | Один файл, быстрые отборы, по умолчанию в новых базах |
| Старый (текстовый) | 1Cv8.lgf + файлы *.lgp по периодам | Файлы по периодам удобно архивировать и переносить по частям |
На больших базах файл 1Cv8.lgd может разрастаться до десятков гигабайт. Тогда журнал открывается минутами, а сервер тратит на него диск и память.
Что записывается в журнал: события, уровни и поля
Каждая строка журнала — одно событие. У события есть уровень важности и набор полей.
Уровни событий
- ℹ️ Информация — штатные действия: вход, запись документа.
- 📝 Примечание — служебные отметки, чаще от самой конфигурации.
- ⚠️ Предупреждение — что-то пошло не так, но работа продолжилась.
- ❌ Ошибка — операция прервалась: исключение, ошибка фонового задания, неудачный вход.
Частые события
| Событие | Что означает |
|---|---|
Сеанс.Начало / Сеанс.Завершение | Пользователь вошёл и вышел |
Сеанс.Ошибка аутентификации | Неверный пароль или вход под несуществующим пользователем |
Данные.Добавление | Создан новый объект |
Данные.Изменение | Объект перезаписан |
Данные.Удаление | Объект удалён непосредственно |
Данные.Проведение / Данные.Отмена проведения | Документ проведён или распроведён |
Фоновое задание.Ошибка выполнения | Регламентное или фоновое задание упало |
Информационная база.Изменение конфигурации | Правили конфигурацию в Конфигураторе |
Поля записи
Самые полезные для расследования:
- 👤 Пользователь и Компьютер — кто и откуда;
- 🖥 Приложение — тонкий клиент, Конфигуратор, фоновое задание, COM-соединение, веб-клиент;
- 📄 Метаданные и Данные — какой вид объекта и какой конкретно документ;
- 💬 Комментарий — текст ошибки или пояснение;
- 🔄 Транзакция — статус: зафиксирована, отменена или не завершена;
- 🔢 Сеанс — номер сеанса, по нему можно собрать все действия одного входа.
Статус «Отменена» в поле «Транзакция» значит, что изменения не записались в базу. Если видите «Данные.Изменение» с отменённой транзакцией, документ на самом деле не менялся.
Отборы в журнале регистрации: как быстро найти нужное
Журнал без отбора бесполезен: в рабочей базе за день набираются тысячи строк. Действуйте от узкого к широкому.
- Задайте период — день или несколько часов вокруг подозрительного момента.
- В отборе выберите пользователя, если он известен.
- В поле «Событие» оставьте нужную группу, например только
Данные.*. - В поле «Метаданные» выберите вид объекта: «Документ. Реализация (акты, накладные, УПД)», «Справочник. Контрагенты».
- Если интересует конкретный документ — выберите его в поле «Данные».
- Отсортируйте по дате и откройте строку двойным щелчком: в карточке события виден полный комментарий.
Готовые сценарии отборов
| Задача | Что поставить в отбор |
|---|---|
| Кто удалил документ | Событие Данные.Удаление, метаданные — вид документа |
| Кто перепровёл документ задним числом | Событие Данные.Проведение, поле «Данные» — сам документ |
| Подбор пароля | Событие Сеанс.Ошибка аутентификации, смотрите поле «Компьютер» |
| Почему не загрузилась выписка или курс валют | Уровень «Ошибка», приложение «Фоновое задание» |
| Кто менял конфигурацию | Событие Информационная база.Изменение конфигурации |
Пометка на удаление — это перезапись объекта, а не его удаление. Если документ пометили на удаление, ищите событие изменения. Данные.Удаление появится, только когда объект удалят окончательно, например обработкой удаления помеченных.
Выгрузка в программном коде
Для регулярного контроля журнал можно читать встроенным языком. Пример выгружает ошибки за текущий день в таблицу значений:
Отбор = Новый Структура;
Отбор.Вставить("ДатаНачала", НачалоДня(ТекущаяДата()));
Отбор.Вставить("ДатаОкончания", КонецДня(ТекущаяДата()));
Отбор.Вставить("Уровень", УровеньЖурналаРегистрации.Ошибка);
ТаблицаСобытий = Новый ТаблицаЗначений;
ВыгрузитьЖурналРегистрации(ТаблицаСобытий, Отбор);
Для Каждого Строка Из ТаблицаСобытий Цикл
Сообщить(Строка(Строка.Дата) + " | " + Строка.ИмяПользователя + " | " + Строка.Комментарий);
КонецЦикла;
Свою запись в журнал из обработки или расширения добавляют процедурой ЗаписьЖурналаРегистрации:
ЗаписьЖурналаРегистрации("МояОбработка.Загрузка",
УровеньЖурналаРегистрации.Предупреждение, , ,
"Пропущено строк: " + Формат(КоличествоПропусков, "ЧГ=0"));
Настройка, сокращение и очистка журнала регистрации
Все настройки — в Конфигураторе: Администрирование → Настройка журнала регистрации.
Уровень регистрации
- Не регистрировать — журнал не ведётся. Так делать нельзя в рабочей базе: вы теряете единственный след изменений.
- Регистрировать ошибки — только ошибки.
- Регистрировать ошибки и предупреждения.
- Регистрировать ошибки, предупреждения и информацию.
- Регистрировать все события — режим по умолчанию, он нужен для расследований.
Понижать уровень ради экономии места почти никогда не стоит. Разумнее делить журнал на периоды и архивировать старые части.
Разделение на периоды
В той же форме задаётся, как часто журнал начинает новый файл: по дням, неделям, месяцам и т. д. Это работает для старого формата .lgf + .lgp. Для больших баз удобно делить по дням или неделям: старые файлы легко перенести в архив.
Сокращение журнала
Кнопка «Сократить» в форме настройки удаляет события до указанной даты. Перед удалением 1С предлагает сохранить удаляемые записи в файл — не отказывайтесь, это ваш архив на случай проверки.
Сокращение необратимо. Если записи не сохранили в файл, восстановить их можно только из резервной копии сервера или папки базы.
Смена формата и очистка вручную
Если файл 1Cv8.lgd разросся и журнал перестал открываться, администраторы переводят базу на старый формат:
- Предупредите пользователей: работу с базой придётся остановить, все сеансы будут завершены.
- Для клиент-серверной базы остановите службу «Агент сервера 1С:Предприятия». Для файловой — дождитесь, пока все выйдут из базы.
- Скопируйте папку
1Cv8Logцеликом в архив. - Удалите из неё
1Cv8.lgdи создайте пустой файл1Cv8.lgf. - Запустите службу и войдите в базу — платформа начнёт писать журнал в старом формате.
Обратный переход делается так же: убрать .lgf и .lgp, оставить пустую папку — платформа создаст 1Cv8.lgd.
Не удаляйте файлы журнала при работающей службе сервера: процесс держит их открытыми, и вы получите повреждённый журнал. Делайте это вечером или в выходной, когда простой никому не мешает.
Ошибки в журнале регистрации: как диагностировать проблемы
Журнал — первое место, куда стоит смотреть, когда что-то сломалось без видимой причины.
Что искать по симптомам
Как читать текст ошибки
В поле «Комментарий» платформа пишет полный текст исключения. Ищите в нём три вещи:
- 📍 модуль и номер строки — например,
{ОбщийМодуль.ОбменСБанком.Модуль(245)}: так разработчик сразу видит, где упало; - 🧾 текст ошибки —
Нарушение прав доступа!,Ошибка при вызове метода контекста,Конфликт блокировок при выполнении транзакции; - 👤 пользователь и приложение — одна и та же ошибка у одного человека и у всех говорит о разных причинах: в первом случае это права или настройки, во втором — код или данные.
Скопируйте комментарий целиком и передайте разработчику вместе с датой, пользователем и номером сеанса. По этим четырём полям ошибку можно воспроизвести.
Журнал регистрации и технологический журнал
Путают часто, но это разные инструменты.
| Журнал регистрации | Технологический журнал | |
|---|---|---|
| Включён по умолчанию | Да | Нет, включается файлом logcfg.xml |
| Что пишет | Действия пользователей и ошибки на уровне бизнес-логики | Вызовы сервера, запросы к СУБД, блокировки, длительность операций |
| Кому нужен | Бухгалтеру, администратору базы | Администратору сервера, эксперту по производительности |
| Где смотреть | В самой 1С | Текстовые файлы *.log в каталоге, заданном в настройке |
Если вопрос «кто и что сделал» — нужен журнал регистрации. Если «почему тормозит» или «откуда взаимоблокировки» — технологический журнал.
Если в журнале нет нужных записей
Бывает, что событие точно было, а журнал молчит. Проверьте по порядку:
- 🔧 Уровень регистрации. В Конфигураторе мог стоять режим «Регистрировать ошибки» — тогда изменения документов не пишутся.
- ✂️ Журнал сокращали. Посмотрите дату самой ранней записи. Если она недавняя — старые события удалены, ищите сохранённый при сокращении файл или резервную копию папки
1Cv8Log. - 🗂 Базу переносили. При переносе через
.dtжурнал не переносится. Старые записи остались в папке исходной базы или на старом сервере. - 🔢 Ограничение показа. Форма показывает не все события сразу — увеличьте лимит или сузьте период.
Чтобы история не терялась при переносах, включите папку 1Cv8Log в регулярное резервное копирование вместе с базой. Для клиент-серверных баз это отдельный пункт: бэкап СУБД журнал не захватывает.
Частые вопросы
Можно ли подделать или удалить запись журнала регистрации из 1С?
Видно ли в журнале, что именно изменили в документе — старую и новую сумму?
Сколько места занимает журнал регистрации?
Можно ли открыть журнал другой базы, не подключая её?
1Cv8Log в пустую файловую базу на той же версии платформы и открыть журнал через Конфигуратор. Работайте с копией файлов, а не с оригиналом.