Кто и когда заходил в базу 1С: разбираем журнал регистрации
Содержание
Историю входов пользователей в 1С смотрят в журнале регистрации: в БП 3.0 и ЗУП 3.1 это Администрирование → Обслуживание → Журнал регистрации, в любой конфигурации — через Все функции → Стандартные → Журнал регистрации. Дальше ставите отбор по событиям Сеанс. Начало и Сеанс. Завершение — и видите, кто, когда, с какого компьютера и через какой клиент заходил в базу.
Механизм общий для платформы 8.3, от конфигурации зависит только путь к журналу в меню. Ниже — как найти записи о входах в файловой и клиент-серверной базе, как читать поля, как выгрузить историю в таблицу и почему журнал иногда оказывается пустым.
Где платформа 1С хранит историю входов
Каждое подключение к базе создаёт сеанс. Платформа пишет в журнал регистрации несколько событий о нём:
- 🟢
Сеанс. Аутентификация— пользователь прошёл проверку логина и пароля (или вошёл по доменной учётке); - 🔴
Сеанс. Ошибка аутентификации— неверный пароль или несуществующий пользователь; - ▶️
Сеанс. Начало— сеанс открыт, человек работает в базе; - ⏹
Сеанс. Завершение— сеанс закрыт: вышел сам, закрыл окно, сеанс завершили из консоли или он оборвался.
Журнал — это не таблица в базе данных. Это набор файлов в каталоге 1Cv8Log, который лежит рядом с базой (в файловом варианте) или в каталоге кластера (в серверном).
Платформа знает два формата журнала:
| Формат | Файлы | Особенность |
|---|---|---|
| Последовательный | 1Cv8.lgf + файлы *.lgp | Текстовые файлы, быстро пишутся, удобно делить по периодам |
| SQLite | 1Cv8.lgd | Один файл-база, быстрее отборы, но файл растёт и может повредиться |
Журнал регистрации не попадает в выгрузку .dt. Если базу перенесли через выгрузку-загрузку, история входов осталась на старом месте. Чтобы её сохранить, скопируйте каталог 1Cv8Log отдельно.
Отсюда практический вывод: если вам нужна история за год, проверьте, есть ли файлы за этот год. Журнал могли сократить, удалить вместе со старым каталогом базы или просто не вести.
Как посмотреть историю входов в файловой базе 1С
В файловой базе журнал открывается из самой программы. Права нужны административные: обычный пользователь пункта не увидит.
Из пользовательского режима
- Откройте базу под пользователем с полными правами.
- Перейдите в
Администрирование → Обслуживание, в группе «Протоколы работы» нажмите «Журнал регистрации». - Если такого раздела нет (например, нетиповая конфигурация), включите «Все функции»:
Сервис и настройки → Параметры → Отображать команду «Все функции». После этого откройте главное меню (кнопка с тремя полосками) →Все функции → Стандартные → Журнал регистрации. - В открывшемся журнале нажмите «Установить отбор» и оставьте только события сеанса (подробнее — в разделе про отборы).
Из Конфигуратора
- Запустите базу в режиме Конфигуратора.
- Выберите
Администрирование → Журнал регистрации. - Откроется та же форма с теми же отборами.
Способ через Конфигуратор хорош, когда конфигурация не открывается в пользовательском режиме или в ней нет нужной команды. Минус: пока вы в Конфигураторе, вы сами занимаете сеанс, и это тоже попадёт в журнал.
Если открыть базу нельзя
Каталог 1Cv8Log можно забрать с диска и разобрать на копии базы. Самый простой путь:
- Сделайте пустую копию той же конфигурации (или скопируйте всю папку базы).
- Замените в ней каталог
1Cv8Logскопированным. - Откройте журнал в копии — записи будут исходной базы.
Не трогайте файлы журнала в рабочей базе, пока в ней работают люди. Копируйте их, а не переносите: платформа держит файлы открытыми и пишет в них постоянно.
История входов пользователей в клиент-серверной 1С
В серверном варианте журнал ведёт кластер 1С, а не СУБД. В логах SQL Server или PostgreSQL вы увидите только подключение служебной учётки сервера 1С — пользователей 1С там нет.
Просмотр через клиент
Порядок тот же, что в файловой базе: Администрирование → Обслуживание → Журнал регистрации или Все функции → Стандартные → Журнал регистрации. Журнал читает сервер 1С, клиенту файлы не нужны. Это работает и в тонком клиенте, и в веб-клиенте.
Где лежат файлы на сервере
Каталог журнала находится в рабочем каталоге кластера:
<srvinfo>\reg_1541\<идентификатор базы>\1Cv8Log
<srvinfo>— каталог, указанный при установке службы агента сервера. На Windows часто этоC:\Program Files\1cv8\srvinfo, на Linux —/home/usr1cv8/.1cv8/1C/1cv8.reg_1541— каталог кластера по номеру порта менеджера кластера (1541 по умолчанию).<идентификатор базы>— GUID информационной базы. Его видно в свойствах базы в консоли администрирования серверов или в файле реестра кластера1CV8Clst.lstв том же каталогеreg_1541.
Доступ к этим файлам нужен, когда база не стартует, а историю посмотреть надо, или когда журнал хотят обрабатывать сторонним инструментом.
Активные сеансы — это не история
Консоль администрирования серверов показывает только тех, кто подключён прямо сейчас (ветка «Сеансы» у базы). Для этой же цели есть утилита rac: rac session list --cluster=<id> --infobase=<id>. В пользовательском режиме БСП-конфигураций есть обработка «Активные пользователи» в том же разделе Администрирование → Обслуживание.
Всё это — снимок текущего момента. Кто заходил вчера вечером, покажет только журнал регистрации.
Отборы в журнале регистрации: оставляем только входы
Без отбора журнал показывает всё подряд: записи документов, фоновые задания, ошибки. За месяц в рабочей базе набираются сотни тысяч строк. Поэтому первым делом — отбор.
Нажмите «Установить отбор» в командной панели журнала и заполните:
| Поле отбора | Что указать для анализа входов |
|---|---|
| Интервал | Конкретные даты: от этого сильно зависит скорость |
| Пользователи | Конкретный сотрудник или пусто для всех |
| Компьютеры | Если ищете входы с определённой машины |
| Приложения | Например, только «Конфигуратор» — кто открывал базу на изменение |
| События | Сеанс. Начало, Сеанс. Завершение, Сеанс. Ошибка аутентификации |
| Уровень | Можно не трогать: события сеанса пишутся с уровнем «Информация», ошибки входа — «Ошибка» |
Типовые сценарии отбора:
- 🔍 Кто был в базе в выходные. Интервал — суббота и воскресенье, события —
Сеанс. Начало. - 🔐 Подбирают ли пароль. Событие —
Сеанс. Ошибка аутентификации, без отбора по пользователю. Серия ошибок с одного компьютера за минуты — повод разбираться. - 🛠 Кто правил конфигурацию. Приложение — «Конфигуратор», события — начало и завершение сеанса.
- ⏱ Сколько сотрудник был в базе. Пользователь — один, события — начало и завершение. Пары «начало — завершение» с одинаковым номером сеанса дают длительность.
Отбор по интервалу ставьте всегда. Журнал за два-три года без интервала может открываться минутами, а на SQLite-формате — заметно грузить сервер.
Как читать поля журнала регистрации
Каждая строка — одно событие. Для входов важны такие колонки:
| Колонка | Что означает |
|---|---|
| Дата | Время события по часам сервера (или компьютера с файловой базой) |
| Пользователь | Имя из списка пользователей базы |
| Компьютер | Имя компьютера, с которого подключились |
| Приложение | Тонкий клиент, толстый клиент, веб-клиент, Конфигуратор, фоновое задание, COM-соединение и др. |
| Событие | Тип события сеанса |
| Комментарий | Подробности: для ошибки входа — текст ошибки |
| Сеанс | Номер сеанса — связывает начало и завершение |
| Рабочий сервер, порты | Только в клиент-серверном варианте: какой сервер кластера обслуживал сеанс |
Пара деталей, которые часто сбивают с толку:
- 👤 Пользователь
<Не определен>— в базе нет ни одного пользователя, вход идёт без авторизации. Тогда понять, кто именно заходил, можно только по полю «Компьютер». - 💻 При работе через терминальный сервер или RDP в поле «Компьютер» будет имя терминального сервера, а не рабочей станции сотрудника.
- 🌐 Для веб-клиента в «Компьютер» попадает сервер публикации, а не браузер пользователя.
- ⚙️ Фоновые задания и регламентные задания тоже открывают сеансы. Если видите десятки входов в ночное время — проверьте колонку «Приложение», скорее всего это они, а не люди.
- 🔁 Номер сеанса не уникален во времени: после перезапуска сервера номера начинаются снова. Сопоставляйте начало и завершение в пределах одних суток.
Выгрузка истории входов и автоматический контроль
Выгрузка в файл вручную
Отфильтрованный список можно сохранить. В форме журнала в меню «Ещё» есть команда вывода списка — получите табличный документ, который сохраняется в Excel. Этого хватает для разового отчёта руководителю или службе безопасности.
В БСП-конфигурациях (БП 3.0, ЗУП 3.1, УТ 11) есть ещё отчёт «Анализ журнала регистрации». Он строит сводку по активности пользователей за период: кто сколько работал и в какие дни. Найти его проще всего через «Отчеты администратора» в разделе Администрирование.
Выгрузка кодом
Для регулярного контроля историю входов получают программно — методом ВыгрузитьЖурналРегистрации(). Он выполняется на сервере и требует права на журнал регистрации. Пример для внешней обработки:
&НаСервере
Функция ВходыЗаПериод(ДатаНачала, ДатаОкончания)
События = Новый Массив;
События.Добавить("_$Session$_.Start");
События.Добавить("_$Session$_.AuthenticationError");
Отбор = Новый Структура;
Отбор.Вставить("ДатаНачала", ДатаНачала);
Отбор.Вставить("ДатаОкончания", ДатаОкончания);
Отбор.Вставить("Событие", События);
Таблица = Новый ТаблицаЗначений;
ВыгрузитьЖурналРегистрации(Таблица, Отбор,
"Дата, ИмяПользователя, Компьютер, ПредставлениеПриложения, Событие, Сеанс");
Возврат Таблица;
КонецФункции
В отборе события указывают служебными идентификаторами, а не русскими названиями: _$Session$_.Start — начало сеанса, _$Session$_.Finish — завершение, _$Session$_.AuthenticationError — ошибка входа. Результат — обычная таблица значений: её можно свернуть по пользователю, вывести в отчёт или отправить по почте регламентным заданием.
Что контролировать регулярно
Для расследований глубже журнала есть технологический журнал платформы (настраивается файлом logcfg.xml). Он пишет события на уровне сервера, но объём у него огромный, и включают его точечно, на время разбора.
Журнал регистрации пустой или тормозит: что делать
Записей о входах нет вообще
Проверьте уровень журнала. В Конфигураторе: Администрирование → Настройка журнала регистрации. Если выбрано «Не регистрировать» или «Регистрировать ошибки», записи о нормальных входах не пишутся — у них уровень «Информация». Поставьте «Регистрировать информацию» или выше.
Включить журнал задним числом нельзя: история за период, когда он был выключен, не восстановится.
История обрывается на определённой дате
Варианты:
- журнал сокращали — в той же настройке есть команда «Сократить», она удаляет записи старше выбранной даты;
- базу переносили через
.dt, а каталог1Cv8Logне скопировали; - базу перенесли на другой сервер 1С: у неё новый идентификатор в кластере и новый каталог журнала.
Журнал открывается очень долго
- Задайте интервал в отборе — это главное.
- В настройке журнала выберите разделение файлов по периодам (например, по месяцам). Платформа будет читать только файлы нужного периода.
- Старые периоды заархивируйте: перенесите файлы
*.lgpза прошлые годы в архив, держа копию.
Менять формат журнала или сокращать его лучше в нерабочее время. На больших журналах операция идёт долго и нагружает сервер, а сотрудникам в это время будет неудобно работать.
Нет пункта «Журнал регистрации»
У пользователя нет права на журнал регистрации. В типовых конфигурациях оно входит в профиль «Администратор». Выдать его можно через Администрирование → Настройки пользователей и прав → Группы доступа, добавив сотрудника в группу администраторов, — но лучше просто смотреть журнал под учёткой администратора.
Время в журнале не совпадает с реальным
Журнал пишет время по часам сервера 1С (в файловой базе — по часам компьютера, где лежит база). Если сервер в другом часовом поясе или у него сбиты часы, сдвиг будет во всех записях. Сверьте время на сервере, прежде чем делать выводы о «ночных входах».
Частые вопросы
Видно ли в журнале, какой пароль вводили при ошибке входа?
Можно ли узнать IP-адрес пользователя?
Пишется ли в журнал вход через COM-соединение или HTTP-сервис?
Сколько места занимает журнал регистрации?
Может ли пользователь стереть свои входы из журнала?
1Cv8Log правами доступа на диске.