gifts2017

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

Опубликовал Вячеслав Гилёв (Gilev.Vyacheslav) в раздел Администрирование - Системное

Статья о ключах защиты 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. Администрирование, Технологический журнал

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

 

См. также

PowerTools от 1 000
Подписаться Добавить вознаграждение

Комментарии

1. Сергей Аверьянов (saver77) 29.01.09 10:50
Спасибо, поднял хорошую тему. +++
Для настройки ТЖ есть полезная обработка "НастройкаТехнологическогоЖурнала.epf", можно скачать тут: http://forum.sysfaq.ru/index.php?s=2b483989fca0f4737a7ec4ad9181e4fa&act=attach&type=post&id=3­966
Вот только у меня не получилось вот это "При использовании ЦУП другие данные собираться не должны, удалите logcfg.xml вручную, ЦУП сам создаст файл с нужными настройками." Очень прошу по шагам описать настройку ЦУП, чтобы он сам создавал файл logcfg.xml.
2. gilv (Gilev.Vyacheslav) 29.01.09 22:41
если у вас есть купленный цуп, то к нему идет книжечка, в конце которой есть приложение (страниц много) где подробно описана настройка,
плюс есть описание http://kb.1c.ru/articleView.jsp?id=39
если есть КОНКРЕТНЫЙ вопрос, то могу попробовать ответить
3. Сергей Старых (tormozit) 02.02.09 11:31
Про "отследить незавершившийся запрос" я не догнал. Не очень внятно расписан этот момент. Можно в комментах "разжевать"?
4. gilv (Gilev.Vyacheslav) 02.02.09 15:16
(3) специально же дал "тупо текст" logcfg.xml
подложи в conf и посмотри что собирается :)))
6. Герман (German) 05.02.09 12:08
Кстати для файловой у меня так и не получилось получить SDBL запросы
7. gilv (Gilev.Vyacheslav) 05.02.09 13:10
(6) а если включить собирать все события, тоже не собираются?
8. Герман (German) 05.02.09 13:31
9. Герман (German) 05.02.09 13:39
ну я на 11.67 только пробывал
надо поновее релиз поставить
10. gilv (Gilev.Vyacheslav) 05.02.09 14:25
(8) если не собираются все события, то проверьте по разделу II. инструкции корректность настроек
11. gavril (gavril) 07.02.09 23:23
Вроде все настроил.
Почему то не отслеживаются "Анализ запросов"
Где может быть собака?
Основне виробництво
12. gavril (gavril) 07.02.09 23:24
Сори... чет к посту прицепилось :)
Последняя строчка не в тему :)
13. gilv (Gilev.Vyacheslav) 08.02.09 14:41
(12) не формируются логи rphost, ну специально же написал
Если не пишется ТЖ, то дать права всем на эту папку (временно, чтобы убедиться что дела в правах).
14. gavril (gavril) 08.02.09 15:12
(13) Права всем дал.... все показатели кроме аналит. записівает и видит.
15. gilv (Gilev.Vyacheslav) 08.02.09 16:48
(14) помоему я не спрашивал про права, логи пишуться?
16. gavril (gavril) 08.02.09 18:42
Логи пишутся в папку ...\bin\logs\rphost_1644
типа 09020817.log, но они пустые :(
Что может быть не так?
17. gilv (Gilev.Vyacheslav) 08.02.09 21:18
(16) инструкцию все таки бы прочитал, а?
права на чтение владельца каталога технологического журнала даны точно всем?
удалить logcfg.xml перед сбором
18. gavril (gavril) 08.02.09 21:55
:(
хм. перечитал мануал три раза потом еще раз перед тем как задать вопрос.
Удалил файл настройки и дал создать его ЦУПом, проверил файл создан нормально. Запустил ЦУП под администратором ОС. Дал на папку права ВСЕМ на ВСЕ.
Ну да ладно завтра на свежую голову разберусь.

19. gilv (Gilev.Vyacheslav) 09.02.09 11:26
(18) права нужно давать не клиентской части 1С, а учетной службе сервера приложений (поумолчанию USR1CV81)
после того, как дадите права учетной записи службы сервера приложений 1С, создайте руками logcfg.xml на фильтром "писать все события", подождите 1 минуту (сервер приложений перечитывает только 1 раз в минуту файл) и проверьте, будут ли собирать наши логи
уверен, все получиться
20. gavril (gavril) 09.02.09 14:14
Служба сервера запускается от имени администратора системы (уже так сделал).
Поставил писать все события.
Всеравно файлы по 3 байта пустые :(
21. gilv (Gilev.Vyacheslav) 09.02.09 17:58
(20) звучит как фантастика
предлагаю следующее
использовать проверенный мной файл (у меня он работает)
http://www.gilev.ru/1c/logcfg.rar
распаковываете и помещаете в C:\Program Files (x86)\1cv81\bin\conf (если 32х разрядный сервер на 64 разрядном железе, иначе C:\Program Files\1cv81\bin\conf)
Даете права для Everyone по максимуму для C:\Logs
и перезагружаете сервер.
В чудеса не верю.
Смотрим что получиться.
22. gavril (gavril) 10.02.09 12:16
Поставил файлик, поменял в нем лишь диск для загрузки (поставил F:\Logs\)
Логи пишутся те что и раньше писались...
В ЦУПе попытался включить запись Анализа запросов и получил ошибку:
"Ошибка при вызове конструктора (ЧтениеТекста)"
Анализ запросов так и не представляется возможным включить :(
23. gavril (gavril) 10.02.09 12:17
Но даже до того как попытался включить запись, показатель Анализ запроса не мониторился :(
24. gilv (Gilev.Vyacheslav) 10.02.09 13:41
(22) >Логи пишутся те что и раньше писались...
так логи в rphost стали не пустые, верно?
26. gilv (Gilev.Vyacheslav) 10.02.09 15:20
Медленно, но мы продвигаемся. Версия ЦУПа и платформы какая? Давайте будем ориентироваться пока на ЦУП 1.1.1.27 и платформу 8.1.12.101.
27. gilv (Gilev.Vyacheslav) 10.02.09 15:22
Формиуются ли обсуждаемые логи после включения счетчика "Анализа запросов"?
28. gavril (gavril) 10.02.09 15:45
Логт формируються.
Но в ЦУПе счетчик = 0.
29. gilv (Gilev.Vyacheslav) 10.02.09 15:57
(28)
1. Не услышал по поводу версий.
2. Как же Вы читали документацию к ЦУПу, если не знаете, что во время сбора счетчик и должен быть в нуле!
30. vtools (vtools) 12.02.09 15:05
Скрипт не фильтрует по времени - в логи загоняются все события, а мне нужно отловить только большие по времени. Фигня какая-то....
31. gilv (Gilev.Vyacheslav) 12.02.09 17:49
(30) для события больше определенного интервала нужно накладывать дополнительный фильтр
в тексте это выклядит как
<event>
<gt property="Duration" value="100000"/>
</event>
т.е. берите обработку, указывайте события какой субд хотите отслеживать и накладывайте ограничение по длительности (Duration)
32. vtools (vtools) 12.02.09 18:18
Спасибо, после долгих экспериментов заработал вот такой скрипт (все остальные скрипты из доккументации 1С не работали - точнее не фильтровали):

<?xml version="1.0" encoding="UTF-8"?>
<config xmlns="http://v8.1c.ru/v8/tech-log">
<log history="48" location="C:\1C\logs">
<event>
<eq property="Name" value="SDBL"/>
<gt property="Duration" value="10000"/>
</event>
<event>
<eq property="Name" value="DBMSSQL"/>
<gt property="Duration" value="10000"/>
</event>
<property name="All">
</property>
</log>
</config>
33. vtools (vtools) 12.02.09 18:20
...т.е. как я понял по отдельности оно не работает
34. gilv (Gilev.Vyacheslav) 12.02.09 18:38
(33) не думаю, что Вам нужны события SDBL, но вцелом идея правильная
хорошо, что написали рабочий скрипт сюда, думаю коллегам пригодиться
35. gilv (Gilev.Vyacheslav) 12.02.09 19:59
<?xml version="1.0" encoding="UTF-8"?>
<config xmlns="http://v8.1c.ru/v8/tech-log">
<dump create="false" location="" type="0"/>
<log history="1" location="E:\logs">
<event>
<eq property="name" value="dbmssql"/>
<ne property="t:applicationname" value="BackgroundJob"/>
<gt property="duration" value="10000"/>
</event>
<property name="all"/>
</log>
</config>
36. gilv (Gilev.Vyacheslav) 12.02.09 19:59
(35) это тоже самое, но без надоедливых фоновых заданий
37. gilv (Gilev.Vyacheslav) 17.02.09 16:54
вариант настройки для поиска 54й ошибки
<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="PROC"/>
</event>
<property name="all"/>
</log>
<dump location="C:\Program Files\1cv81\dumps" create="1" type="3"/>
</config>
38. gilv (Gilev.Vyacheslav) 14.03.09 13:45
Замер долгих действий в клиент-серверном варианте

<?xml version="1.0" encoding="UTF-8"?>
<config xmlns="http://v8.1c.ru/v8/tech-log">
<dump create="true" location="E:\damps" prntscrn="1" type="3"/>
<log history="1" location="E:\logs">
<event>
<eq property="name" value="EXCP"/>
<eq property="name" value="proc"/>
<eq property="name" value="scom"/>
<eq property="name" value="conn"/>
<eq property="name" value="admin"/>
<eq property="name" value="qerr"/>
<qt property="duration" value="100000"/>
</event>
<event>
<eq property="name" value="EXCPCNTX"/>
</event>
<event>
<eq property="name" value="dbmssql"/>
<qt property="duration" value="100000"/>
</event>
<property name="all"/>
</log>
</config>
39. Сергей Дудаков (Anything) 14.03.09 20:21
(0) Вопрос на засыпку.

Можно ли отслеживать утечки памяти в файловом режиме. Или хотя бы на клиентской стороне?

В документации написано, что "на клиентском компьютере могут возникать только те события, которые относятся к группам PROC, EXCP, SDBL." Т. е. LEAKS как бы не должны возникать... Если так, тогда зачем парметр <point Call=”client”/>?

Сколько пробовал, никак не получается отследить утечку в файловом режиме, хотя она видна невооруженным глазом в диспетчере задач. Может, есть какой-то магический обряд для этого?
40. gilv (Gilev.Vyacheslav) 14.03.09 21:39
(39) клиент <> файловый, а просто в клиент-серверной архитектуре на стороне клиента,
и потом, с чего вы взяли, что у вас в файловом режиме утечки памяти, в чем это проявляется (они должны быть очень сильными, чтобы их заметить, так как в отличии от сервера, который постоянно запущен, в файловом варианте сессии обычно живут не больше одного дня)
на клиенте утечки могут быть, другое дело что они на практике не оказывают такого сильного влияния, как на серверной стороне и у меня подобных задач пока не возникало
41. Сергей Дудаков (Anything) 15.03.09 00:00
(40) Я понимаю, что клиент <> файловый.

В (39) содержится два вопроса:
1. Можно ли отслеживать утечки памяти в файловом режиме?
2. Можно ли отслеживать утечки памяти в серверном режиме клиентской стороне?
42. Сергей Дудаков (Anything) 15.03.09 00:03
(40) А утечки проявляются в том, что при циклической обработке объектов (с использованием рекурсии) выделенная память процесса растет до 1Гб с лишним, а потом 1С вываливается.
43. gilv (Gilev.Vyacheslav) 15.03.09 00:54
(41) на практике в файловом режиме не приходилось реальных задач решать, не могу дать ответа, теория есть в документации.
В клиент-серверном варианте на стороне клиента отслеживать утечки можно.
(42) Нехватка памяти, спровоцированная рекурсией - это не утечка, а неаккуратное расходование памяти программистом. Не надо путать разные по смыслу явления. Специально дал в статье http://www.gilev.ru/1c/memleak/ определение:
Утечка памяти ( memory leak) - это процесс неконтролируемого уменьшения объёма свободной RAM ) , связанный с ошибками в работающих программах, вовремя не освобождающих ненужные уже участки памяти, или с ошибками системных служб контроля памяти.
В вашем случаи надо либо увеличить память на проблемном компьютере, либо "серьезней" подойти к написанию кода рекурсии, не накапливая больших объемов в каждой итерации. Если будет конкретный вопрос, то могу попробовать ответить.
44. gilv (Gilev.Vyacheslav) 15.03.09 00:57
(42) если памяти "совсем чуть-чуть" не хватает, а сама проблемная ситуация возникает не у всех пользователей, то можно "арендовать память", перенеся код выполняться в общий модуль на сервер приложения.
45. Сергей Дудаков (Anything) 15.03.09 00:57
Пример кода, создающего утечку (позаимствован и адаптирован):

Для Я = 1 По 1000000 Цикл
ОбработкаПрерыванияПользователя();
Состояние(Я);

М = Новый Массив;
М.Добавить(Новый Массив);
М[0].Добавить(Новый Массив);
М[0][0].Добавить(М);
КонецЦикла;
46. Сергей Дудаков (Anything) 15.03.09 01:01
(43) Ответ я понял. Спасибо.

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

Еще раз спасибо за ответы.
47. gilv (Gilev.Vyacheslav) 15.03.09 12:58
(45) честно говоря, мне не очень понятен смысл создания в цикле конструкции:

М = Новый Массив;
М.Добавить(Новый Массив);
М[0].Добавить(Новый Массив);
М[0][0].Добавить(М);

что-то больших размеров надо создавать за пределами цикла, а используя в цикле я бы наверно в конце цикла добавил строчку
М = "";
с целью удаления массива

если внутри цикла передавать массив рекурсивно, то это не утечки памяти, а неосмысленные действия программиста, так как ясен перец, надежность тут будет определяться только наличием ограничений на вложенность и ресурсами железа
48. - - (Rebelx) 15.03.09 13:37
(47) суть примера не в массиве, а в циклических ссылках:

М[0][0].Добавить(М);

(45) тот же самый эффект можно получить проще:

М = Новый Массив;
М.Добавить(М);
49. Сергей Дудаков (Anything) 15.03.09 14:05
(47) Это не мой код. Это я взял пример из документации V8AddDoc81.htm, чтобы воспроизвести утечку на клиенте и проверить работу "Технологического журнала".

В данном примере смысл утечки в том, что М через вложенные массивы содержит ссылку сам на себя (см. последнюю строку). Поэтому сборщик мусора не может корректно очистить память от этого массива.


P. S. Со своей утечкой, я кстати, разобрался. (См. блог http://infostart.ru/profile/43713/blog/190/)
50. gilv (Gilev.Vyacheslav) 15.03.09 14:39
(48) мне думается разработчики притянули этот пример за уши, чтобы что то написать в документацию в качестве примере как не надо делать
именно за это и не очень люблю документацию, мало практических примеров и много текста ни о чем
(49) не смогу открыть ссылку, вы ее через свой профиль указали.
51. Алексей Захаров (almas) 22.03.09 09:35
Огромный респект Автору. Чисто Случайно наткнулся на ваш сайт. Огромное спасибо.
52. gilv (Gilev.Vyacheslav) 22.03.09 11:45
(51) Спасибо, очень приятно :)
aleks_cons; +1 Ответить
53. Сергей Аверьянов (saver77) 01.04.09 16:23
Коллеги, кто н-ть может на мыло скинуть обработку ObrabotkaTehnologiceskogoGurnala.epf
Вот адрес: s_averyanov@list.ru
Спасибо.
janeJANE; aleks_cons; +2 Ответить 3
54. gilv (Gilev.Vyacheslav) 01.04.09 16:47
55. gilv (Gilev.Vyacheslav) 06.04.09 16:18
Подробней практическое применение технологического журнала хочу предложить на моем авторском курсе http://www.gilev.ru/1c/mssql/kurs.htm
Можно заранее задать вопросы по вашему предприятию, которые мы разберем на курсе.
56. Andrey C (chig) 18.05.09 10:10
логи пишет служба сервера 1С?
blue_storm; aleks_cons; +2 Ответить 1
57. Andrey C (chig) 18.05.09 10:23
Зачем права давать на каталог ещё кому-то кроме учетки под которой работает служба?
58. gilv (Gilev.Vyacheslav) 18.05.09 12:18
(56) в файловом варианте логи тоже пишутся, там сервера нет :)
и сервер тоже пишет
я бы сказал, пишет Платформа
59. gilv (Gilev.Vyacheslav) 18.05.09 12:19
(57) просто так не надо, но может потребоваться например пользователю, который запускает клиентскую часть ЦУПа
60. Andrey C (chig) 18.05.09 13:28
Не понятно в чем проблема.... файл есть каталоги есть.. но на сервере ничего не пишется... права полные на каталог есть...в чем возможен подвох?

<?xml version="1.0" encoding="UTF-8" ?>
- <config xmlns="http://v8.1c.ru/v8/tech-log">
<dump create="false" location="" type="0" />
- <log history="1" location="C:\Program Files\1cv81\bin\conf\logs">
- <event>
<eq property="name" value="" />
</event>
<property name="all" />
</log>
</config>
61. Andrey C (chig) 18.05.09 14:05
<?xml version="1.0" encoding="UTF-8" ?>
- <config xmlns="http://v8.1c.ru/v8/tech-log">
<dump create="false" location="" type="0" />
- <log history="1" location="C:\Program Files\1cv81\bin\conf\logs">
- <event>
<ne property="name" value="" />
</event>
<property name="all" />
</log>
</config>

тоже ничего не дает.. что-то с правами
62. gilv (Gilev.Vyacheslav) 18.05.09 14:29
выше уже все наиболее вероятные проблемы описаны, разве что некоторые вместо создания logcfg.xml с помощью обработки делают руками через блокнот и вмест UTF формата создают файл в win1251, из-за чего не собираются логи

все остальные проблемы обсосаны по многу раз, внимательней читайте

если читать лень, то при предоставлении терминалки за 2400 руб. гарантировано решу проблему :)
63. Andrey C (chig) 18.05.09 14:46
:) Читать не лень! Статья - гуд! Заработало!
64. gilv (Gilev.Vyacheslav) 21.05.09 00:56
В течении 21 мая - 29 мая 2009 БЕСПЛАТНО помогаю разбираться с 10054 ошибкой, для этого
пишите на e-mail: gilev_slava собачка mail.ru собранные логи ТЖ (http://www.gilev.ru/1c/81/techlog/index.htm описание) файлом logcfg.xml (брать отсюда http://www.gilev.ru/1c/81/error54/logcfg.xml ).
65. Василий (Kreont) 27.05.09 15:37
Не пишет Технологический Журнал (только 3 байта)
Продублирую с форума http://www.forum.mista.ru/topic.php?id=410569
текст весь, но результата 0 пока.

База 1С 8.1.13.41
Сервер Postgres 8.3 на Fedora 9
Сервер 1C там же

А) Статьи Гилева прочитал
Б) По форумах прошелся ничего не нашел(
В) Использую стандартную "НастройкаТехнологическогоЖурнала.epf"

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

Причем файл лога 1С держит открытым но ничего непишет

Откуда еще копать?

П.С. Может вся ета статья относится только к Win Serveram & MS SQL BD :)
Тогда вопрос а как для Постгри и Линуксе?

66. gilv (Gilev.Vyacheslav) 27.05.09 17:08
>Тогда вопрос а как для Постгри и Линуксе?
к сожалению не могу отвечать за тех, кто "ищет себе приключения на задницу" :)))
http://users.v8.1c.ru/Adm1557.aspx - это про дампы


начните с простого

cat ./logcfg.xml

<config xmlns = " v8.1c.ru/v8/tech-log »»">
<log location = "/opt/1C/v8.1/i386/conf/tech_logs" history = "4">
<event>
<eq property = "Name" value = "DBPOSTGRS"/>
</event>
<property name = "all"/>
</log>
</config>

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

67. gilv (Gilev.Vyacheslav) 27.05.09 17:10
и еще, я не просто так в статье дал ссылку на описание в стандартной документации - его нужно читать! ;)
68. gilv (Gilev.Vyacheslav) 27.05.09 17:11
вот это пример для полного лога
<config xmlns = "http://v8.1c.ru/v8/tech-log">
<log location = "/opt/1C/v8.1/i386/conf/tech_logs" history = "4">
<property name="all"/>
<event>
<ne property="name" value=""/>
</event>
</log>
</config>
69. Василий (Kreont) 27.05.09 19:01
То несовсем непонял к чему
>> к сожалению не могу отвечать за тех, кто "ищет себе приключения на задницу" :)))
Если невидел 1С8.1 + постгри+ Fedora так и скажы..

>>тупо копировать отсюда :)))
не тот IQ у меня чтоб копировать

>> стандартной документации
лежит на столе, страница 1033 2-я книга,
но непомагает она

А то вовсе непонятно к чему
log location = "/opt/1C/v8.1/i386/conf/tech_logs" history = "4">
Мне надо журнал запускать не для всех сеансов сервера 1С
на *никсе а только для моей машини под WinXP где клиент 1С стоит
и смотреть только мои логи при обращении









70. Василий (Kreont) 27.05.09 19:03
71. gilv (Gilev.Vyacheslav) 27.05.09 19:38
(69) так логи надо не линуховом сервере смотреть тогда, на твоем компе с WinXp, если интересуют события, выполняющие на клиенте
события сервера надо смотреть на сервере, в чем сложность то?
72. gilv (Gilev.Vyacheslav) 27.05.09 19:39
покажи лог, который ты настроил на WinXP
73. Василий (Kreont) 28.05.09 10:50
Лог на ХП с станд.обработки
<?xml version="1.0"?>
<config xmlns="http://v8.1c.ru/v8/tech-log">
<log history="168" location="C:\Program Files\1cv81\bin\logs">
<event>
<eq property="name" value="dbv8dbeng"/>
<eq property="name" value="dbmssql"/>
<eq property="name" value="dbpostgrs"/>
<eq property="name" value="db2"/>
<eq property="name" value="excp"/>
</event>
<property name="all"/>
</log>
</config>

Попробую резюмировать для клиент-серверной структуры
(когда я не работаю за сервером):
а) (с книги стр.1036) На клиенте могут могут возникать только те события, которые относятся к групам PROC, EXCP, SDBL и все :(
б) все остальное только на сервере, причем для
Linux я догадываюсь. файл logcfg.xml
должен лежать в каталоге таком
/opt/1C/v8.1/x86_64/conf
как его настроить на логирование только для одной базы и только
на логирование запросов только с одной клиентсокй машины еще ищу


П.С.
Еще вот нашел такое,
в каталоге
/home/usr1cv81/.1cv81/1C/1Cv81/reg_.. ./
есть файлик 1CV8REG.lst
где можно узнать (незнаю как правильно назвать: ЫД базы)
и в каталоге с выше ЫД базы можно посмотреть логи сервера 1с


спс. за толчок в нужном направлении, копаю дальше
74. gilv (Gilev.Vyacheslav) 28.05.09 12:14
(73)
1) логи сервера - это журнал регистрации, он прекрасно доступен в режиме предприятия, не надо так изголяться с поиском идентификаторов
2) на клиенте 1С исполнения запросов не происходит, поэтому события так или иначе связанные с запросами логируются на сервере - это логично
3) на клиенте вполне достаточно события excp

было бы не плохо, если бы обозначили решаюмую вцелом задачу
75. Василий (Kreont) 28.05.09 12:35
Задача как всегда простая, оптимизация быстродействия
для следуещего етапа 0-администрирования :)

При 3-компонентной БД 1С задача у меня разбивается на три подзадачи
1) что у клиента(в смысле рабочей станции) может нагружать систему
тут я думаю нечего оптимизировать при клиент-серверной БД, главное чтоб
комп включился, ну и исключения в лог, больше я так понял невытяну

2) сервер 1С как быстро обрабатывает и над какой задачей он больше всего "мучается"

вот тут и хочу настроить сейчас оптимально файл logcfg.xml чтоб почитать и
проанализировать его за чашечкой кофе :)

3) сам постгри как быстро исполняет каждый запрос.
ну хочется например узнать по логах уже самого постгри нет ли ошибок
со стороны сервера 1с и показать запросы что хотят много памяти/времени процесора
С логом постгри уже разобрался, настроил, просто на основании логов постгри
можно правильно настроить его ж самого, подбирая правильные параметры
для конфиг.файла postgresql.conf
В постгри кстати покрасивей логирование настраивается и читабельней оно :(

76. Василий (Kreont) 28.05.09 12:46
Уже начал для лінукса такой файл готовить:
<?xml version="1.0" encoding="UTF-8"?>
<config xmlns="http://v8.1c.ru/v8/tech-log">
<log history="24" location="/home/usr1cv81/log1c">
<event>
<eq property="Name" value="DBPOSTGRS"/>
<eq property="Name" value="SDBL"/>
<eq property="Name" value="EXCP"/>
<eq property="Name" value="QERR"/>
<eq property="Name" value="PERR"/>
</event>
<property name="host">
???? вот незнаю может получиться тут фильтр включить только на логирование сервером все что относится к мему компу, но пока
ненашел что вписать IP, имя etc.
</property>
<property name="sql">
<event>
<eq property="Name" value="DBPOSTGRS"/>
<gt property="Duration" value="20000"/>
</event>
</property>
<property name="Context">
</property>
</log>
</config>
77. gilv (Gilev.Vyacheslav) 28.05.09 13:23
(76) еще раз прочтите документацию по ТЖ
1) надо аккуратно использовать операции "И" и "ИЛИ" - т.е. писать иногда надо в рамках тега, иногда в разных тэгах
2) у каждой категории событий есть свойство соответствующее пользователю и свойство соотвествующее компьютеру (его можно увидеть, сначала собрав лог по всем свойствам события)
Но надо учесть, что не которые события относятся только к серверу 1С, и для них нет клиента, тогда нужно настроить сбор логов при "отсутствии пользователя" в событии, иначе потеряете часть

78. gilv (Gilev.Vyacheslav) 28.05.09 13:26
(75) что нагружает у клиента можно в частном случаи замерить отладчиком
79. Василий (Kreont) 28.05.09 16:27
Нашел то что хотел, наконец то:)
Конфиг. файл для полного лога сервером всех действий с одной клиентской машины:
<?xml version="1.0" encoding="UTF-8"?>
<config xmlns="http://v8.1c.ru/v8/tech-log">
<log location="/home/usr1cv81/log1c" history="24">
<property name="all"/>
<event>
<eq property="t:computerName" value="ИмяКомпютера"/>
</event>

</log>
</config>
Где ИмяКомпютера = нетбиос имя, а не IP
aleks_cons; +1 Ответить
80. Рамил Шарапов (roma276) 30.06.09 15:38
gilv, подскажи плиз, 1с8, кластер серверов на федоре, дб - постгре,(поднят ВПН)
вопрос в следующем, на одной машине ни как не мог доконнектится, до сервака, хотя с любой другой - без проблемм, .Точнее коннект есть, "Серверы 1с" видят сервак, при попытке войти с клиента - доходит до выбора пользователя, поссле ввода пароля, либо слетает ВПН и выходит 54 ошибка, либо 54-я сразу, создал техн журнал, куда записывается полный лог,(и на серве и на клиенте), в логах клиента пишет
19:21.4060-0,EXCP,2,process=1cv8,Usr=Администратор,Exception=NetDataExchangeException,Descr=' server_addr=tcp://freyja:1564 descr=Ошибка сетевого доступа к серверу
(Windows Sockets - 10054(0x00002746). Удаленный хост принудительно разорвал существующее подключение. ) line=1031 file=.\src\DataExchangeTcpClientImpl.cpp'
19:21.4061-314060,SCALL,1,process=1cv8,Usr=Администратор,ClientID=2,Interface=002b0774-d19e-4181-851e-0aae08756463,Method=1
19:21.4062-0,EXCP,1,process=1cv8,Usr=Администратор,Exception=NetDataExchangeException,Descr=' server_addr=tcp://freyja:1564 descr=Ошибка сетевого доступа к серверу
(Windows Sockets - 10054(0x00002746). Удаленный хост принудительно разорвал существующее подключение. ) line=1031 file=.\src\DataExchangeTcpClientImpl.cpp'
19:21.4220-2190470,PROC,0,process=1cv8
19:21.4221-0,EXCP,0,process=1cv8,Usr=Администратор,Exception=Exception,Descr=' server_addr=tcp://freyja:1564 descr=Ошибка сетевого доступа к серверу
(Windows Sockets - 10054(0x00002746). Удаленный хост принудительно разорвал существующее подключение. ) line=1031 file=.\src\DataExchangeTcpClientImpl.cpp'


и вот такую ошибку тож


15:52.9380-0,CONN,1,process=1cv8,Txt=Clnt: MyUserName1: Олеся@ОЛЬГА
15:55.1410-22029,SCALL,1,process=1cv8,ClientID=1,Interface=7f58f27d-5ad8-43a1-aa1e-c982f41bed5c,Method=0
15:55.1411-0,CONN,1,process=1cv8,Txt=Clnt: DstUserName1: StartProtocol: 0 Error
15:55.1412-0,EXCP,1,process=1cv8,Descr=InitializeSecurityContext: Error 80090308!
15:55.5310-930,SCALL,1,process=1cv8,ClientID=1,Interface=73b7d3a3-fe0b-4fdf-ba70-b74b3589ffc3,Method=0
15:55.7190-0,CONN,1,process=1cv8,Txt=Clnt: MyUserName1: Олеся@ОЛЬГА
15:56.7190-9999,SCALL,1,process=1cv8,ClientID=2,Interface=7f58f27d-5ad8-43a1-aa1e-c982f41bed5c,Method=0
15:56.7191-0,CONN,1,process=1cv8,Txt=Clnt: DstUserName1: StartProtocol: 0 Error
15:56.7192-0,EXCP,1,process=1cv8,Descr=InitializeSecurityContext: Error 80090308!


все остальные советы брал из твоей статьи http://www.gilev.ru/1c/81/error54/ , но пока ни ни, если я те вышлю логи, ты сможешь взглянуть? заранее пасиб

81. gilv (Gilev.Vyacheslav) 30.06.09 17:09
to roma276
проблема связана с некорректной авторизацией,
с наибольшей вероятностью настроек керберос (в т.ч. самбы)
к 1С это никак не относится,
проверьте логи линуха

рекомендую обратиться к специалистам по линуксу

82. Рамил Шарапов (roma276) 01.07.09 08:00
ясн, лан, будем разбираться,.. в логах сервера пишет что недостаточно прав у пользователя, на исполнение операций над БД..
83. Рамил Шарапов (roma276) 02.07.09 12:14
а могут ли возникать такие ошибки, в случае если у меня на этой клиентской машине стоит HaspLicenseManager для 7 версии? так как мы находимся на стадии перехода от 7-ки к 8-ке, на этой машине стоит ключ на 5 пользователей, от 7, и ключ от 8 тож на 5 пользователей? (при этом до изменения имени сервера базы 1с8 нашим "любимым" админом с этой машины и 7 и 8ка норм работали )
aleks_cons; +1 Ответить
84. Влад Русанов (vladrus) 07.07.09 15:26
Почему то не работают регламентные задания, подскажите, плиз, как настроить ТЖ для того чтобы увидеть где ошибка. Клиент-серверный
85. Влад Русанов (vladrus) 07.07.09 15:38
(84) Может ли это быть потому что в свойствах сервера в соединениях запускается планировщик заданий без указания базы, и когда нажимаешь Properties - сообщение "Ошибка получения списка соединений: информационная база не зарегистрирована"?
86. gilv (Gilev.Vyacheslav) 07.07.09 15:45
(84) На диске ИТС найти обработку КонсольЗаданий
1. В свойствах ИБ на сервере приложений не должна стоять блокировка
2. Пользователь должен быть указан в константах приложений (зависит от конфигурации конечно)
3. Если планировщик без указания имени ИБ, это неверно отображающийся менеджер блокировок (его соединение с рабочим процессом)

посмотрите сначала обработку, там при ошибке запуска или исполения в последней колонке указана причина

отпишитесь, что получилось
87. Влад Русанов (vladrus) 07.07.09 16:11
текст об ошибке вот такой
00:51.9701-3,EXCPCNTX,1,SrcName=DBPOSTGRS,OSThread=2444,process=rphost,p:processName=money,t:clientID=3,t:applicationName=JobScheduler,t:computerName=DATABASE,t:connectID=1,Trans=0,dbpid=23723,Sql=lock table pg_class in application share mode,Result=PGRES_FATAL_ERROR,dbpid=23723,Sql=ROLLBACK,Result=PGRES_COMMAND_OK
88. Влад Русанов (vladrus) 07.07.09 16:13
(86) сори, что то полезло за пределы, вот нормальный текст
00:51.9701-3,EXCPCNTX,1,SrcName=DBPOSTGRS,OSThread=2444,process=rphost,p:
processName=money,t:clientID=3,t:applicationName=JobScheduler,t:
computerName=DATABASE,t:connectID=1,Trans=0,dbpid=23723,Sql=lock table pg_class in application share mode,Result=PGRES_FATAL_ERROR,dbpid=23723,Sql=ROLLBACK,
Result=PGRES_COMMAND_OK
89. gilv (Gilev.Vyacheslav) 07.07.09 16:26
(88) SrcName=DBPOSTGRS - источник PostgreSQL
Result=PGRES_FATAL_ERROR - ошибка
Sql=lock table pg_class in application share - проблемная операция

90. Влад Русанов (vladrus) 07.07.09 16:44
(89) Заработало после перезагрузки. Спасибо за оперативные ответы!
aleks_cons; +1 Ответить
92. tyf (hujovo) 09.11.09 16:08
Спасибо большое автору.
Однако присоединяюсь к (53) - выложите плz парсер логов.
aleks_cons; +1 Ответить
93. gilv (Gilev.Vyacheslav) 09.11.09 23:19
По многочисленным просьбам телезрителей вышел "ремейк" статьи http://www.gilev.ru/1c/81/techlog/index.htm ,
там же парсер
там же обучающее видео как находить ошибки в настройках доступа для ТЖ
94. isgr (isgr) 31.03.10 08:10
Приглашение на вебинар!
«Опыт настройки «1С:Центр Управления Производительностью» на проектах»
Дата проведения: 2 апреля 2010 г.
Время проведения: 11:00 – 12:00 (время московское)
Ссылка на онлайн регистрацию: https://www1.gotomeeting.com/register/489178121
Данный вебинар - БЕСПЛАТНЫЙ.

Просьба при регистрации указывать корпоративный почтовый ящик (кроме фирм-франчайзи). Регистрация с указанием e-mail адресов на бесплатных хостингах (mail.ru, yandex, и пр.) рассматриваться не будет.

Скачать инструкцию по участию в вебинарах можно по ссылке

http://1c-education.rarus.ru/free/webinars/instruction.doc

По возникающим вопросам по вебинарам Вы можете обращаться по почте webinar@rarus.ru
95. Олег Ковалев (kudzia) 26.04.10 21:52
98. Andrey Tey (Bitnikov) 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 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
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа