Кто, когда и что делал в базе: инструменты наблюдения в 1С 8.3

· 10 мин

Содержание

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

Типичная ситуация: утром главбух находит распроведённый акт за прошлый квартал, а признаваться никто не хочет. Или база к обеду начинает тормозить, и администратору нужно понять, как работает 1С в эти минуты и кто её грузит. Для первого случая хватает журнала регистрации и истории изменений. Для второго нужен технологический журнал. Всё ниже относится к платформе 8.3 и типовым конфигурациям на ней.

Что хотите увидетьИнструментКому доступен
Кто сейчас в базеАктивные пользователи, консоль кластераАдминистратор базы
Кто и когда менял документЖурнал регистрацииАдминистратор, аудитор с правом
Что именно поменяли в реквизитахИстория изменений объектаПользователи с правом просмотра
Почему 1С работает медленноТехнологический журналСистемный администратор сервера
Сводка по сотрудникам за месяцВыгрузка журнала, внешняя обработкаАдминистратор

С чего начать: кто сейчас работает в базе 1С

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

Из пользовательского режима

Откройте Администрирование → Обслуживание → Активные пользователи. В списке будут:

  • 👤 имя пользователя информационной базы;
  • 💻 компьютер, с которого он зашёл;
  • 🖥️ приложение: тонкий клиент, веб-клиент, Конфигуратор, фоновое задание, COM-соединение;
  • 🕐 время начала работы и номер сеанса.

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

Если раздела «Администрирование» в интерфейсе нет, откройте меню с тремя полосками и выберите Все функции → Стандартные → Активные пользователи. Команда Все функции включается флажком в Сервис и настройки → Параметры.

Из Конфигуратора и консоли кластера

В Конфигураторе тот же список открывается через Администрирование → Активные пользователи.

Для клиент-серверной базы полная картина — в консоли администрирования серверов 1С: Кластер → Информационные базы → <база> → Сеансы. Здесь видно больше, чем в базе: время последней активности, рабочий процесс, захваченную лицензию, объём прочитанных данных. Если консоли нет, тот же список выдаёт утилита rac через сервер администрирования ras (порт по умолчанию 1545):

rac cluster list
rac session list --cluster=<uuid-кластера>
rac session list --cluster=<uuid-кластера> --licenses

Параметры для конкретной ситуации смотрите в rac help session.

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

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

Журнал регистрации — главный инструмент, чтобы посмотреть историю работы в 1С. Платформа пишет в него события сама, без доработок конфигурации.

Пошагово: найти, кто изменил документ

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

Какие события важнее всего

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

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

Где журнал лежит физически

У файловой базы журнал хранится в подкаталоге 1Cv8Log рядом с файлом 1Cv8.1CD. У серверной — на сервере 1С в каталоге кластера: srvinfo\reg_1541\<идентификатор базы>\1Cv8Log. В платформе 8.3 по умолчанию используется формат одного файла 1Cv8.lgd, в старых базах встречается последовательный формат из файлов .lgf и .lgp.

Уровень записи и срок хранения задаются в Конфигураторе: Администрирование → Настройка журнала регистрации. Там же журнал можно сократить, сохранив старые записи в отдельный файл.

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

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

Журнал регистрации говорит, что документ меняли, но не говорит, какое поле стало другим. Для этого в типовых конфигурациях есть версионирование объектов.

Включается оно в Администрирование → Общие настройки, флажок «Хранить историю изменений». Ссылка «Настроить» рядом открывает список типов объектов, для которых сохраняются версии: документы, справочники контрагентов, номенклатуры и так далее.

После включения в форме документа появляется команда Ещё → История изменений. В ней:

  1. Список версий с датой, автором и комментарием.
  2. Отчёт по выбранной версии — как выглядел документ в тот момент.
  3. Сравнение двух версий: изменённые реквизиты и строки табличных частей подсвечиваются.

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

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

Что именно вы хотите посмотреть?

Технологический журнал для разбора медленной работы 1С

Технологический журнал — это уже не про бухгалтерию, а про то, как работает 1С изнутри: запросы к СУБД, ожидания на блокировках, исключения, вызовы сервера. Включает его системный администратор, пользователи его не видят.

Как включить

Журнал управляется файлом logcfg.xml. Платформа ищет его в каталоге conf установки, например C:\Program Files\1cv8\conf\. Файл подхватывается без перезапуска, примерно в течение минуты.

Пример: собрать исключения и ожидания на управляемых блокировках, хранить 24 часа.

<?xml version="1.0" encoding="UTF-8"?>
<config xmlns="http://v8.1c.ru/v8/tech-log">
  <log location="D:\1C_TechLog" history="24">
    <event>
      <eq property="name" value="EXCP"/>
    </event>
    <event>
      <eq property="name" value="TLOCK"/>
    </event>
    <event>
      <eq property="name" value="TTIMEOUT"/>
    </event>
    <event>
      <eq property="name" value="TDEADLOCK"/>
    </event>
    <property name="all"/>
  </log>
</config>

Параметр history задаётся в часах. Каталог в location создайте заранее на диске с запасом места и дайте на него права пользователю, под которым работает служба сервера 1С.

Какие события смотреть

  • 🔒 TLOCK, TTIMEOUT, TDEADLOCK — блокировки, таймауты и взаимоблокировки. Типичная причина «у всех висит проведение».
  • 🗄️ DBMSSQL или DBPOSTGRS — запросы к Microsoft SQL Server или PostgreSQL. Показывают тяжёлые запросы.
  • ❗ EXCP — исключения и аварийные завершения процессов.
  • 📞 CALL, SCALL — вызовы сервера, по ним видно, какой пользователь и какая операция нагружает рабочий процесс.

Журнал с событиями DBMSSQL и CALL без отборов может занять десятки гигабайт за день. Включайте его на время диагностики, ставьте небольшой history и выключайте, когда собрали картину. Переполненный диск остановит сервер 1С и оборвёт сеансы всех пользователей.

Логи — текстовые файлы по часам, в именах ГГММДДЧЧ.log. Первое приближение делают поиском по тексту: имя пользователя в свойстве Usr, контекст операции в Context. Для регулярного анализа логи грузят в системы сбора журналов.

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

Сводка по работе пользователей: отчёты и выгрузка

Иногда нужна не одна правка, а общая картина: сколько документов провёл каждый бухгалтер за месяц, кто работает по выходным, кто заходит под чужим логином.

Через сам журнал регистрации

  1. Поставьте отбор: период — месяц, события — Данные. Проведение или Сеанс. Начало.
  2. Выгрузите список в табличный документ через команды меню Ещё.
  3. Сохраните его в Excel и постройте сводную таблицу: строки — пользователь, значения — количество событий, столбцы — дни.

Так за десять минут видно, что, например, у одного сотрудника 600 проведений в месяц, а у другого 40, или что под учётной записью кассира заходят с трёх разных компьютеров.

Через списки документов

У большинства документов Бухгалтерии 3.0 есть реквизит «Ответственный», он виден внизу формы. В списке документов через Ещё откройте настройку списка, добавьте колонку «Ответственный» и группировку по ней. Учтите: в реквизит попадает тот, кто создал документ, а не тот, кто правил его последним.

Права на просмотр журнала и активных пользователей

Посмотреть журнал регистрации и список сеансов может только пользователь с соответствующими правами. В типовых конфигурациях на БСП они входят в профиль «Администратор».

Настройка доступа — в Администрирование → Настройки пользователей и прав:

  • 🔑 для полного контроля назначьте сотруднику профиль администратора, но это даёт и право менять всё в базе;
  • 🛡️ для аудитора, которому нужно только смотреть, безопаснее создать в расширении конфигурации роль с правами «Журнал регистрации» и «Активные пользователи» и подключить её к отдельному профилю групп доступа;
  • 🚫 рядовым пользователям эти права не нужны: в журнале видны действия всех сотрудников.

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

💡 Наблюдение работает, только если у каждого сотрудника своя учётная запись. Когда пол-отдела входит под одним «Бухгалтером», журнал покажет пользователя, но не человека. Различить их получится разве что по полю «Компьютер».

Как автоматизировать наблюдение за работой 1С

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

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

&НаСервере
Процедура СводПоПользователямНаСервере()

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

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

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

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

КонецПроцедуры

Другие идентификаторы событий для отбора: _$Data$_.New — добавление, _$Data$_.Delete — удаление, _$Session$_.Start — начало сеанса.

Для крупных внедрений есть готовые решения: Корпоративный инструментальный пакет 1С с «Центром управления производительностью» и «Центром контроля качества», а также связки технологического журнала с системами сбора логов. Для небольшой фирмы на 5–10 пользователей это избыточно: хватает журнала регистрации, истории изменений и простой выгрузки раз в неделю.

Типичные ошибки при анализе работы базы

  • ⏰ Путают время. В журнале время сервера 1С. Если сервер стоит в другом часовом поясе, «ночная правка» может оказаться дневной.
  • 🗂️ Смотрят не ту базу. У фирмы часто есть рабочая база и её копия для тестов. Сверьте заголовок окна и строку подключения.
  • 🤖 Принимают фоновое задание за человека. Обмены и регламентные задания пишут события от имени пользователя, указанного в их настройках. Проверьте колонку «Приложение»: там будет «Фоновое задание».
  • ✂️ Сократили журнал и потеряли нужный период. Перед сокращением сохраняйте удаляемые записи в файл, это предлагается в том же окне.
  • 📈 Оставили технологический журнал включённым. Через неделю заканчивается место на диске сервера.
Видит ли пользователь, что за его работой наблюдают?
Нет. Журнал регистрации и технологический журнал пишутся платформой незаметно для пользователя. Но о контроле лучше сообщить сотрудникам заранее, например в локальном регламенте.
Можно ли посмотреть работу в базе, если она сейчас занята?
Да. Журнал регистрации и активных пользователей можно открыть, пока другие работают. Монопольный режим для этого не нужен.
Как посмотреть журнал регистрации базы, которая не запускается?
Для файловой базы скопируйте папку 1Cv8Log в каталог другой базы на той же версии платформы и откройте журнал там. Делайте это на копии, а не в рабочей базе.
Сохраняется ли журнал при выгрузке в .dt?
Нет. Файл выгрузки содержит данные и конфигурацию, но не журнал регистрации. Журнал при переносе копируют отдельно как папку 1Cv8Log.
Показывает ли журнал, какой отчёт сформировал пользователь?
Формирование отчётов в журнал по умолчанию почти не попадает. Видны вход, изменения данных и ошибки. Для контроля чтения данных нужен технологический журнал или доработка.