Технологический журнал 1С v8.1 для ленивых

26.04.10

База данных - Технологический журнал

Статья о ключах защиты http://infostart.ru/blogs/745/ показала, что 1-2 страницы все-таки прочитать можно. Здесь будет сделана попытка расказать о технологическом журнале.

I. Технологический Журнал (далее ТЖ) позволяет протоколировать все события 1С:Предприятия (или часть, используя фильтр), например:
- исполняемый код 1С:Предприятие 8.1;
- код Transact-SQL для СУБД;
- интерактивные действия пользователей,

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

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

II. Журнал настраивается с помощью файла logcfg.xml в папку программы C:\Program Files\1cv81\bin\conf
1) Для успешного создания логов, нужно создать каталоги для логов (например C:\Program Files\1cv81\bin\logs) и дапмов (например C:\Program Files\1cv81\bin\dumps)

2) К этим каталогам ТЖ должны быть обязательно настроены права:

- полные права на каталог технологического журнала;

- права на чтение владельца каталога технологического журнала.

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

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

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

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

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

2) Чтобы логи перестали собираться достаточно переименовать файл, перезапускать сервер не надо, настройки пересчитываются каждую минуту "на лету"
3) настроить logcfg.xml для фильтрации событий по определённой ИБ нужно использовать  "p:processName="
4) http://users.v8.1c.ru/Adm1936.aspx - примеры настроек

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

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

4)1С:ЦУП использует для своих аналитических показалей логи технологического журнала. При использовании ЦУП другие данные собираться не должны, удалите logcfg.xml вручную, ЦУП сам создаст файл с нужными настройками.

5) Других парсеров логов от 1С нет, есть http://partners.v8.1c.ru/forum/getfile.jsp?name=ObrabotkaTehnologiceskogoGurnala.epf
http://partners.v8.1c.ru/forum/thread.jsp?id=576266#576266

V. Возможные ошибки и доп. информация:

- ищем логи в каталоге на сервере хотя для 64 разрядного сервера другой каталог программы

- отследить незавершившийся запрос; событие технологического журнала DBMSSQL выводится только в момент окончания выполнения запроса. Если запрос долго не может выполниться, то его выполнение можно прервать, после чего будут выведены в технологический журнал связанные с ним события.

<config xmlns="http://v8.1c.ru/v8/tech-log">
   <log location="C:\Program Files\1cv81\logs" history="24">
        <event>
         <eq property="Name" value="EXCP"/>
       </event>
        <event>
          <eq property="Name" value="SDBL"/>
          <eq property="Func" value="BeginTransaction"/>
       </event>
       <event>
         <eq property="Name" value="DBMSSQL"/>
         <ge property="Duration" value="30000"/>
       </event>
       <property name="All"/>
   </log>
</config>

- более подробно с особенностями использования технологического журнала можно ознакомиться по материалам семинара партнеров 2 - 4 марта 2007 года, доклад "Средства диагностики работы системы "1С:Предприятия 8.1"".

- курс где обучают данному вопросу http://www.1c.ru/news/info.jsp?id=9144

- На все вопросы есть ответ в "C:\Program Files\1cv81\AddDoc\RU\V8AddDoc81.htm", Книга «1С:Предприятие 8.1. Конфигурирование и администрирование», Глава 21. Администрирование, Технологический журнал

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

 

См. также

Магия преобразований Vector, часть 2: технологический журнал

Технологический журнал Мониторинг Абонемент ($m)

Как легко и быстро с помощью специализированных решений собирать, парсить и передавать логи и метрики.

1 стартмани

15.11.2023    665    4    AlexSTAL    0    

8

Магия преобразований: ЖР, ТЖ, RAS/RAC, логи - универсальное решение Vector

Мониторинг Журнал регистрации Технологический журнал Абонемент ($m)

Как легко и быстро с помощью специализированных решений собирать, парсить и передавать логи и метрики.

1 стартмани

13.11.2023    2721    4    AlexSTAL    0    

42

«Монитор» – простой анализ производительности

Администрирование СУБД Технологический журнал Бесплатно (free)

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

21.09.2023    5486    Andreynikus    14    

79

Экспорт технологического журнала 1С в Elastic с помощью Logstash

Технологический журнал Платформа 1С v8.3 Абонемент ($m)

Целью данного решения является организация хранения и анализа данных из технологического журнала 1С с использованием стека Elasticsearch + Logstash + Kibana.

5 стартмани

18.09.2023    3035    huxuxuya    3    

22

Мобильный помощник эксперта 1С (приложение android, позволяющее строить отчеты на СКД по логам технологического журнала и не только)

Технологический журнал Мониторинг Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

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

16.05.2023    3127    capitan    0    

20

Разбор технологического журнала без боли и страданий

Технологический журнал Абонемент ($m)

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

1 стартмани

12.12.2022    7937    37    Segate    26    

86

Выполняем в СУБД запрос из ТЖ

Технологический журнал Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Обработка для подстановки или нумерации параметров в тексте запроса из технологического журнала.

1 стартмани

24.11.2022    2821    3    VKislitsin    1    

17
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
96. пользователь 07.05.10 12:25
Сообщение было скрыто модератором.
...
98. Bitnikov 386 14.10.10 10:56 Сейчас в теме
У меня фильтр ТЖ не работал, пока я события не прописал в верхнем регистре (как оно в итоге записывается в лог):

<?xml version="1.0" encoding="UTF-8"?>
<config xmlns="http://v8.1c.ru/v8/tech-log">
<log history="168" location="C:\apps\1c\logs">
<event>
<eq property="name" value="PROC"/>
</event>
<event>
<eq property="name" value="SCOM"/>
</event>
<event>
<eq property="name" value="CONN"/>
</event>
<event>
<eq property="name" value="EXCP"/>
</event>
<event>
<eq property="name" value="ADMIN"/>
</event>
<event>
<eq property="name" value="MEM"/>
</event>
<property name="All"/>
</log>
<mem/>
<dump create="true" location="C:\apps\1c\dumps" prntscrn="true" type="3"/>
</config>
99. DmitriyNev 27.10.10 14:46 Сейчас в теме
Так и не понял в случае если сервер 1С под линукс - куда класть файл logcfg.xml ?
100. a_pol 75 18.11.10 14:57 Сейчас в теме
/opt/1C/v8.1/i386/conf - для 32 битной версии 8.1
/opt/1C/v8.2/i386/conf - для 32 битной версии 8.2
101. dmd 11.10.11 20:16 Сейчас в теме
102. zhleonid8 28.01.12 23:05 Сейчас в теме
так с 1 страницы, скоро научишь нас читать войну и мир:)
103. GreenFox 27.03.12 21:01 Сейчас в теме
Жалко что семинары больше не проводятся, а то охота разобраться в теме и приходится собирать информацию буквально по крупицам.
104. tormozit 7119 24.09.12 00:36 Сейчас в теме
В подсистеме "Инструменты разработчика" http://infostart.ru/public/15126/ добавлены инструменты "Настройка техножурнала" и "Анализ техножурнала", делающие техножурнал значительно доступнее для неискушенного разработчика.
105. pauchok 17 10.01.13 18:51 Сейчас в теме
Можно тоже замечательную обработку ObrabotkaTehnologiceskogoGurnala.epf мне на мыло - ну очень надо... somo@inbox.ru
106. romansun 193 11.01.13 21:53 Сейчас в теме
чутка ковырнул тему с 3 байтами и прочими неработающими вариациями

http://infostart.ru/public/168944/

Общий вывод - не копируйте xml через буфер обмена из инета. Уж лучше ручками напишите (хотя кто обычно пишет ручками ничего не копируя?) Копипаста, причем даже непосредственно из 1С-ной обработки с формы, часто заполняет файл каким-то мусором невидимым, который 1С не пропускает в итоге и никак не ругается.
Maxisussr; Lena272; Gilev.Vyacheslav; +3 Ответить
108. frc 11.01.13 22:53 Сейчас в теме
(106) romansun,
чутка ковырнул тему с 3 байтами

это каретка в начале строки с предложением начать строку?
Так это стандартное для 1С "опускание незначительных деталей" на пути к светлому будущему.
109. Gilev.Vyacheslav 1910 12.01.13 16:18 Сейчас в теме
уже полгода как существует бесплатный аналог цупа http://www.gilev.ru/services/online
veiuper; Lena272; CHSN; RustIG; +4 Ответить
110. frc 12.01.13 17:05 Сейчас в теме
(109)
А что делать, если все Ваши показатели будут показывать "норму", а пользователи все равно будут жаловаться на "тормоза", глюки отображения и прочие сопутствующие 1С прелести, возникающие от случая к случаю, и зачастую - в конце раюочекго дня?
существует бесплатный аналог цупа

"Если Вы хотите заказать APDEX отдельно от остальных работ, то его стоимость составит 15 000 руб"
Вы либо с нашей помощью, либо самостоятельно вставляете в исследуемую конфигурацию наш код клиентской части.

Только один вопрос - почему 1С обычным образом не вставляет Ваш код в типовые, чтобы "бесплатно" дать возможность воспользоваться "бесплатным" механизмом на месте?
Логи о производительности попадают на наш сайт.

Т.е. база будет самостоятельно сливать что-то в инет? У большинства доступ базы к инету категорически закрыт (и не будем про обновление валют и прочее).

Как контролировать производительность вашей 1С on Prezi

это вообще какая-то реклама, больше ничего.
112. Gilev.Vyacheslav 1910 03.07.13 16:41 Сейчас в теме
(110) frc,
А что делать, если все Ваши показатели будут показывать "норму", а пользователи все равно будут жаловаться на "тормоза", глюки отображения и прочие сопутствующие 1С прелести, возникающие от случая к случаю, и зачастую - в конце раюочекго дня?
Значит Вы неверно выставили "нормы". Ах да, вы наврено не сделали это, правда?
113. Gilev.Vyacheslav 1910 03.07.13 16:43 Сейчас в теме
(110) frc,
Только один вопрос - почему 1С обычным образом не вставляет Ваш код в типовые, чтобы "бесплатно" дать возможность воспользоваться "бесплатным" механизмом на месте?

я бы на месте 1с тоже не вставлял в типовые, они же не отвечают за НАШ сервер
а вот мы - встраиваем наши разработки в наши конфигурации, заказчики довольны - http://infostart.ru/public/190188/
114. Gilev.Vyacheslav 1910 03.07.13 16:44 Сейчас в теме
(110) frc,
Т.е. база будет самостоятельно сливать что-то в инет? У большинства доступ базы к инету категорически закрыт (и не будем про обновление валют и прочее).
клиентская чать с ОТКРЫТЫМ КОДОМ
НЕ НАДО ФАНТАЗИРОВАТЬ, ВОЗЬМИТЕ ДА ПОСМОТРИТЕ
ах да, вы не смотрели, проще пофантазировать...
115. Gilev.Vyacheslav 1910 03.07.13 16:45 Сейчас в теме
(110) frc,
это вообще какая-то реклама, больше ничего.
реклама - это когда берут деньги за то что рекламируют

а в прочем с вами все ясно...
111. maverick76 11 19.02.13 12:24 Сейчас в теме
116. Gilev.Vyacheslav 1910 28.10.13 14:35 Сейчас в теме
http://www.gilev.ru/status/ - работа с технологическим журналом
119. prodines 107 03.04.15 13:37 Сейчас в теме
1. Где именно включать технологический журнал? Достаточно ли включить его только на компе с сервером кластеров 1С? Или нужно ещё также и на каждом клиентском компе его включить - откуда пользователи заходят в 1С? В учебнике не увидел этой информации.

2. Если установить параметр history=168 , что случится по истечению этого срока - логи все сотрутся полностью в папке (что бред), или начнут затираться только логи 168-часовой старости - а более свежие останутся в наличии (что было бы естественнее)?
120. tormozit 7119 03.04.15 14:53 Сейчас в теме
(119)
1. Большинство значимых событий на рабочем сервере надо ловить. Поэтому включать надо прежде всего там, особенно для управляемого приложения.
2. Думаю ты сам уже понял ответ, пока писал вопрос. Да, удаляется каждый файл отдельно по достижении заданного возраста.
121. prodines 107 03.04.15 15:12 Сейчас в теме
(120) tormozit,
2. Думаю ты сам уже понял ответ, пока писал вопрос.

Нифига. После появления СКД от компании 1С можно ожидать любого тупого идиотизма. За ответ спасибо, для меня это весьма ценно. Тем более, что вот тут http://programmist1s.ru/nastroyka-tehnologicheskogo-zhurnala-1s/ (п.7) человек предлагал ежедневно управляющий файл logcfg.xml переделывать - чем меня сбил с толку.
toxicoff; +1 Ответить
122. prodines 107 03.04.15 17:33 Сейчас в теме
(120) tormozit,
Я всё равно не понимаю до сих пор - где нужно ставить технологический журнал - на кластере серверов или на рабочих компах пользователей 1С? Допустим, я поставлю технологический журнал только на кластере серверов - разве в нём будут записываться, например, события входа пользователей в 1С? Подозреваю, что нет. Вот что написано в жёлтом учебнике "1С:Предприятие 8.2 Руководство администратора." стр. 102:

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


Сразу возникают вопросы: а что это за такие "процессы, который пишут технологический журнал"? Я так понимаю, что это процессы кластера серверов - ragent.exe, rmngr.exe, rphost.exe и процессы клиентского приложения - 1с8.exe.

Но на компьютере с кластером серверов процессы клиентского приложения 1с8.exe вообще не запускаются. А крутятся только процессы кластера сервера - ragent.exe, rmngr.exe, rphost.exe. Предположим, простой пользователь заходит в 1С со своего компьютера. Каким образом это событие сможет записаться в технологический журнал на компьютере кластера 1С? Понятно, только если ragent.exe, rmngr.exe, rphost.exe запишут это событие. Но пишут ли они такие события - я пока не разобрался.
123. prodines 107 03.04.15 18:11 Сейчас в теме
Я не понимаю - что вообще пишется в технологический журнал на кластере серверов 1С. По логике - ничего (?) Ведь рядовые пользователи напрямую с кластером серверов 1С никак не пересекаются. Хотя, вроде бы ясно - что что-то всё же должно писаться - но что, а главное - о каких пользователях? Может, там протоколируются события открытия консоли управления сервера 1С? Так это мне нафиг не нужно. Мне нужно, чтобы на кластере серверов в технологический журнал записывались все действия рядовых пользователей - и возможно ли такое - пока сильно сомневаюсь.

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

Зато на обычном компе юзера технологический журнал ведётся без проблем. Вот только юзеров у нас десятки - не буду же я каждому включать технологический журнал, а потом собирать эти данные? Задача повисла в воздухе...
124. prodines 107 06.04.15 09:17 Сейчас в теме
Пока что я добился одного: на кластере серверов захожу в 1С - в технологический журнал на кластере серверов записывается лог в папку от имени процесса 1cv8

На кластере сервере 1С крутятся серверные процессы - из числа вот этих: ragent.exe, rmngr.exe, rphost.exe - под каким-то непонятным (видимо, административным) юзером. Если эти процессы и записывают события в технологический журнал - то, запишут ли они событие "мой вход в 1С" в технологический журнал на кластере серверов?
125. prodines 107 06.04.15 11:07 Сейчас в теме
Разобрался сам. Вот решение: http://forum-mista.pro/topic.php?id=714714
Не я один мучился, оказывается. :) Цитирую:

И тишина.
Распишу, как оно настраивается.
На сервере приложений запускаем "cmd"
В этой консоли набираем команду "echo %localappdata%"
Выйдет строка типа "C:\Users\MyUser\Appdata\Local"
Вместо "MyUser" ставим имя пользователя, от имени которого запускается сервер 1С, обычно это "1CV82"
Переходим в каталог "C:\Users\1CV82\Appdata\Local\1C\1Cv82\conf"
В этом каталоге создаем файл "logcfg.xml"

Работает сразу.


> файл должен иметь имя logcfg.xml и располагаться в каталоге конфигурационных файлов системы «1С:Предприятие».

Каталог этот находится по адресу %localappdata%\1C\1Cv82\conf

Для файловой версии и серверной - это разные каталоги. Потому что в одном случае файл ищет процесс запущенный от пользователя 1CV82, а в другом - от твоего пользователя.


Действительно, всё сразу заработало. Действительно, кластер серверов 1С начал записывать события входа обычных юзеров в 1С (юзеры на своих компах заходят в 1С).
Andrei_Ivanov; +1 Ответить
126. Rokstedi 19 13.05.15 09:14 Сейчас в теме
Подскажите что делаю не так. Использую настройки ТЖ из 21 сообщения. Создаются только папки с именем mmc_*, rphost_* нету.
127. Synoecium 775 17.06.15 09:38 Сейчас в теме
Прочитал все что касается настройки тех. журнала. Настроить получилось, но почему то так и не смог собрать логи по запросам к SQL. Текущий файл настроек тех. журнала выглядит следующим образом (по нему тех. журнал вообще ничего не записывает):
<?xml version="1.0" encoding="UTF-8"?>
<config xmlns="http://v8.1c.ru/v8/tech-log">
<dump create="false" type="136" location="C:\ТехЖурнал\dump" prntscrn="false"/>
<log history="1" location="C:\ТехЖурнал\log">
<property name="all"/>
<event>
<eq property="name" value="DBMSSQL"/>
</event>
<event>
<eq property="name" value="DBORACLE"/>
</event>
<event>
<eq property="name" value="DBPOSTGRS"/>
</event>
<event>
<eq property="name" value="DBV8DBENG"/>
</event>
<event>
<eq property="name" value="QERR"/>
</event>
<event>
<eq property="name" value="DB2"/>
</event>
<event>
<eq property="name" value="SDBL"/>
</event>
</log>
</config>

Логирование работает, потому что если убрать фильтры по "name", то логи собираются, правда почему то среди собранных событий нет ничего связанного с запросами (попали только следующие типы событий: SCALL, VRSCACHE, CONN, LEAKS, HASP, EXCP, VRSREQUEST, VRSRESPONSE, EXCPCNTX, PROC).
Сервер приложений и клиент, под которым я пробовал исполнять запросы находятся на одном сервере. Версия 1с 8.2.19.83
128. Armando 1399 21.06.15 23:54 Сейчас в теме
(127) Synoecium, скорее всего клиент и сервер установлены в разные папки, и файл тех журнала ты поместил к клиенту.
Synoecium; +1 Ответить
129. Synoecium 775 22.06.15 12:40 Сейчас в теме
(128) Armando, Да, действительно, файл настроек ТЖ был помещен не в ту папку. Спасибо за ответ, хотя обнаружил в чем проблема раньше чем прочитал.
Если кому то пригодится, то файл настроек ТЖ надо помещать не в папку C:\Program Files\1cv82\conf (елси поместить туда, то будут записываться события клиента, поправьте если не так), а помещать в папку C:\Users\USR1CV82\AppData\Local\1C\1Cv82\conf (обратите внимание, что папка AppData может быть скрытой по умолчанию).
Andrei_Ivanov; +1 Ответить
132. Lapitskiy 1056 07.03.21 09:09 Сейчас в теме
"http://users.v8.1c.ru/Adm1936.aspx" - запрашиваемая страница не найдена..
Оставьте свое сообщение