Кто, когда и что делал в базе 1С: журналы, отчёты и мониторинг

· 10 мин

Содержание

Посмотреть активность пользователя в 1С 8.3 быстрее всего через журнал регистрации: в типовых конфигурациях (Бухгалтерия 3.0, ЗУП 3.1, УТ 11) он открывается из раздела Администрирование → Обслуживание. Там видно, кто входил в базу, с какого компьютера, когда завершил сеанс и какие документы создал, изменил или удалил. Кто работает прямо сейчас, показывает список «Активные пользователи» в том же разделе.

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

Способы посмотреть активность пользователей: что для какой задачи

ЗадачаИнструментГде открытьНужна настройка заранее
Кто сейчас в базеАктивные пользователиАдминистрирование → ОбслуживаниеНет
Кто входил и что менялЖурнал регистрацииАдминистрирование → ОбслуживаниеУровень записи (по умолчанию пишется)
Сколько часов работал сотрудникОтчёты администратораАдминистрирование → ОбслуживаниеНет, строятся по журналу
Какое поле изменили в документеВерсионирование объектовАдминистрирование → Общие настройкиДа, до изменений
Кто держит блокировкуКонсоль кластера, техжурналСервер 1СТолько клиент-серверный вариант
Тяжёлые запросыТехнологический журнал, средства СУБДСервер 1С и СУБДДа, файл logcfg.xml

Версионирование и технологический журнал работают только с момента включения. Задним числом они ничего не покажут, поэтому включайте их до того, как понадобится разбор.

Журнал регистрации: входы, выходы и изменения данных

Журнал регистрации платформа ведёт сама. Каждая запись содержит дату, пользователя, компьютер, приложение (тонкий клиент, веб-клиент, Конфигуратор), событие и объект данных.

Как открыть журнал

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

Открыть журнал может пользователь с правами администратора. Обычному бухгалтеру команда недоступна.

Как отобрать действия конкретного сотрудника

Нажмите «Установить отбор» и заполните:

  • 👤 Пользователь — один или несколько;
  • 📅 Период — например, вчерашний день целиком;
  • 🧩 События — отметьте нужные группы;
  • 📄 Данные — конкретный документ или элемент справочника;
  • 💻 Компьютер — если нужно понять, с какой машины работали.

Самые полезные события для разбора:

Событие в журналеЧто значит
Сеанс. Начало / Сеанс. ЗавершениеВход и выход из программы
Сеанс. Аутентификация (ошибка)Неверный пароль или попытка зайти под чужим именем
Данные. ДобавлениеСоздан новый объект
Данные. ИзменениеОбъект записан с изменениями
Данные. Проведение / Отмена проведенияДокумент проведён или распроведён
Данные. УдалениеОбъект удалён окончательно

💡 Если документ «пропал», ищите событие «Данные. Удаление» с отбором по периоду. Пометка на удаление в журнале выглядит как обычное изменение объекта, а сама запись об удалении появляется только после удаления помеченных объектов.

Уровень записи и срок хранения

В Конфигураторе откройте Администрирование → Настройка журнала регистрации. Уровни идут по нарастанию подробности: ошибки, предупреждения, информация, примечания. Для разбора действий пользователей нужен уровень не ниже «Информация» — именно с ним пишутся события изменения данных.

В той же форме журнал можно сократить: удалить записи старше выбранной даты и при желании выгрузить их в файл. Делайте это вне рабочего времени: на большой базе сокращение идёт долго.

Где лежат файлы журнала:

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

Новый формат хранит журнал в одном файле 1Cv8.lgd, старый — в наборе файлов .lgp с оглавлением 1Cv8.lgf. Формат переключается в той же форме настройки.

Отчёты по активности и времени работы пользователей

Пролистывать журнал, чтобы понять, сколько человек проработал, неудобно. В конфигурациях на Библиотеке стандартных подсистем (БП 3.0, ЗУП 3.1, УТ 11, КА 2) есть отчёт «Анализ журнала регистрации». Он открывается из Администрирование → Обслуживание → Отчеты администратора.

У отчёта несколько вариантов:

  • 📊 Активность пользователей — сводка по всем: сколько сеансов и сколько изменённых объектов за период;
  • 🔍 Активность пользователя — один сотрудник, с расшифровкой по объектам;
  • ⏱ Продолжительность работы пользователей — время в программе по дням, удобно для сверки с табелем.

Как построить отчёт за неделю:

  1. Откройте нужный вариант отчёта.
  2. Задайте период, например с понедельника по пятницу.
  3. Для «Активности пользователя» выберите сотрудника.
  4. Нажмите «Сформировать».

Время работы в отчёте — это время открытого сеанса, а не время за клавиатурой. Сотрудник, который оставил программу открытой на ночь, получит 15 часов «работы». Сопоставляйте с количеством изменённых объектов: 15 часов и три записи — явный простой.

Отчёт строится по журналу регистрации. Сократили журнал — пропали и данные за этот период.

История изменений документа: кто и что поменял

Журнал показывает, что документ изменил Иванов в 14:32, но не говорит, что именно он исправил. Для этого служит версионирование объектов.

Включение

  1. Администрирование → Общие настройки, флажок «Хранить историю изменений».
  2. По ссылке «Настройки хранения» отметьте типы объектов. Например, «Реализация (акты, накладные, УПД)», «Поступление (акты, накладные, УПД)», справочник «Контрагенты».
  3. Для каждого типа выберите, когда писать версию: при каждой записи или только при проведении.
  4. Задайте срок хранения версий, чтобы база не разрасталась.

Просмотр

В форме документа откройте меню «Ещё» и выберите «История изменений». Появится список версий с датой и автором. Выделите две версии и нажмите сравнение — изменённые реквизиты и строки табличной части подсветятся.

💡 Версии хранятся в самой базе. Включайте их выборочно: хранение каждой записи всех документов за пять лет на крупной базе заметно добавит объёма.

В новых релизах платформы есть ещё механизм «История данных». Он настраивается в Конфигураторе для каждого объекта, но в типовых конфигурациях для пользователя обычно используют именно версионирование из Общих настроек.

Кто «висит» в базе и держит блокировки

Жалоба «база тормозит, документ не проводится» часто означает, что один пользователь держит данные, а остальные ждут. Сначала смотрят, кто вообще в базе.

Список активных пользователей

Администрирование → Обслуживание → Активные пользователи показывает каждый сеанс: пользователь, компьютер, приложение, время начала. Тот же список в Конфигураторе — Администрирование → Активные пользователи.

Консоль кластера (клиент-серверный вариант)

В консоли администрирования серверов 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-ФЗ «О персональных данных»