Бизнес. Отчетность. Документация. Право. Производство
  • Главная
  • Отчетность
  • Как анализировать исключения технологического журнала 1с. Технологический журнал

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

Примеры настройки технологического журнала

Технологический журнал выключен
Если файл logcfg.xml отсутствует в каталоге C:\Program Files\1cv81\bin, то технологический журнал не создается. Если файл logcfg.xml необходим для правильной настойки дампов, то он не должен содержать ни одного элемента log. Следующий пример определяет необходимость построения полного дампа приложения при его аварийном завершении. Дампы помещаются в каталог: C:\Program Files\1cv81\bin\dumps.

< config xmlns="http://v8.1c.ru/v8/tech-log">
< dump location="C:\Program Files\1cv81\bin\dumps" create="l" type="3"/>
< /config>

Полный технологический журнал
Приведенный ниже конфигурационный файл определяет вывод в технологический журнал всех событий вместе со всеми свойствами. Журнал будет сохраняться в течение недели (168 часов). Объем выводимой информации при этом будет очень большим, однако, она может быть полезна при анализе сложных нештатных ситуаций. Данную конфигурацию рекомендуется использовать на этапе тестирования и при расследовании ошибок.
Код

< config xmlns="http://v8.1c.ru/v8/tech-log">
< log location="C:\Program Files\1cv81\bin\logs" history="168"> < event>
< ne property="Name" value="" /> < /event>
< property name="al1"> < /property>
< /log>
< /config>

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

< config xmlns="http://v8.1c.ru/v8/tech-log">
< log location="C:\Program Files\1cv81\bin\logs" history="168"> < event>
< eq propertу ="Name" va1ue="DBV8DBEng" /> < /event>
< event>
< eq propertу ="Name" va1ue="DBMSSQL"/> < /event>
< event>
< eq property="Name" value="DBPOSTGRS"/> < /event> < event>
< eq property="Name" value="DB2"/> < /event> < event>
< eq proper t у ="Name" va1ue="EXCP"/> < /event>
< property name="al1"> < /property>
< /log>
< /config>

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

< config xmlns="http://v8.1c.ru/v8/tech-log">
< log location="C:\Program Files\1cv81\bin\logs" history="168"> < event>
< event> < eq property= Name" value= PR0C"/> < /event>
< event> < eq property= Name" value= SC0M"/> < /event>
< event> < eq property= Name" value= C0NN"/> < /event>
< event> < eq property= Name" value= EXCP"/> < /event>
< event> < eq property= Name" value= ADMIN"/> < /event>
< event> < eq property= Name" value= QERR"/> < /event>
< property name="all"> < /property>
< /log>
< /config>

Ошибки и долгие операции
По сравнению с предыдущим, данный конфигурационный файл добавляет все операции, длительность которых превышает 10 секунд. Это может оказаться полезным для обнаружения действий пользователей, которые выполнялись длительное время, с целью, например, их последующей оптимизации. Длительность событий выражается в сотнях микросекунд.

< config xmlns="http://v8.1c.ru/v8/tech-log">
< log location="C:\Program Files\1cv81\bin\logs" history="168"> < event>
< event> < eq property= Name" value= PR0C"/> < /event>
< event> < eq property= Name" value= SC0M"/> < /event>
< event> < eq property= Name" value= C0NN"/> < /event>
< event> < eq property= Name" value= EXCP"/> < /event>
< event> < eq property= Name" value= ADMIN"/> < /event>
< event> < eq property= Name" value= QERR"/> < /event>
< event> < gt property= Duration" value="100000"/> < /event>
< property name="al1"> < /property>
< /log>
< /config>


Не так давно открыл для себя нечто новое, оказывается есть технологический журнал (ТЖ). Что это за зверь такой и для чего он нужен попытаюсь ответить в этой статье.

Как говорить сама 1С Технологический журнал системы 1С:Предприятие 8 может использоваться для анализа технологических проблем работы системы и анализа аварийных завершений. Он регистрирует информацию от всех приложений системы 1С:Предприятие 8, работающих на данном компьютере. Из этого определения сразу становится очевидность полезности этого инструмента, из него мы можем узнать например:

  • при выполнении какого кода «падают» рабочие процессы сервера
  • какие запросы работают медленно и откуда они вызываются
  • Посмотреть были ли взаимоблокировки или блокировки по таймауту
  • и многое другое.
Что же собой представляет ТЖ? А представляет собой ТЖ совокупность текстовых файлов, хранящихся в указанном каталоге.
Файлы эти можно разделить на 2 группы
  • файлы дампа
  • файлы логов
Логи – это файлы с расширением log, где информация хранится в текстовом виде.
Дампы – это файл с расширением mdmp, который содержит в себе содержимое оперативной памяти процесса на момент «падения» .


Идем дальше. А в каком каталоге хранятся файлы ТЖ?.
По умолчанию ТЖ создается в каталоге:
%USERPROFILE%\Local Settings\Application Data\1C\1Cv82\
Если используется Windows Vista и выше, то будет использоваться каталог: %LOCALAPPDATA%\1C\1Cv82\
Для 8.3 вместо каталога 1Cv82 используется 1Cv8.
Но этот каталог можно изменить. Об этом чуть ниже.
Как включить ТЖ?
По умолчанию технологический журнал включен, и настроен на сохранение минимальных дампов. С помощью специального файла мы можем настроить ТЖ. А именно можем изменить каталоги ТЖ, указать какие события должны регистрироваться в ТЖ и тд.
Я говорю о файле настроек ТЖ logcfg.xml .

Этот файл должен находится в каталоге conf в папке с установленной 1с, например
«D:\Program Files\1Cv8\conf»
Рассмотрим пример файла настроек для полного ТЖ.
config xmlns="http://v8.1c.ru/v8/tech-log"> Этот конфигурационный файл определяет вывод в технологический журнал всех событий вместе со всеми свойствами. Журнал будет сохраняться в течение недели (24 часа). Однако объем выводимой информации при этом будет очень большим.
Целесообразней настроить ТЖ только на интересующие нас события, например мы хотим посмотреть есть были ли в системе ошибки и долгие операции (>10 секунд)

Самые распространенные события ТЖ: EXCP – исключительные ситуации приложений системы «1С:Предприятие», которые штатно не обрабатываются и могут послужить причиной̆ аварийного завершения серверного процесса или подсоединенного к нему клиентского процесса. EXCPCNTX – события, которые начались, но не закончились в момент возникновения нештатной̆ ситуации. DBMSSQL – исполнение операторов SQL СУБД Microsoft SQL Server. Для каждой СУБД используется свое событие (BPOSTGRS, DBORACLE, DB2, DBV8DBENG – файловый вариант) ADMIN – действия администратора кластера в консоли кластеров. PROC – события, относящиеся к процессу целиком и влияющие на дальнейшую работоспособность процесса. Например: старт, завершение, аварийное завершение и т. п. CALL – входящий удалённый вызов (удалённый вызов на стороне приемника вызова). Например, если вы из клиента вызываете функцию на сервере, то в ТЖ на сервере будет записано событие CALL. SCALL – исходящий удалённый вызов (исходящий вызов на стороне источника вызова). Например, если вы из клиента вызываете функцию на сервере, то в ТЖ на клиенте будет записано событие SCALL. SESN – действия, относящиеся к сеансу работы. Например: начало сеанса, окончание сеанса. TDEADLOCK – обнаружена взаимоблокировка в управляемом режиме блокировок. TTIMEOUT – ошибка по таймауту на управляемых блокировках. TLOCK – установка транзакционной блокировки в управляемом режиме блокировок.
С помощью настроек ТЖ можно отфильтровать практически любые интересующие нас события.
Допустим хотим видеть в ТЖ только ошибки и информацию о запросах к таблице AccRg105, которые длились более 3 секунд. Тогда logcfg должен выглядеть следующим образом.
Между двумя работает логическое ИЛИ, т.е. при возникновении любого из событий оно будет записано в ТЖ.
Внутри одного работает логическое И, т.е. данное событие будет записано только в том случае, если будут выполнены все условия внутри одного.
При такой настройке событие EXCP будет записываться всегда, а событие DBMSSQL только в том случае, если в любом месте текста запроса содержится строка «AccRg105» и при этом запрос выполнялся дольше 3 секунд. Фильтр на длительность события, надо ставить в десятитысячных долях секунды независимо от версии платформы. В данном примере мы используем несколько условий: eq, gt и like.
Можно использовать следующие условия:

  • eq – равно;
  • ne – не равно;
  • gt – больше;
  • ge – больше или равно;
  • lt – меньше;
  • le – меньше или равно;
  • like – соответствие маске.
В окончании добавлю еще пару примечаний:
Платформа раз в минуту считывает данные из файла настроек, поэтому не стоит горячится и сразу проверять файлы, только спокойствие все будет через минуточку)
Если Вы не собираетесь посылать в фирму 1с данные дампов, то не зачем их и хранить, в файле настроек не указывайте строку dump location .
Если Вы собираетесь хранить файлы ТЖ в каталоге отличном от каталога по умолчанию, то лучше предварительно создайте его сами.

В тестовой базе я умышленно создал превышение таймаута на блокировке,
На примере этого

Технологический журнал и его настройка

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

В приведенных ниже примерах предполагается, что 1С:Предприятие установлено стандартным способом и его загрузочные модули расположены в каталоге C:\Program Files\1cv82\bin .

Важно иметь в виду, что в каталог технологического журнала при некоторых его настройках могут выводится данные очень большого объема. Поэтому на диске, где будут храниться данные журнала регистрации, должно быть достаточно места. Для работы технологического журнала необходимо, чтобы пользователи, от имени которых запускаются приложения 1С:Предприятия (как клиентские, так и серверные), имели полные права на каталог технологического журнала (D : \ 1cv82\logs ), и право на чтение выше лежащего каталога (D : \ 1cv82 ).

ВНИМАНИЕ! Необходимо иметь в виду, что каталог технологического журнала не предназначен для хранения в нем файлов, которые не относятся к технологическому журналу. Поэтому не следует размещать в нем дампы или использовать каталог, который может содержать файлы, не относящиеся к технологическому журналу «1С:Предприятия». Если в каталоге, который указан в качестве каталога
технологического журнала, имеются посторонние файлы, то указание каталога считается неверным, и технологический журнал не создается.

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

Технологический журнал выключен

Если файл logcfg.xml отсутствует или имя файла не равно «logcfg.xml » (например logcfg _1 .xml )в каталоге C:\Program Files\1cv82\bin\conf , то технологический журнал не создается. Если файл logcfg.xml необходим для правильной настойки дампов, то он не должен содержать ни одного элемента log .

Следующий пример определяет необходимость построения полного дампа приложения при его аварийном завершении. Дампы помещаются в каталог: D:\1cv82\dumps .

Полный технологический журнал

Приведенный ниже конфигурационный файл определяет вывод в технологический журнал всех событий вместе со всеми свойствами. Журнал будет сохраняться в течении 2 суток (48 часов). Объем выводимой информации при этом будет очень большим, однако, она может быть полезна при анализе сложных нештатных ситуаций. Данную конфигурацию рекомендуется использовать на этапе тестирования и при расследовании ошибок.

Обращения к СУБД

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

Действия администратора и ошибки

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

Ошибки и долгие операции

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

).lt;/eventlogcfg

(или часть, используя фильтр), например:
— исполняемый код 1С:Предприятие 8;
— код Transact-SQL для СУБД;
— интерактивные действия пользователей,

— сообщения об ошибках,

Примечание. Если все равно не пишется ТЖ, то дать права всем на эту папку (временно, чтобы убедиться что дела в правах).

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

4) Место хранения dumps и logs не хранить вместе, потому что через указанный интервал (по умолчанию 1 час) содержимое польностью перетирается и вы потеряете дампы

Настройка

ТЖ лучше настраивать (с помощью фильтров — тэгов logcfg.xml) только на исследуемые события, остальное не собирать, иначе словите «отсутствие места на диске» и тормоза в быстродействии сервера.

1) Легче выполнять настройку фильтров с помощью обработки с ИТС НастройкаТехнологическогоЖурнала.epf, но при этом помнить, что новые фичи последних релизов в обратке могут отстутствавать (каждая новая версия добавляет новые возможности, в обработки они не отражены). В этом случаи корректировать файл logcfg.xml руками.

2) Чтобы логи перестали собираться достаточно переименовать файл, перезапускать сервер не надо, настройки пересчитываются каждую минуту «на лету»

3) настроить logcfg.xml для фильтрации событий по определённой ИБ нужно использовать «p:processName=»

4) http://users.v8.1c.ru/Adm1936.aspx — примеры настроек

Подробности

Понятно, что собрать логи мало, их еще нужно обработать для решения конкретной задачи.

1) Сложности чтения ТЖ:

— Требует хорошего понимания архитектуры работы системы

— Тексты запросов регистрируются на внутреннем языке 1С:Предприятия и на языке DBMS

2) Файлы технологического журнала хранятся в подкаталогах. Имя каждого подкаталога технологического журнала одного процесса будет иметь вид: <ИмяПроцесса>_<ИдентификаторПроцесса>, например: rphost_4076. Имя файла журнала задается шаблоном ГГММДДЧЧ.log. Например, в журнале 07051819.log имя файла образовано от 2007 мая 18, 19 часов)

3) Журнал для анализа можно выгрузить в эксель, используя разделителем запятую например

Если Вы хотите воспользоваться журналом для анализа сообщений об ошибках, воспользуйтесь бесплатным сервисом .

если вы не нашли ответ на ваш вопрос, давайте расширим материал

— исполняемый код 1С:Предприятие 8;
— код Transact-SQL для СУБД;
— интерактивные действия пользователей;
— сообщения об ошибках;
— утечки памяти.

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

Для включения технологического журнала необходимо:
Создать файл logcfg.xml в папке C:\Program Files (x86)\1cv82\8.2.15.301\bin\conf (путь — каталог 1С предприятия) на сервере 1С Предприятия.
После этого необходимо прописать в файле logcfg.xml пути к созданным папкам (где Указанный путь 1 — путь к логам, а Указанный путь 2 — путь к дампам):

Вот пример настроек с моего сервера:























После выполнения данных действий приложение 1cv8 автоматически начнет сохранение системной информации обо всех ошибках, произошедших в системе в данных каталогах.
После выполнения анализа, технологический журнал можно отключить, удалив или переименовав файл logcfg.xml.
Предполагается, что на компьютерах, где этот журнал будет включатся, файлы могут занимать достаточно большой объем места на диске (относительно, конечно). Поэтому рекомендую указывать пути на диски с большим объемом свободного места.
1) Для успешного создания логов, нужно создать каталоги для логов (например «D:\1Clog») и дапмов (например «D:\1Cdumps»), лучше создавать не на системном диске.
2) К этим каталогам ТЖ должны быть обязательно настроены права:
— полные права на каталог технологического журнала;
— права на чтение владельца каталога технологического журнала.
Примечание. Если все равно не пишется ТЖ, то дать права всем на эту папку (временно, чтобы убедиться что дела в правах).
3) В каталоге технологического журнала не должно быть посторонних файлов. Каталог, в котором имеются посторонние файлы не позволит создавать журнал (логи).
4) Место хранения dumps и logs не хранить вместе, потому что через указанный интервал (по умолчанию 1 час) содержимое польностью перетирается и вы потеряете дампы
ТЖ лучше настраивать (с помощью фильтров — тэгов logcfg.xml) только на исследуемые события, остальное не собирать, иначе словите «отсутствие места на диске» и тормоза в быстродействии сервера.
1) Легче выполнять настройку фильтров с помощью обработки с ИТС НастройкаТехнологическогоЖурнала.epf, но при этом помнить, что новые фичи последних релизов в обратке могут отстутствавать (каждая новая версия добавляет новые возможности, в обработки они не отражены). В этом случаи корректировать файл logcfg.xml руками.
2) Чтобы логи перестали собираться достаточно переименовать файл, перезапускать сервер не надо, настройки пересчитываются каждую минуту «на лету»
3) настроить logcfg.xml для фильтрации событий по определённой ИБ нужно использовать «p:processName=»

С помощью этих настроек я собираю информацию о:

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

    события, которые начались, но не закончились в момент возникновения нештатной ситуации.

    события, относящиеся к процессу целиком, и влияющие на дальнейшую работоспособность процесса. Например: старт, завершение, аварийное завершение и т.п.

    управляющие воздействия администратора кластера серверов 1С:Предприятия 8.2

    события, связанные с увеличением объема памяти, занятой серверными процессами (ragent, rmngr, rphost).

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

Лучшие статьи по теме