Содержание 1. Что такое технологический журнал в 1С 2. В чем особенность технологического журнала в 1С. Чем отличается технологический журнал 1С от журнала регистрации 1С 3. Как подключить технологический журнал 1С? Пример подключения технологического журнала 1С 4. Анализ технологического журнала 1С |
||
Что такое технологический журнал 1С |
||
Добрый день, уважаемый посетитель. Если вы зашли на данную страницу, скорее всего, вам интересна такая функция 1С, как технологический журнал. Для начала давайте разберемся, что такое «технологический журнал» и для чего он нужен. Технологический журнал (далее ТЖ) – это функция 1С для протоколирования действий платформы «1С:Предприятие», записи событий 1С на низком уровне. |
||
В чем особенность технологического журнала 1С. Чем отличается технологический журнал 1С от журнала регистрации 1С |
||
Наверное, многие при первом упоминании ТЖ задаются вопросом, а зачем он нужен, если в платформе уже есть встроенный механизм под названием «журнал регистрации» (ЖР). Дело в том, что ТЖ имеет более расширенный функционал по сравнению с журналом регистрации. ТЖ регистрирует более полный спектр событий, чем журнал регистрации, он записывает даже те события, которые не может выявить ЖР в сеансах пользователей. Достигается это за счёт того, что ТЖ работает на низком уровне. Примером такой регистрации может выступать немедленное прерывание сеанса пользователя с описанием ошибки: «на сервере 1С произошла неисправимая ошибка» и т.д. Открыв журнал регистрации, сделав отбор по времени, мы не увидим никаких зарегистрированных ошибок, в то время как в ТЖ все будет указанно с полным описанием ошибки. |
||
Как подключить технологический журнал 1С |
||
Подключение технологического журнала, в отличии от его анализа, процесс не сложный, если вы знаете расширяемый язык разметки XML. Нам нужно создать пустой файл с именем logcfg.xml. Далее мы будем записывать настройки, по которым ТЖ будет регистрировать ошибки. Рассмотрим стандартную структуру файла для быстрого включения ТЖ, которую достаточно легко можно найти в интернете: |
<?xml version="1.0" encoding="UTF-8"?> <dump create="true" location="C:\TG\dumps" type="3"/> <log history="24" location="C:\TG\logs"> <property name="all"/> <event> <eq property="name" value="excp"/></event> </log> </config> |
||
Проанализируем его: «C:\TG\dumps» и «С:\TG\logs» – каталоги, в которых будут храниться данные по логам и дампам. Вы можете их переопределить, убедившись, что папки, куда вы хотите писать данные, созданы и у вас есть ним доступ. Обращаю ваше внимание на то, что при указании имён данных каталогов, важен регистр: «C:\TG\dumps» и «C:\TG\DUMPS» – разные каталоги для ТЖ. «history="24"» – время в часах, определяющее период хранения данных ТЖ. В данном примере указано 24 часа, через это время старые данные будут удалены и начнут записываться новые. Обратите внимание, что данные, в зависимости от настройки ТЖ, имеют зачастую большой объем. Убедитесь, что у вас на сервере достаточно дискового пространства. «<event> <eq property="name" value="excp"/></event>» – строка, указывающая, какие именно данные записывать в ТЖ. В данном случае в атрибуте «value» указано значение – «excp», что означает записывать в ТЖ исключительные ситуации. <event> – этим элементом определяется условие, при выполнении которого событие будет записано в ТЖ. Условия записываются элементами: eq = равно ne = не равно gt = больше ge = больше или равно lt = меньше le = меньше или равно like = соответствие маске Стоит так же упомянуть о команде «p:processName=». Благодаря ей можно задать, какая именно база будет анализирована в ТЖ. С полным перечнем значений для атрибута «value» вы можете ознакомиться здесь: http://www.vidicom.info/tech-journal |
||
Приведу еще один пример с настройкой для записи двух типов событий: | ||
<?xml version="1.0" encoding="UTF-8"?> <config xmlns="http://v8.1c.ru/v8/tech-log"> <dump create="true" location="C:\TG\dumps" type="3"/> <log history="24" location="C:\TG\logs"> <property name="all"/> <event> <eq property="name" value="excp"/></event> <event> <eq property="name" value="system"/></event> </log> </config> |
||
В данном примере в ТЖ будут записываться 2 вида информации: «Excp» – исключения, и «system» – системные события механизмов платформы. Итак, файл создали, что делать далее? Берем созданный logcfg.xml файл и переносим его на сервер в папку «conf», установленной платформы 1С. Если сервер х32 данную папку будем искать по пути «C:\Program Files\», далее для платформы 8.3 откроем папку «1Cv8» ( для версий платформы 8.2 – папка «1Cv82», для 8.1 – «1Cv81» соответственно) Далее открываем папку «conf» и переносим в нее наш созданный файл. Если сервер х64, проводим те же манипуляции, за исключением того, что сразу открываем папку «C:\Program Files(x86)\». Результатом успешного включения логирования будут созданные папки в каталогах, которые мы указали в файле logcfg.xml. |
||
Анализ технологического журнала 1С |
||
Для анализа данных ТЖ достаточно открыть соответствующий файл в папке, которую указали в «<log history="24" location="C:\TG\logs">». По каждому процессу кластера был создан каталог. Шаблон имени каталогов состоит из Имя_Процесса__PID_Процесса. Файл с логированными данными создается каждый час и имеет в имени определенный шаблон ГГММДДЧЧ. При открытии файла первое, что бросается в глаза – это цифры в левой части каждой строки. Вместо привычной даты здесь мы тоже получаем определенный шаблон, поняв который, сможем легко определять время каждого события. Шаблон строки имеет формат: мм:сс.тттт-д, <ИмяСобытия>, <Уровень>, <Свойства> Подробнее о шаблоне можно прочитать здесь: https://homyaks1c.blogspot.com/2015/11/blog-post_3.html В данной статье мы рассмотрели работу важной административной функции, которую предоставляет платформа «1С:Предприятие 8» –технологический журнал. Напомним, что настройка технологического журнала не занимает много времени, однако является существенным инструментом для получения полной картины производительности 1С. Надеюсь, что каждый, кому интересна данная тема, почерпнул для себя нужную информацию. |
||
Сергей Кулажевский, разработчик 1С компании ООО «Кодерлайн» |