Бизнес портал - Гарнизон

1с как открыть настройка технологического журнала. Технологический журнал. Анализ логов. Атрибуты для настройки журнала

(или часть, используя фильтр), например:
— исполняемый код 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
  • Подробно изучим формат лога Технологического журнала
  • Разберем на примере лог с записанными данными

Давайте посмотрим что произойдет, если мы создадим файл logcfg.xml с указанной выше структурой и поместим его в каталог «C:\Program Files\1Cv82\conf»

Подождем 60 секунд и откроем каталог «C:\1C_Info\Logs» , т.к. именно его мы указывали в 3 строке файла logcfg.

Если каталога 1C_Info на диске нет, то сервер 1С попробует его создать, но есть риск того что у пользователя под которым запущена служба 1С не будет прав. Поэтому рекомендуется создавать каталоги для логов вручную и проверять наличие прав у сервера 1С на запись в данный каталог.

В результате в каталоге мы видим 3 подкаталога.

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

Каталог создается по шаблону ИмяПроцесса_PIDПроцесса. PID нужен для того, чтобы отличать процессы с одинаковым именем.

Файл лога именуется по шаблону ГГММДДЧЧ.log.

Если лог старше чем количество часов указанное в параметре history файла logcfg , то он автоматически удаляется платформой.

Давайте подробно разберем формат лога технологического журнала.

Событие записываются в лог только после того, как оно завершилось, т.к. необходимо фиксировать длительность события.

Строка лога имеет формат:

Мм:сс.тттт-д, <ИмяСобытия>, <Уровень>, <Свойства>

мм – номер минуты в текущем часе.

сс – номер секунды в текущей̆ минуте.

тттт – номер десятитысячной доли текущей̆ секунды, для 8.3 здесь отображается номер миллионной доли.

д – длительность события в десятитысячных долях секунды, для 8.3 в миллионных долях.

<ИмяСобытия> – наименование события.

<Уровень> – уровень события в стеке текущего потока.

<Свойства> - свойства события разделенные запятыми, значения свойств проставлены через знак «=» .

Разберем на примере.

Есть лог со следующим содержимым:

00:16 - это минуты и секунды окончания события. Дату и час события можно взять из названия файла лога. Событие завершилось 6 апреля 2015 года в 11 часов 00 минут 16 секунд. 8640 – для 8.2 это десятитысячные доли секунды. А для 8.3 - миллионные доли секунды момента завершения события. 1 – это длительность события. В 8.2 длительность указывается в десятитысячных долях секунды, в 8.3 в миллионных долях секунды. Если необходимо поставить фильтр на длительность, то можно использовать имя свойства «Duration». DBMSSQL – это имя события. В данном случае выполнение инструкций СУБД MS SQL Server. 3 – уровень события. Далее идут свойства события DBMSSQL ,при этом у каждого события свой набор свойств.Полный список свойств для всех событий можно посмотреть в руководстве администратора. Здесь мы подробно рассмотрим свойства только для текущего события. Process – Описывает процесс для которого пишется данный лог. Это свойство есть у всех событий. В моем случае пишется лог процесса rphost. P:processName – имя информационной базы 1С. Событие было сформировано в базе под названием Deadlock. T:clientID - идентификатор соединения с клиентом по TCP. T:applicationName – идентификатор клиентской программы. Т.е. кто именно вызвал событие, в моем случае это фоновое задание. T:connectID – номер соединения с информационной базой. SessionID – номер сеанса, назначенный текущему потоку. Если текущему потоку не назначен сеанс, то свойство не добавляется. Usr – имя пользователя информационной базой под которым выполняется данный поток. Если пользователь не определен, подставляется значение DefUser. Trans – показывает открыта транзакция на момент начала события или нет. 1 – открыта, 0 – нет. dbpid – номер соединения сервера 1С с сервером баз данных. SQL – текст инструкции SQL. Чаще всего здесь содержится текст запроса SQL с параметрами. Rows – количество строк, которые вернул запрос. RowsAffected – количество строк, которые изменил запрос в базе данных. Context – какая строка кода на языке 1С породила данное событие. Наверное, самое интересное для нас событие.

Бурмистров Андрей

В следующих статьях рассмотрим «События», а также их фильтрацию в ТЖ .

А пока закрепите полученный материал на своей тестовой информационной базе:)

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

Инструкция по настройке технологического журнала

  1. Завести на локальных дисках серверов приложений 1С специальную папку для технологического журнала. Например, C:\LOG . И для дампов, например, C:\dumps.
  2. Настроить журнал на сбор сообщений об ошибках (см. файл ) в подкаталог этого каталога. Подкаталог будем называть по дате: C:\LOG\2014-04-22 и т.д.
  3. Сам файл logcfg.xml надо положить в каталог conf папки установки сервера (!) 1С: Предприятия (например, C:\Program Files\1cv82\8.2.17.153\bin\conf).
  4. После этого примерно через минуту убедиться, что в каталоге создалась папка C:\LOG\2014-01-01, и в ней еще подпапки с именами rphost_XXXX, ragent_XXXX, rphost_XXXX, а в них файлики.
  5. Если создались, то все нормально, если не создались, то что-то не так.
  6. Если что-то не так: наиболее распространенные ошибки: большие/маленькие буквы в именах каталогов (регистр должен совпадать), в файле настройки написали слеш на конце имени каталога (не нужен), а еще иногда требуется донастроить права пользователей на папки C:\LOG, C:\dumps, C:\Program Files\1cv82\8.2.17.153\bin\conf, если они чересчур «закручены».

Файл logcfg.xml изнутри должен выглядеть примерно так:









Получите 267 видеоуроков по 1С бесплатно:

Атрибуты для настройки журнала

ALL Все события Абсолютно все события технологического журнала
ADMIN Административное действие Действия пользователя-администратора
CALL Входящий вызов Входящий удаленный вызов (удаленный вызов на стороне приемника вызова)
CONN Соединение с сервером Установка или разрыв TCP-соединения между процессами системы «1С 8.3»
CLSTR Активность кластера Выполнение операций, изменяющих работу кластера серверов
EDS Внешний источник данных Все события внешних источников данных
DB2 IBM DB2 Исполнение операторов SQL СУБД IBM DB2
DBMSSQL Microsoft SQL Server Исполнение операторов SQL СУБД Microsoft SQL Server
DBPOSTGRS PostgreSQL Исполнение операторов SQL СУБД PostgreSQL
DBORACLE Oracle Database Исполнение операторов SQL СУБД Oracle Database
DBV8DBEng SQL, Файловая СУБД Исполнение операторов SQL файловой СУБД
EXCP Исключение Исключительная ситуация приложения системы «1С: Предприятие», которое штатно не обрабатывается и может послужить причиной аварийного завершения серверного процесса или подсоединенного к нему клиентского процесса
EXCPCNTX Контекст исключения Событие, которые началось, но не закончилось в момент возникновения нештатной ситуации
HASP Обращение к HASP Обращение к аппаратному ключу защиты ()
LEAKS Утечка памяти Событие, связанное с утечкой памяти, которая может быть вызвана ошибками в коде конфигурации 1С 8.2
MEM Утечка памяти сервера Событие, связанные с увеличением объема памяти, занятой серверными процессами (ragent, rmngr, ).
PROC Процесс Событие, относящееся к процессу целиком и влияющие на дальнейшую работоспособность процесса. Например: старт, завершение, аварийное завершение и т. п.
QERR Ошибка запроса Событие, связанное с обнаружением ошибок компиляции запроса или ограничением на уровне записей и полей базы данных
SCALL Исходящий вызов Исходящий удаленный вызов (исходящий вызов на стороне источника вызова).
SCOM Серверный контекст Событие создания или удаления серверного контекста, обычно связанного с информационной базой.
SDBL Запрос к базе данных Исполнение запросов к модели базы данных 1С: Предприятия 8.3
SESN Сеанс Действие, относящиеся к сеансу работы. Например: начало сеанса, окончание сеанса и т. д.
SRVC Сервисы кластера События, связанные с запуском, остановкой и оповещениями сервисов кластера серверов
TLOCK Блокировка Управление транзакционными блокировками в Управляемом режиме
TDEADLOCK Обнаружена взаимоблокировка в Управляемом режиме
TTIMEOUT Таймаут Превышено максимальное время ожидания транзакционной блокировки
VRSCACHE Кеш http Работа кеша серверных вызовов
VRSREQUEST Запрос к серверу Запрос к серверу за некоторым ресурсом
VRSRESPONSE Ответ сервера Ответ сервера
SYSTEM Системные события Системные события механизмов платформы, предназначенные для анализа сотрудниками фирмы «1С»


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

Как говорить сама 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 .
Если Вы собираетесь хранить файлы ТЖ в каталоге отличном от каталога по умолчанию, то лучше предварительно создайте его сами.

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