Журнал регистрации 1С: кто, когда и что сделал в базе

· 9 мин

Содержание

Все действия пользователя в 1С видны в журнале регистрации. В БП 3.0, ЗУП 3.1, УТ 11 он открывается по пути Администрирование → Обслуживание → Журнал регистрации, в Конфигураторе — Администрирование → Журнал регистрации. Дальше ставите отбор по пользователю и периоду и видите входы, выходы, создание, изменение, проведение и удаление объектов.

Есть условие: запись должна быть включена на уровне «Информация» или «Все события». При уровне «Ошибки» журнал молчит о том, кто провёл или удалил документ. Это механизм платформы, поэтому он одинаков во всех типовых конфигурациях на 8.3.

Что фиксирует журнал регистрации и чего в нём нет

Журнал ведёт сама платформа. Каждая запись — одно событие с набором полей.

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

Основные события, по которым восстанавливают картину дня:

  • 🔑 Сеанс. Начало и Сеанс. Завершение — вход и выход;
  • 🚫 Сеанс. Ошибка аутентификации — неверный пароль или попытка войти чужим именем;
  • ➕ Данные. Добавление — создан новый документ или элемент справочника;
  • ✏️ Данные. Изменение — объект записан повторно;
  • 📗 Данные. Проведение и Данные. Отмена проведения;
  • ❌ Данные. Пометка удаления и Данные. Удаление — второе бывает после удаления помеченных объектов;
  • 👤 Пользователи. Новый, Пользователи. Изменение — правки списка пользователей;
  • ⚙️ события Конфигуратора: обновление конфигурации , загрузка и выгрузка базы.

Чего журнал не покажет:

  • старое и новое значение реквизита. Видно, что Петрова записала документ в 14:32, но не видно, что сумма была 12 000, а стала 21 000;
  • открытие формы и просмотр отчёта — платформа такие события не пишет, если их не регистрирует сама конфигурация;
  • действия под общим логином. Если пятеро работают под «Бухгалтер», журнал покажет одного «Бухгалтера». Различить людей поможет только поле «Компьютер».

Для ответа «что именно поменяли» включите историю изменений объектов: в БП 3.0 это флажок в Администрирование → Общие настройки. Тогда в карточке документа через меню «Ещё» доступна история версий с подсветкой отличий. Она работает только с момента включения — задним числом версии не появятся.

Как включить полную запись действий

Уровень детализации задаётся в Конфигураторе. Нужен пользователь с административными правами.

  1. Откройте базу в режиме Конфигуратор.
  2. Выберите Администрирование → Настройка журнала регистрации.
  3. Выберите уровень Регистрировать ошибки, предупреждения и информацию или Регистрировать все события.
  4. Задайте разделение журнала по периодам, если база большая.
  5. Нажмите «ОК». Новые события начнут писаться сразу, перезапуск сеансов не нужен.

Монопольный режим для этой настройки не требуется.

Какой уровень выбрать

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

Если сейчас стоит «Ошибки», всё, что было до переключения, восстановить нельзя. Журнал не пишет события задним числом. Поэтому настройку проверяют до того, как понадобилось искать виноватого.

Где хранится файл журнала

  • Файловая база — каталог 1Cv8Log внутри папки базы.
  • Клиент-серверная база — на сервере 1С: srvinfo\reg_1541\<идентификатор базы>\1Cv8Log.

Формат на платформе 8.3 бывает двух видов. Новый — один файл 1Cv8.lgd (база SQLite). Старый — текстовые файлы .lgp и словарь 1Cv8.lgf. Посмотреть, какой у вас, проще всего по расширениям в этой папке.

Как найти действия конкретного пользователя

Откройте журнал из пользовательского режима: Администрирование → Обслуживание → Журнал регистрации. Если раздела нет в интерфейсе, подойдёт Все функции → Стандартные → Журнал регистрации. Пункт «Все функции» включается в параметрах главного меню.

Отбор по человеку и периоду

  1. В форме журнала нажмите кнопку установки отбора.
  2. Задайте интервал: например, с 01.09 00:00 по 01.09 23:59.
  3. В поле «Пользователи» выберите сотрудника. Можно отметить нескольких.
  4. Если интересуют только правки данных, в поле «События» оставьте группу «Данные».
  5. Примените отбор.

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

История одного документа

Иногда нужен не человек, а объект: кто трогал реализацию № 457. Делается так:

  1. В отборе в поле «Метаданные» выберите вид документа.
  2. В поле «Данные» укажите сам документ.
  3. Оставьте пользователя пустым.

Получите хронологию: кто создал, кто перепровёл, кто ставил пометку удаления.

Как читать результат

Пример выборки по бухгалтеру за день:

ВремяСобытиеДанные
09:12Сеанс. Начало—
09:40Данные. ДобавлениеПоступление (акт, накладная) 00000312
09:41Данные. ПроведениеПоступление 00000312
11:05Данные. ИзменениеКонтрагент «Альфа»
16:58Данные. Пометка удаленияСчёт на оплату 00000088
18:03Сеанс. Завершение—

Строку с документом можно открыть двойным щелчком и перейти к самому объекту.

Одна запись документа часто даёт сразу два события: изменение и проведение. Это не двойная работа пользователя, а одна кнопка «Провести и закрыть».

Что именно нужно выяснить?

Размер журнала и скорость работы базы

Полная запись событий — это нагрузка на диск. Активная база на 30–50 пользователей на уровне «Информация» может набирать гигабайты журнала за год. Последствия:

  • 🐢 форма журнала долго открывается и долго применяет отбор;
  • 💾 растёт место на диске сервера и время резервного копирования;
  • ⏳ выгрузки за большой период идут десятки минут.

Что помогает:

  1. Разделение по периодам. В той же настройке Конфигуратора включите разбиение журнала по периодам. Платформа будет создавать отдельные файлы, и поиск за месяц не будет перебирать весь архив.
  2. Сокращение журнала. В Конфигураторе Администрирование → Журнал регистрации, затем команда сокращения. Указываете дату, до которой удалить события. Удаляемые записи можно сразу сохранить в отдельный файл — так и делайте.
  3. Узкий отбор. Всегда ставьте интервал и пользователя. Открывать журнал «за всё время» без отбора бессмысленно.

Не удаляйте файлы из папки 1Cv8Log вручную при работающих пользователях. Журнал открыт платформой, и вы рискуете получить повреждённый файл. Если чистка нужна на уровне файлов — делайте её в нерабочее время после завершения всех сеансов и после копии папки.

Журнал регистрации не путайте с технологическим журналом. Технологический настраивается файлом logcfg.xml, пишет запросы, блокировки и вызовы сервера. Он нужен для разбора тормозов и сбоев, а не для ответа «кто провёл документ».

Выгрузка журнала и автоматическая обработка

Ручная выгрузка

  • Через форму. Поставьте отбор, выделите строки и скопируйте их или выведите список через меню «Ещё» в табличный документ. Оттуда — в Excel.
  • В XML из Конфигуратора. В окне журнала есть сохранение в файл. Формат XML понятен любым скриптам.
  • Копия файла .lgd. Это обычная база SQLite. Скопируйте файл и откройте копию любым просмотрщиком SQLite. Основная таблица событий — EventLog, имена пользователей и метаданных лежат в отдельных справочных таблицах и связаны по кодам. Рабочий файл не открывайте — только копию.

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

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

Пользователь = ПользователиИнформационнойБазы.НайтиПоИмени("Петрова Анна");

Отбор = Новый Структура;
Отбор.Вставить("ДатаНачала", НачалоДня(ТекущаяДата()));
Отбор.Вставить("ДатаОкончания", КонецДня(ТекущаяДата()));
Отбор.Вставить("Пользователь", Пользователь);

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

Для Каждого Запись Из События Цикл
    Сообщить(Строка(Запись.Дата) + " | " + Запись.Событие + " | " + Строка(Запись.Данные));
КонецЦикла;

Код выполняется на сервере и требует права на журнал регистрации у того, кто его запускает. Если пользователя с таким именем нет, НайтиПоИмени вернёт Неопределено — в рабочей обработке это стоит проверить до отбора.

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

Типовые сценарии автоматизации

  • ⏰ Регламентное задание раз в сутки выгружает события за вчера в отдельный файл или внешнюю базу. Журнал на сервере можно сокращать, а архив хранится сколько нужно.
  • 📊 Отчёт по активности: число входов, созданных и удалённых документов по каждому сотруднику за месяц.
  • 🔔 Контроль аномалий: удаление документов закрытого периода или вход ночью — сигнал администратору.

Права на журнал и защита логов

Журнал содержит имена сотрудников, названия контрагентов и документов. Это чувствительные данные, и доступ к ним ограничивают.

  • Право на просмотр задаётся на уровне конфигурации — оно называется «Журнал регистрации». В типовых конфигурациях оно входит в административные роли.
  • Обычный бухгалтер или кладовщик журнал не видит, и это правильно.
  • Право «Администрирование» даёт и настройку уровня записи. Человек с ним может отключить регистрацию. Таких пользователей должно быть один-два.

Что сделать для надёжного аудита:

  1. Уберите общие логины. У каждого сотрудника свой пользователь. Иначе журнал не ответит на вопрос «кто».
  2. Включите аутентификацию по паролю или через Windows. Пустые пароли сводят аудит на нет: под любым именем может войти кто угодно.
  3. Закройте папку 1Cv8Log на уровне ОС. Доступ к ней нужен службе сервера 1С и администраторам, а не всем пользователям сети. В файловом варианте это сложнее: пользователям нужен доступ к каталогу базы, а значит, и к журналу. Для серьёзного аудита файловая база подходит хуже.
  4. Копируйте журнал вместе с резервной копией базы. Выгрузка .dt журнал не содержит — это отдельные файлы.
Подготовка базы к аудиту действий
Выполнено: 0 / 7

Когда журнал не помогает и как это обойти

СитуацияПочему пустоЧто делать
Нет событий за нужный деньУровень был «Ошибки» или журнал сокращалиПроверить настройку; искать в сохранённом при сокращении файле
Есть запись, но непонятно, что изменилиЖурнал не хранит значения полейИстория изменений объектов или сравнение с бэкапом
Пользователь «Администратор» вездеРаботали под общим логиномСмотреть поле «Компьютер», разделить логины на будущее
Изменения сделал «пустой» пользовательВ базе нет списка пользователей или это фоновое заданиеПроверить поле «Приложение»: фоновое задание или обмен данными
Форма журнала виситОгромный файл без разделенияУзкий отбор, разделение по периодам, сокращение

Изменения по обмену данными тоже видны. Например, загрузка из УТ в БП оставляет записи от имени пользователя, под которым идёт обмен. Поэтому для синхронизации заводят отдельного служебного пользователя — так правки людей не смешиваются с автоматическими.

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

Видит ли пользователь, что его действия записываются?
Нет. Журнал ведётся платформой незаметно, без уведомлений. Сам сотрудник без права на журнал свои записи открыть не может.
Сколько хранится журнал регистрации?
Пока его не сократят. Платформа сама старые записи не удаляет, срок хранения определяет администратор.
Можно ли удалить отдельную запись из журнала?
Штатно — нет. Сокращение удаляет все события до выбранной даты целиком, точечной правки не предусмотрено.
Видны ли в журнале действия в Конфигураторе?
Да. Вход в Конфигуратор, обновление конфигурации, загрузка и выгрузка базы пишутся с приложением «Конфигуратор». Так видно, кто и когда менял конфигурацию.
Чем журнал регистрации отличается от «Истории изменений»?
Журнал отвечает «кто, когда и с каким объектом». История изменений хранит версии объекта и показывает, какие реквизиты поменялись.