Кто и что сделал в базе: читаем журнал регистрации 1С по конкретному пользователю

· 10 мин

Содержание

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

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

Какие логи действий пользователей есть в 1С

Слово «логи» в 1С обозначает несколько разных механизмов. Под задачу «что делал пользователь» подходит в первую очередь журнал регистрации, но полезно знать и остальные.

МеханизмЧто фиксируетКому нужен
Журнал регистрацииВходы и выходы, запись, проведение, удаление объектов, ошибки, изменение пользователей и конфигурацииАдминистратор, главбух, служба безопасности
История изменений (версионирование объектов)Что именно поменялось в документе или справочнике: старое и новое значение реквизитовГлавбух, аудитор
Активные пользователиКто работает в базе прямо сейчасАдминистратор
Технологический журналЗапросы, блокировки, исключения платформы на уровне процессовПрограммист, специалист по производительности

Журнал регистрации отвечает на вопросы «кто», «когда», «с какого компьютера» и «с каким объектом». Но он не показывает, какое поле изменилось. Если нужно понять, что было в документе до правки, нужна история изменений. Её включают заранее: задним числом версии не появятся.

Основные события, которые пишутся в журнал:

  • 🔑 Сеанс. Начало, Сеанс. Завершение, Сеанс. Аутентификация, Сеанс. Ошибка аутентификации;
  • 📝 Данные. Добавление, Данные. Изменение, Данные. Удаление;
  • 📄 Данные. Проведение, Данные. Отмена проведения;
  • 👤 Пользователи. Изменение — смена ролей, паролей, создание учётных записей;
  • ⚙️ события изменения конфигурации и обновления базы;
  • ❗ ошибки выполнения и записи прикладных подсистем, например обмена данными и регламентных заданий.

Пометка на удаление — это Данные. Изменение, а не удаление. Событие Данные. Удаление появится только тогда, когда объект физически удалят обработкой удаления помеченных объектов. Ищете «кто удалил документ» — проверьте оба события.

Как включить журнал регистрации и выбрать уровень

Если журнал пустой или в нём только ошибки, первым делом проверьте уровень регистрации. Его задают в Конфигураторе.

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

Уровни регистрации:

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

Для задачи «посмотреть, что делал пользователь» нужен уровень «Регистрировать все события». На уровне «только ошибки» вы увидите, что документ не провёлся, но не увидите, кто его записал.

В той же форме есть кнопка сокращения журнала. Она удаляет события до указанной даты и умеет предварительно сохранить их в файл. Перед сокращением всегда сохраняйте удаляемую часть в файл — восстановить вырезанные события обратно в журнал из Конфигуратора нельзя, а через полгода они могут понадобиться при проверке.

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

Где хранятся файлы логов 1С на диске

Журнал регистрации — это не таблица в базе, а отдельные файлы в каталоге 1Cv8Log. Расположение зависит от варианта работы.

Файловая база. Каталог 1Cv8Log лежит в папке самой базы, рядом с файлом 1Cv8.1CD. Путь к папке базы видно в окне запуска 1С: выделите базу в списке, путь написан внизу.

Клиент-серверная база . Журнал хранится на рабочем сервере 1С, в каталоге кластера:

<каталог службы>\srvinfo\reg_1541\<GUID базы>\1Cv8Log

Каталог службы по умолчанию находится в C:\Program Files\1cv8\srvinfo, но при установке его часто переносят. Точный путь виден в параметрах запуска службы «Агент сервера 1С:Предприятия 8» — ключ -d. Номер 1541 в имени папки — порт менеджера кластера. GUID базы можно узнать в консоли администрирования серверов 1С: в свойствах информационной базы.

Форматы файлов бывают двух видов:

ФорматФайлыОсобенности
Последовательный (старый)1Cv8.lgf и набор *.lgpТекстовые файлы, делятся по периодам, их легко архивировать и переносить
SQLite (новый)один файл 1Cv8.lgdБыстрее отбор, но файл растёт одним куском и может занимать гигабайты

Хотите разобрать журнал, не нагружая рабочую базу? Сделайте копию файловой базы или создайте пустую файловую базу той же конфигурации и положите в её папку скопированный каталог 1Cv8Log. Журнал откроется в копии, а пользователи на рабочем сервере ничего не заметят.

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

Журнал можно открыть тремя способами. Результат одинаковый, разница в удобстве отборов.

СпособПутьКогда удобен
Из программы (БСП)Администрирование → Обслуживание → Журнал регистрацииБП 3.0, ЗУП 3.1, УТ 11, КА, ERP: удобная форма с быстрыми отборами
Платформенная формаВсе функции → Стандартные → Журнал регистрацииЛюбая конфигурация, в том числе нетиповые и старые
КонфигураторАдминистрирование → Журнал регистрацииКогда в пользовательском режиме нет прав или база не стартует

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

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

  1. Откройте журнал регистрации под пользователем с полными правами.
  2. Нажмите «Установить отбор» (в платформенной форме — «Отбор»).
  3. Задайте интервал: начало и конец периода. Узкий интервал открывается в разы быстрее.
  4. В поле «Пользователь» отметьте нужного сотрудника. Можно выбрать нескольких.
  5. При необходимости ограничьте события: например, только Данные. Удаление и Данные. Изменение.
  6. Примените отбор. В списке останутся строки с датой, пользователем, компьютером, приложением, событием и объектом.
  7. Двойной щелчок по строке открывает карточку события: там видно представление данных, метаданные, комментарий, номер сеанса и статус транзакции.

Колонка «Приложение» подсказывает, откуда пришло действие: тонкий клиент, веб-клиент, Конфигуратор, COM-соединение или фоновое задание. Если документы меняются «сами» ночью, это почти всегда регламентное задание или обмен, а не человек.

Поиск и анализ конкретных событий

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

Кто изменил или удалил документ

  1. В отборе журнала откройте поле «Данные» и выберите нужный документ, например реализацию № 145.
  2. Период поставьте с даты создания документа по сегодняшний день.
  3. Пользователя не указывайте: вам нужны все, кто работал с этим объектом.
  4. Список покажет цепочку: кто создал, кто проводил, кто снимал проведение, кто пометил на удаление.

Если документ уже удалён физически, выбрать его в поле «Данные» не получится. Тогда отберите по метаданным: укажите вид документа (например, «Реализация (акт, накладная, УПД)») и событие Данные. Удаление. Номер и дата удалённого документа видны в колонке представления данных.

Кто заходил в базу и когда

Отбор по событиям Сеанс. Начало и Сеанс. Завершение даёт табель присутствия в базе: когда сотрудник вошёл, с какого компьютера и сколько был в программе. События Сеанс. Ошибка аутентификации показывают попытки входа с неверным паролем. Серия таких событий за короткое время — повод сменить пароль и проверить учётную запись.

Отчёт «Анализ журнала регистрации»

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

Что вы хотите выяснить?

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

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

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

Пример: выгрузить все удаления за вчерашний день в таблицу значений и вывести количество по пользователям.

Таблица = Новый ТаблицаЗначений;

Отбор = Новый Структура;
Отбор.Вставить("ДатаНачала", НачалоДня(ТекущаяДата()) - 86400);
Отбор.Вставить("ДатаОкончания", НачалоДня(ТекущаяДата()) - 1);
Отбор.Вставить("Событие", "_$Data$_.Delete");

ВыгрузитьЖурналРегистрации(Таблица, Отбор);

Итоги = Таблица.Скопировать(, "ИмяПользователя");
Итоги.Колонки.Добавить("Количество", Новый ОписаниеТипов("Число"));
Итоги.ЗаполнитьЗначения(1, "Количество");
Итоги.Свернуть("ИмяПользователя", "Количество");

Для Каждого Строка Из Итоги Цикл
    Сообщить(Строка.ИмяПользователя + ": " + Формат(Строка.Количество, "ЧГ=0"));
КонецЦикла;

Идентификаторы событий в отборе указываются во внутреннем виде: _$Data$_.Delete для удаления, _$Data$_.Update для изменения, _$Session$_.Start для входа. Код выполняется на сервере и требует административных прав.

Такой код удобно поставить в регламентное задание в расширении конфигурации и отправлять итог на почту ответственному. Расширение не снимает типовую конфигурацию с поддержки, поэтому обновления ставятся как обычно.

Для серверных баз есть и внешний путь: копировать каталог 1Cv8Log по расписанию на другой диск. Это и резервная копия журнала, и возможность анализировать события на отдельной машине.

Почему журнал пустой или открывается часами

СимптомВероятная причинаЧто сделать
В журнале нет нужных событийУровень «Не регистрировать» или «Только ошибки»Поднять уровень; прошлые события уже не восстановить
Журнал пуст до определённой датыЖурнал сокращали или удаляли файлы 1Cv8LogИскать архив журнала или резервную копию сервера
В колонке пользователя пустоВ базе не заведено ни одного пользователя, все работают без авторизацииЗавести пользователей, иначе журнал не отвечает на вопрос «кто»
Журнал открывается десятки минутФайл 1Cv8.lgd разросся до гигабайтов, отбор без интервалаСтавить узкий период до открытия; сократить журнал с сохранением в файл
Время событий не совпадает с реальнымНеправильное время или часовой пояс на сервере 1СПроверить системное время рабочего сервера
Под одним именем работают несколько человекОбщая учётная запись «Бухгалтер»Завести каждому свою учётную запись

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

Не удаляйте каталог 1Cv8Log вручную, чтобы освободить место, при работающих сеансах. Платформа держит файлы открытыми. Чистить журнал нужно штатной кнопкой сокращения в Конфигураторе, а если файлы переносите вручную — после остановки службы сервера 1С в нерабочее время, предупредив пользователей: все сеансы оборвутся.

Доступ к логам и защита данных

Журнал регистрации содержит много чувствительного: имена сотрудников, компьютеры, время работы, представления документов с фамилиями и суммами. Поэтому доступ к нему стоит ограничивать.

  • 🔒 Просмотр журнала в типовых конфигурациях доступен ролям с административными правами. Не выдавайте рядовым пользователям полные права «на всякий случай».
  • 🖥️ На сервере каталог srvinfo должен быть доступен только учётной записи службы 1С и администраторам. Скопировав 1Cv8Log, можно прочитать журнал в любой другой базе.
  • 📦 Архивы журнала храните там же, где резервные копии базы, с теми же правами доступа.
  • 📋 Сведения о работе сотрудников относятся к персональным данным. Порядок их обработки и сроки хранения определяет закон № 152-ФЗ и локальные акты организации. Сотрудников стоит ознакомить с тем, что действия в учётной системе протоколируются.

Если журнал используется в служебном расследовании, сначала скопируйте каталог 1Cv8Log целиком и работайте с копией. Так никто не сможет сказать, что записи правили после инцидента.

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

Можно ли узнать, какие отчёты открывал пользователь?
Только частично. Формирование отчётов по умолчанию в журнал не пишется. Если нужно, программист добавляет запись через ЗаписьЖурналаРегистрации в расширении.
Видно ли в журнале, какие суммы поменяли в документе?
Нет. Журнал фиксирует сам факт изменения и пользователя. Старые и новые значения реквизитов показывает история изменений объектов, если её включили заранее.
Как долго хранятся логи пользователей?
Пока их не сократят. Сама платформа старые события не удаляет, поэтому журнал растёт бесконечно, пока администратор не обрежет его по дате.
Можно ли посмотреть журнал без запуска 1С на сервере?
Да. Скопируйте каталог 1Cv8Log в папку любой файловой базы той же конфигурации и откройте журнал там.
Пишутся ли в журнал действия через веб-клиент и мобильный клиент?
Да. В колонке «Приложение» будет указан тип клиента, а в колонке «Компьютер» — имя сервера публикации или устройство.

Источники

  • Федеральный закон от 27.07.2006 № 152-ФЗ «О персональных данных»