К статье
Практический материал

Администрирование · 12 мин

Как посмотреть технологический журнал 1С 8.3

Как включить и посмотреть технологический журнал 1С 8.3: настройка logcfg.xml, просмотр событий, анализ ошибок, блокировок и долгих запросов.

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

По умолчанию технологический журнал практически пуст: платформа пишет только аварийные события. Чтобы увидеть полезную информацию — долгие запросы, взаимоблокировки, ошибки СУБД — журнал нужно сначала настроить через файл logcfg.xml, а затем открыть полученные файлы и разобрать их содержимое.

Ниже описано, где лежат файлы журнала, как включить нужные события, какими инструментами их смотреть и как интерпретировать типовые записи. Материал рассчитан на администраторов и разработчиков, работающих с файловыми и клиент-серверными базами.

Где находится технологический журнал 1С 8.3

Расположение файлов зависит от того, какая часть платформы пишет события. Для сервера 1С:Предприятия на Windows журнал по умолчанию складывается в каталог вида C:\Program Files\1cv8\srvinfo\reg_1541\ либо в каталог, указанный в logcfg.xml. Для клиентского приложения — в профиль пользователя, например C:\Users\Имя\AppData\Local\1C\1cv8\logs\.

Точный путь всегда определяется параметром <log location="..."> в файле logcfg.xml. Если этот параметр задан, журнал пишется строго в указанную папку — как на сервере, так и на клиенте. Поэтому первый шаг при поиске журнала — найти и открыть logcfg.xml.

Структура каталога журнала иерархическая: внутри создаются подкаталоги по имени процесса (rphost, ragent, 1cv8, 1cv8c), а в них — файлы с именами вида 25010112.log, где имя кодирует дату и час. Каждый файл обычно покрывает один час работы, после чего создаётся новый.

Как включить технологический журнал через logcfg.xml

Файл logcfg.xml должен находиться в каталоге conf платформы: на сервере — рядом с исполняемыми файлами кластера (например, C:\Program Files\1cv8\<версия>\bin\conf\), для клиентского приложения — в каталоге conf установленной платформы. Если файла нет, создайте его вручную текстовым редактором.

Минимальная конфигурация, которая записывает все события в указанный каталог, выглядит так:

xml
<config xmlns="http://v8.1c.ru/v8/tech-log">
  <log location="C:\1clogs" history="24">
    <event>
      <ne property="name" value=""/>
    </event>
    <property name="all"/>
  </log>
</config>

Параметр history задаёт глубину хранения в часах: файлы старше этого срока платформа удаляет автоматически. Условие <ne property="name" value=""/> означает «все события». Для постоянной работы такой полный сбор избыточен — он быстро заполняет диск, поэтому на практике события фильтруют.

После создания или изменения logcfg.xml нужно перезапустить соответствующий процесс: службу «Агент сервера 1С:Предприятия» — для серверного журнала, клиентское приложение — для клиентского. Без перезапуска новая конфигурация не подхватится.

Настройка сбора конкретных событий

Чаще всего журнал включают не «вообще», а под конкретную задачу: найти причину ошибки, поймать взаимоблокировку или собрать долгие запросы. Для этого в logcfg.xml добавляют фильтры по именам событий.

Сбор ошибок и исключений

Для диагностики ошибок достаточно событий EXCP и EXCPCNTX — исключения и их контекст. Такой журнал пишется почти без накладных расходов и может работать постоянно.

Сбор запросов к СУБД и блокировок

Для анализа производительности включают события DBMSSQL, DBPOSTGRS или DBORACLE (в зависимости от СУБД) с фильтром по длительности, а также TLOCK, TDEADLOCK и TTIMEOUT для блокировок и взаимоблокировок. Условие по длительности задаётся в микросекундах, что позволяет отсекать быстрые запросы и видеть только проблемные.

Порядок действий
  1. 1
    Определите, какие события нужны: ошибки, запросы, блокировки или всё сразу
  2. 2
    Создайте или отредактируйте logcfg.xml в каталоге conf платформы с нужными фильтрами и параметром history
  3. 3
    Перезапустите службу агента сервера 1С или клиентское приложение
  4. 4
    Воспроизведите проблемную ситуацию в системе
  5. 5
    Откройте каталог журнала и найдите файл нужного часа
  6. 6
    Проанализируйте записи и после диагностики отключите или сузьте сбор

Чем открыть и посмотреть файлы журнала

Файлы технологического журнала — обычный текст, поэтому минимальный инструмент просмотра — любой редактор, корректно открывающий большие файлы: Notepad++, VS Code, Far Manager. Стандартный Блокнот Windows на файлах в сотни мегабайт работает плохо.

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

При ручном чтении полезно понимать формат записи. Каждое событие занимает одну строку вида: 12:34.567000-123456,DBMSSQL,2,process=rphost,p:processName=...,.... Сначала идёт время с точностью до микросекунд и длительность события, затем имя события, уровень и набор именованных свойств — имя процесса, пользователь, текст запроса, контекст.

Сравнение вариантов

Текстовый редактор (Notepad++, VS Code)

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

Обработки разбора ТЖ

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

Системы мониторинга (Zabbix, специализированные решения)

Постоянный сбор и оповещения по событиям ТЖ. Ограничение: требуют развёртывания и сопровождения инфраструктуры.

Как читать типовые события журнала

Ключ к анализу — знать, что означают основные имена событий. Событие с префиксом DB (DBMSSQL, DBPOSTGRS) — это запрос к базе данных; его длительность указана вторым полем и показывает, сколько выполнялся запрос. События TLOCK, TDEADLOCK, TTIMEOUT отражают установку управляемых блокировок, взаимоблокировки и превышение времени ожидания.

Событие EXCP фиксирует исключение, а EXCPCNTX — контекст, в котором оно возникло: какой код выполнялся и с какими данными. События CALL и SCALL показывают вызовы между процессами и помогают понять, на какой стороне — клиенте или сервере — теряется время.

При поиске причины конкретной жалобы пользователя эффективен такой приём: зафиксируйте время возникновения проблемы, найдите файл соответствующего часа и отфильтруйте записи по имени пользователя (свойство Usr) или по времени. Затем проследите цепочку событий вокруг найденной ошибки — обычно в нескольких строках до EXCP виден запрос или вызов, который её спровоцировал.

Контрольные точки

Как проверить результат

Появились ли файлы журнала
Норма

В каталоге из logcfg.xml созданы подкаталоги процессов и файлы .log с текущей датой

Тревожный признак

Каталог пуст — logcfg.xml не в том месте, служба не перезапущена или нет прав на запись

Пишутся ли нужные события
Норма

В файле есть строки с именами событий из фильтра (например, DBMSSQL, EXCP)

Тревожный признак

Файл содержит только служебные записи — фильтр составлен неверно

Адекватный объём
Норма

Файлы растут умеренно, старые удаляются по параметру history

Тревожный признак

Десятки гигабайт за час — слишком широкий сбор, нужно сузить фильтр

Типовые проблемы и частые ошибки

Самая распространённая ситуация — журнал «не пишется». Причины почти всегда одни и те же: logcfg.xml положен не в тот каталог conf (установлено несколько версий платформы, и файл размещён у другой), служба не перезапущена, у учётной записи службы агента сервера нет прав на запись в целевой каталог, либо в XML допущена синтаксическая ошибка, из-за которой файл игнорируется целиком.

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

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

Типичные ошибки
01
Создание logcfg.xml не в том каталоге conf — журнал не появляется, потому что загружена другая версия платформы
02
Отсутствие параметра history — старые файлы копятся и переполняют диск
03
Сбор всех событий без фильтров на рабочем сервере — лишняя нагрузка и гигабайты мусорных записей
04
Поиск ошибки во всём файле вместо фильтрации по времени и пользователю — анализ затягивается в разы
05
Забытый перезапуск службы агента сервера — новая конфигурация не применяется

Ограничения и безопасная практика

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

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

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

Маршрут решения

Как выбрать действие

Нужно разобрать разовую ошибку у пользователяВключите сбор EXCP и EXCPCNTX, воспроизведите ошибку и посмотрите контекст исключения
База «тормозит», но причина неяснаВключите события DB с фильтром по длительности и проанализируйте самые долгие запросы
Возникают взаимоблокировкиВключите TDEADLOCK и TLOCK, соберите несколько случаев и сопоставьте участвующие объекты
Нужен постоянный контроль без ручного разбораНастройте минимальный сбор ошибок и подключите систему мониторинга к каталогу журнала
Итог

Что важно запомнить

Технологический журнал 1С 8.3 включается файлом logcfg.xml в каталоге conf платформы и начинает писаться после перезапуска службы или клиента. Смотрят его текстовым редактором или специализированными обработками, фильтруя события по времени, пользователю и типу. Собирайте только нужные события, ограничивайте глубину хранения и отключайте широкий сбор после диагностики.

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

Где находится logcfg.xml, если платформа установлена в нестандартный каталог?

Файл ищется в подкаталоге conf того каталога bin, из которого запущен процесс. Узнать фактический путь установки можно в диспетчере задач по пути исполняемого файла ragent.exe или 1cv8.exe либо в свойствах службы агента сервера 1С.

Можно ли посмотреть технологический журнал без доступа к серверу?

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

Почему в журнале нет записей за нужное время, хотя сбор включён?

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

Влияет ли включённый технологический журнал на производительность?

Сбор отдельных событий (ошибки, долгие запросы с фильтром по длительности) практически незаметен. Полный сбор всех событий, особенно CALL и запросов без порога длительности, создаёт ощутимую нагрузку на дисковую подсистему и может замедлить работу — такой режим применяйте только на время диагностики.

Чем технологический журнал отличается от журнала регистрации?

Журнал регистрации — прикладной механизм: он фиксирует действия пользователей и изменения данных в терминах конфигурации. Технологический журнал — механизм платформы: он пишет низкоуровневые события (запросы, исключения, блокировки) независимо от конфигурации и нужен для диагностики ошибок и производительности.

Как быстро найти в большом файле журнала нужную ошибку?

Откройте файл часа, когда произошла проблема, и ищите по ключевым словам: EXCP для исключений, TDEADLOCK для взаимоблокировок, имени пользователя или фрагменту текста ошибки. Если файл очень большой, предварительно отфильтруйте его поисковым инструментом редактора или командой findstr, сохранив совпадения в отдельный файл.