Кто, когда и что делал в базе 1С: журналы, отчёты и мониторинг
Содержание
Посмотреть активность пользователя в 1С 8.3 быстрее всего через журнал регистрации: в типовых конфигурациях (Бухгалтерия 3.0, ЗУП 3.1, УТ 11) он открывается из раздела Администрирование → Обслуживание. Там видно, кто входил в базу, с какого компьютера, когда завершил сеанс и какие документы создал, изменил или удалил. Кто работает прямо сейчас, показывает список «Активные пользователи» в том же разделе.
Остальные способы нужны под конкретный вопрос. Отчёты администратора считают время работы. Версионирование показывает, какое именно поле поменяли в документе. Консоль кластера и технологический журнал отвечают, кто держит блокировку и какой запрос «вешает» базу. Механизмы платформенные, поэтому общие для всех конфигураций на 8.3.
Способы посмотреть активность пользователей: что для какой задачи
| Задача | Инструмент | Где открыть | Нужна настройка заранее |
|---|---|---|---|
| Кто сейчас в базе | Активные пользователи | Администрирование → Обслуживание | Нет |
| Кто входил и что менял | Журнал регистрации | Администрирование → Обслуживание | Уровень записи (по умолчанию пишется) |
| Сколько часов работал сотрудник | Отчёты администратора | Администрирование → Обслуживание | Нет, строятся по журналу |
| Какое поле изменили в документе | Версионирование объектов | Администрирование → Общие настройки | Да, до изменений |
| Кто держит блокировку | Консоль кластера, техжурнал | Сервер 1С | Только клиент-серверный вариант |
| Тяжёлые запросы | Технологический журнал, средства СУБД | Сервер 1С и СУБД | Да, файл logcfg.xml |
Версионирование и технологический журнал работают только с момента включения. Задним числом они ничего не покажут, поэтому включайте их до того, как понадобится разбор.
Журнал регистрации: входы, выходы и изменения данных
Журнал регистрации платформа ведёт сама. Каждая запись содержит дату, пользователя, компьютер, приложение (тонкий клиент, веб-клиент, Конфигуратор), событие и объект данных.
Как открыть журнал
- Раздел
Администрирование → Обслуживание, ссылка «Журнал регистрации». - Если раздела нет или в нём урезано меню —
Все функции → Стандартные → Журнал регистрации. Команду «Все функции» включают вСервис и настройки → Параметры, флажок «Отображать команду “Все функции”». - Из Конфигуратора:
Администрирование → Журнал регистрации.
Открыть журнал может пользователь с правами администратора. Обычному бухгалтеру команда недоступна.
Как отобрать действия конкретного сотрудника
Нажмите «Установить отбор» и заполните:
- 👤 Пользователь — один или несколько;
- 📅 Период — например, вчерашний день целиком;
- 🧩 События — отметьте нужные группы;
- 📄 Данные — конкретный документ или элемент справочника;
- 💻 Компьютер — если нужно понять, с какой машины работали.
Самые полезные события для разбора:
| Событие в журнале | Что значит |
|---|---|
| Сеанс. Начало / Сеанс. Завершение | Вход и выход из программы |
| Сеанс. Аутентификация (ошибка) | Неверный пароль или попытка зайти под чужим именем |
| Данные. Добавление | Создан новый объект |
| Данные. Изменение | Объект записан с изменениями |
| Данные. Проведение / Отмена проведения | Документ проведён или распроведён |
| Данные. Удаление | Объект удалён окончательно |
💡 Если документ «пропал», ищите событие «Данные. Удаление» с отбором по периоду. Пометка на удаление в журнале выглядит как обычное изменение объекта, а сама запись об удалении появляется только после удаления помеченных объектов.
Уровень записи и срок хранения
В Конфигураторе откройте Администрирование → Настройка журнала регистрации. Уровни идут по нарастанию подробности: ошибки, предупреждения, информация, примечания. Для разбора действий пользователей нужен уровень не ниже «Информация» — именно с ним пишутся события изменения данных.
В той же форме журнал можно сократить: удалить записи старше выбранной даты и при желании выгрузить их в файл. Делайте это вне рабочего времени: на большой базе сокращение идёт долго.
Где лежат файлы журнала:
- 📁 файловая база — подпапка
1Cv8Logв каталоге базы; - 🖥 клиент-серверная база
—
srvinfo\reg_1541\<идентификатор базы>\1Cv8Logна сервере 1С.
Новый формат хранит журнал в одном файле 1Cv8.lgd, старый — в наборе файлов .lgp с оглавлением 1Cv8.lgf. Формат переключается в той же форме настройки.
Отчёты по активности и времени работы пользователей
Пролистывать журнал, чтобы понять, сколько человек проработал, неудобно. В конфигурациях на Библиотеке стандартных подсистем (БП 3.0, ЗУП 3.1, УТ 11, КА 2) есть отчёт «Анализ журнала регистрации». Он открывается из Администрирование → Обслуживание → Отчеты администратора.
У отчёта несколько вариантов:
- 📊 Активность пользователей — сводка по всем: сколько сеансов и сколько изменённых объектов за период;
- 🔍 Активность пользователя — один сотрудник, с расшифровкой по объектам;
- ⏱ Продолжительность работы пользователей — время в программе по дням, удобно для сверки с табелем.
Как построить отчёт за неделю:
- Откройте нужный вариант отчёта.
- Задайте период, например с понедельника по пятницу.
- Для «Активности пользователя» выберите сотрудника.
- Нажмите «Сформировать».
Время работы в отчёте — это время открытого сеанса, а не время за клавиатурой. Сотрудник, который оставил программу открытой на ночь, получит 15 часов «работы». Сопоставляйте с количеством изменённых объектов: 15 часов и три записи — явный простой.
Отчёт строится по журналу регистрации. Сократили журнал — пропали и данные за этот период.
История изменений документа: кто и что поменял
Журнал показывает, что документ изменил Иванов в 14:32, но не говорит, что именно он исправил. Для этого служит версионирование объектов.
Включение
Администрирование → Общие настройки, флажок «Хранить историю изменений».- По ссылке «Настройки хранения» отметьте типы объектов. Например, «Реализация (акты, накладные, УПД)», «Поступление (акты, накладные, УПД)», справочник «Контрагенты».
- Для каждого типа выберите, когда писать версию: при каждой записи или только при проведении.
- Задайте срок хранения версий, чтобы база не разрасталась.
Просмотр
В форме документа откройте меню «Ещё» и выберите «История изменений». Появится список версий с датой и автором. Выделите две версии и нажмите сравнение — изменённые реквизиты и строки табличной части подсветятся.
💡 Версии хранятся в самой базе. Включайте их выборочно: хранение каждой записи всех документов за пять лет на крупной базе заметно добавит объёма.
В новых релизах платформы есть ещё механизм «История данных». Он настраивается в Конфигураторе для каждого объекта, но в типовых конфигурациях для пользователя обычно используют именно версионирование из Общих настроек.
Кто «висит» в базе и держит блокировки
Жалоба «база тормозит, документ не проводится» часто означает, что один пользователь держит данные, а остальные ждут. Сначала смотрят, кто вообще в базе.
Список активных пользователей
Администрирование → Обслуживание → Активные пользователи показывает каждый сеанс: пользователь, компьютер, приложение, время начала. Тот же список в Конфигураторе — Администрирование → Активные пользователи.
Консоль кластера (клиент-серверный вариант)
В консоли администрирования серверов 1С откройте кластер, затем Информационные базы → <база> → Сеансы. В колонках есть время начала, последней активности и рабочий процесс сеанса. Отдельная ветка «Блокировки» показывает, какой сеанс что заблокировал.
Из командной строки тот же список выводит утилита rac:
rac cluster list
rac session list --cluster=<id кластера>
Список параметров для вашей версии платформы покажет rac help session.
Завершить чужой сеанс можно и из списка активных пользователей, и из консоли. Сотрудник потеряет несохранённые данные, а проведение, которое шло в этот момент, откатится. Перед принудительным завершением предупредите пользователя.
Ожидания на блокировках
Если в журнале регистрации у пользователей появляются ошибки Конфликт блокировок при выполнении транзакции или Превышено максимальное время ожидания предоставления блокировки, кто-то держит транзакцию слишком долго. Виновника ищут технологическим журналом: события TLOCK (установка управляемой блокировки), TTIMEOUT (превышение ожидания) и TDEADLOCK (взаимоблокировка). В записи TTIMEOUT есть номер соединения, которое держало блокировку.
Технологический журнал и анализ «тяжёлых» запросов
Технологический журнал — это текстовые логи сервера или клиента 1С, гораздо подробнее журнала регистрации. Включается файлом logcfg.xml в каталоге conf платформы. Для серверной базы — на сервере 1С, для файловой — на компьютере пользователя.
Пример: записывать запросы к СУБД дольше 5 секунд и хранить логи 24 часа.
<?xml version="1.0" encoding="UTF-8"?>
<config xmlns="http://v8.1c.ru/v8/tech-log">
<log location="D:\techlog" history="24">
<event>
<eq property="name" value="DBMSSQL"/>
<ge property="duration" value="5000000"/>
</event>
<event>
<eq property="name" value="DBPOSTGRS"/>
<ge property="duration" value="5000000"/>
</event>
<property name="all"/>
</log>
</config>
Что здесь важно:
- ⏲
durationв 1С 8.3 указывается в микросекундах: 5 000 000 = 5 секунд; - 🗂
history— сколько часов хранить файлы; - 🧾 событие
DBMSSQL— запросы к MS SQL Server,DBPOSTGRS— к PostgreSQL; - 👤 в каждой записи есть пользователь (
Usr) и контекст — строка кода, из которой пришёл запрос.
Без отборов технологический журнал за час набирает гигабайты и сам нагружает сервер. Задавайте фильтр по длительности, держите каталог логов на отдельном диске и выключайте журнал после разбора, удалив или переименовав logcfg.xml.
Средства самой СУБД
Если журнал 1С выключен, текущие запросы видно на стороне СУБД:
- 🐘 PostgreSQL — системное представление
pg_stat_activity: активные запросы и время их выполнения; - 🗄 MS SQL Server — монитор активности в SQL Server Management Studio или расширенные события (Extended Events).
-- PostgreSQL: запросы, которые выполняются дольше 30 секунд
SELECT pid, now() - query_start AS dlitelnost, state, left(query, 200) AS zapros
FROM pg_stat_activity
WHERE state <> 'idle' AND now() - query_start > interval '30 seconds'
ORDER BY dlitelnost DESC;
Пользователя 1С СУБД не знает: все сеансы идут под одной учётной записью сервера. Связать запрос с человеком помогает технологический журнал или время запроса, сверенное со списком сеансов в консоли кластера.
Уведомления о подозрительной активности
Готовых оповещений «сотрудник удалил 200 документов» в типовых конфигурациях нет. Их собирают сами: регламентное задание в расширении конфигурации раз в час читает журнал регистрации и отправляет письмо, если найдено что-то подозрительное.
Что обычно отслеживают:
- 🔐 серию неудачных входов с одного компьютера — подбор пароля;
- 🗑 массовое удаление объектов;
- 🌙 вход в нерабочее время;
- 🛠 запуск Конфигуратора не администратором.
Пример функции для регламентного задания: считает неудачные входы за последний час и возвращает компьютеры, где их пять и больше.
Функция ПодозрительныеВходы() Экспорт
Таблица = Новый ТаблицаЗначений;
Отбор = Новый Структура;
Отбор.Вставить("ДатаНачала", ТекущаяДатаСеанса() - 3600);
Отбор.Вставить("Событие", "_$Session$_.AuthenticationError");
ВыгрузитьЖурналРегистрации(Таблица, Отбор);
Таблица.Колонки.Добавить("Попыток", Новый ОписаниеТипов("Число"));
Таблица.ЗаполнитьЗначения(1, "Попыток");
Таблица.Свернуть("Компьютер", "Попыток");
Результат = Новый Массив;
Для Каждого Строка Из Таблица Цикл
Если Строка.Попыток >= 5 Тогда
Результат.Добавить(СтрШаблон("%1: %2 неудачных входов",
Строка.Компьютер, Формат(Строка.Попыток, "ЧГ=0")));
КонецЕсли;
КонецЦикла;
Возврат Результат;
КонецФункции
Если массив не пустой, отправьте его текст письмом через учётную запись почты, настроенную в программе. Для массового удаления используется событие _$Data$_.Delete, для входов — _$Session$_.Start.
💡 Регламентное задание в клиент-серверной базе выполняется на сервере 1С. В файловой базе оно запускается только при открытом сеансе, поэтому для круглосуточного контроля файловый вариант не подходит.
Внешние средства аудита и правовые рамки
Когда баз много или нужна история за годы, встроенных средств мало.
| Средство | Что даёт | Кому подходит |
|---|---|---|
| Центр управления производительностью (из 1С:КИП) | Графики нагрузки, долгие операции, ожидания на блокировках | Крупные базы на сервере |
| Выгрузка журнала регистрации в СУБД или систему сбора логов | Хранение за годы, поиск по всем базам сразу | Несколько баз, служба безопасности |
| Аудит на уровне ОС и RDP | Кто подключался к серверу терминалов | Работа через удалённый рабочий стол |
Журнал регистрации умеет выгружать записи в XML через Конфигуратор и программно через ту же ВыгрузитьЖурналРегистрации. Это основа для любой внешней системы сбора: выгружайте раз в сутки и складывайте в хранилище, пока записи не удалило сокращение журнала.
Что сказать сотрудникам
Записи журнала содержат сведения о работнике: время входа, компьютер, действия. Контроль работы в учётной программе — нормальная практика, но порядок лучше закрепить письменно. Пропишите его в локальном акте о работе с информационными системами и ознакомьте сотрудников под подпись. При обработке данных работника действуют требования статьи 86 ТК РФ и закона о персональных данных.
Частые вопросы
Можно ли узнать, что пользователь только открывал документ, но не менял?
Почему в журнале у всех пользователь пустой?
Администрирование → Настройки пользователей и прав, иначе разобрать, кто что делал, невозможно.Сколько места занимает журнал регистрации?
Видно ли действия пользователя в 1С Фреш или другом облаке?
Пишет ли журнал действия в Конфигураторе?
Источники
- Трудовой кодекс РФ, статья 86
- Федеральный закон от 27.07.2006 № 152-ФЗ «О персональных данных»