Журнал регистрации 1С: фильтрация по событию, пользователю и дате | infolimp.ru

Журнал регистрации 1С: фильтрация по событию, пользователю и дате

10 мая 2026 · infolimp.ru

Автор: 1С Инсайдер · роль: практик 1С · проверка: типовые конфигурации и рабочие сценарии · 0 комментариев

Журнал регистрации — встроенный аудит-лог платформы 1С:Предприятие 8.3. Он фиксирует входы пользователей, изменения данных, ошибки и регламентные операции. В статье разберём, где журнал хранится, как смотреть его в интерфейсе и выбирать программно через ВыбратьЖурналРегистрации / ВыгрузитьЖурналРегистрации, и как настроить уровень детализации без потери производительности.

Где живёт журнал регистрации

Платформа хранит журнал в каталоге информационной базы (для файлового варианта) или рядом с базой на сервере (для клиент-серверного). Формат зависит от версии платформы:

Тип хранилища и факт ведения журнала задаются в монопольном режиме через Конфигуратор → Администрирование → Параметры информационной базы → Журнал регистрации либо программно методом УстановитьИспользованиеЖурналаРегистрации().

Просмотр через интерфейс

В режиме Предприятия журнал доступен через меню Все функции → Стандартные → Журнал регистрации. По кнопке «Установить отбор» открывается окно фильтра. Без отбора форма открывается «как есть» и подгружает записи по мере прокрутки, что на большом журнале медленно.

Основные параметры отбора

ПараметрЧто фильтрует
Период (Дата начала / Дата окончания)Самый важный параметр — сужает диапазон сканирования. Без него платформа читает журнал с начала ведения.
УровеньИнформация, Предупреждение, Ошибка, Примечание.
ПользователиМножественный выбор с режимом «В списке» или «Не в списке».
СобытияСтандартные категории: _$Session$_.Start, _$Session$_.Authentication, _$Data$_.Update, _$Access$_.AccessDenied и другие.
МетаданныеКонкретный объект конфигурации, например Документ.РеализацияТоваровУслуг.

Программная выборка

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

Параметр КоличествоЗаписей ограничивает выборку по числу строк — критично для регулярных задач: лучше получить последние 1000 ошибок, чем пытаться прочитать миллион.

// Найти все события уровня Ошибка за последний час
// по документу РеализацияТоваровУслуг (пример из типовых
// конфигураций 1С:УТ 11 / 1С:Бухгалтерия / 1С:ERP).
Отбор = Новый Структура;
Отбор.Вставить("ДатаНачала",    ТекущаяДатаСеанса() - 3600);
Отбор.Вставить("ДатаОкончания", ТекущаяДатаСеанса());
Отбор.Вставить("Уровень",       УровеньЖурналаРегистрации.Ошибка);
Отбор.Вставить("Метаданные",    Метаданные.Документы.РеализацияТоваровУслуг);

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

Для Каждого Запись Из Записи Цикл
    Сообщить(
        Формат(Запись.Дата, "ДЛФ=DT") + " | "
        + Запись.ИмяПользователя + " | "
        + Запись.Комментарий
    );
КонецЦикла;
Важно: поле ДатаНачала в отборе — нижняя граница включительно. Если опустить его и не задать КоличествоЗаписей, платформа просканирует журнал с момента ввода базы в эксплуатацию. На сервере с активной базой за пару лет это может занять минуты и упереться в память.

Доступные поля записи

Каждая запись журнала — это структура со стабильным набором полей: Дата, ИмяПриложения, Компьютер, Пользователь, ИмяПользователя, Уровень, Событие, Метаданные, Комментарий, Данные, ПредставлениеДанных, СтатусТранзакции, Сеанс. Поле Данные для событий _$Data$_.Update обычно содержит ссылку на изменённый объект — удобно для аудита, — но не во всех сценариях: для отдельных типов изменений или табличных частей оно может остаться пустым.

Настройка уровня детализации

В Конфигураторе в той же форме «Параметры информационной базы → Журнал регистрации» можно отметить, какие уровни вообще писать. В типовых конфигурациях обычно включены все четыре, но конкретный набор зависит от настроек базы и истории её администрирования. В продакшене с высокой нагрузкой иногда отключают «Информация» и «Примечание», чтобы снизить I/O на запись.

Срок хранения и автоочистка

Чтобы журнал не разрастался бесконечно, задаётся срок разделения — период, через который старые записи отделяются в отдельный сегмент. Параметр — в той же форме либо программно через УстановитьСрокСохраненияЖурналаРегистрации() с одним из значений перечисления СрокСохраненияЖурналаРегистрации (День, Неделя, Месяц, Квартал, Год, БезОграничений). Само удаление старых сегментов автоматическим не является: в файловом варианте «отрезанные» файлы остаются на диске до ручной очистки, а в клиент-серверном — попадают в зону ответственности фоновых регламентных операций сервера, и фактическое освобождение места может задержаться.

Практическое руководство

  1. В отборе всегда указывайте ДатаНачала — иначе платформа просканирует архив с момента ведения базы.
  2. Всегда задавайте КоличествоЗаписей в ВыгрузитьЖурналРегистрации / ВыбратьЖурналРегистрации — иначе при широком отборе можно вычитать слишком много строк и упереться в память.
  3. Настройте регламентное задание, которое раз в сутки выбирает все события уровня Ошибка за прошедшие 24 часа и отправляет администратору на e-mail.
  4. При расследовании инцидента сначала фильтруйте по событию _$Data$_.Update и _$Access$_.AccessDenied, потом сужайте по Метаданные и пользователю.
  5. Если база на 8.3.x ниже 8.3.5 — обновляйтесь до актуальной поддерживаемой ветки. Решение, использовать ли SQLite-журнал, принимайте отдельно: на 8.3.12+ это уже не значение по умолчанию.

Типичные ошибки при работе с журналом

Профессиональные решения для 1С и marketplace-интеграций — каталог отчётов и инструментов на витрине НОПи.

Перейти в каталог решений →