Имя: Пароль:
1C
 
Profiler. Как?
0 OldCondom
 
01.07.21
10:25
Хотелось бы что-то почитать/посмотреть, типовые "приемы" анализа 1С что ли.

Настроил трассировку, фильтры по базе, продолжительности запроса и т.д. Сижу, смотрю. Прилетает такое чудо(RPC:Completed):
reads 19055826; duration 96988.
Очень бы хотелось узнать, что это такое, кто запустил, и зачем в 1С такие избыточные данные?(19млн строк)?
Но из самого детального я вижу только SPID, который постоянно меняется судя по консоли кластера. То есть я не могу даже отловить, кто инициализировал такой запрос, не говоря уже каким именно способом пользователь это инициализировал.

Но скорее всего я просто не умею пользоваться. Собственно, повторяю вопрос: где можно ознакомиться с приемами отладки/поиска проблемных мест/анализа запросов?
1 Вафель
 
01.07.21
10:26
а тексты запросов настроил, а планы?
2 ДенисЧ
 
01.07.21
10:27
Так нужно сначала в ТЖ смотреть...
3 Aleksey
 
01.07.21
10:28
4 Вафель
 
01.07.21
10:29
(2) не обязательно
5 OldCondom
 
01.07.21
10:31
(1) конечно нет. Я и не знаю, что это. Тексты запросов - это фильтр по тексту? Так а что там ставить-то? Я же ловлю просто проблемные места, мне не известно за ранее, что будет тормозить.

(3) спасибо, уже читаю
6 rphosts
 
01.07.21
10:34
(0) без гарантий что это было 1С, в общем случае.
7 rphosts
 
01.07.21
10:36
(3) нынче рулят экстендент эвэнты типа как.
8 OldCondom
 
01.07.21
10:43
В (3) ничего нового. Отладка запроса, зная сам запрос.

Ладно, тогда возьмем такую ситуацию.
Допустим я на сутки поставил Perfomance monitor по ЦП, памяти и очереди дисков. Также поставил трассер на продолжительные запросы.

Спустя сутки открываю profiler, подгружаю данные perfomance monitor, вижу, что что, допустим, в 13:00 скакнул процессор, память, диск встал в очередь. Profiler показывает, что в эту же секунду выполнялся чудовищный запрос, продолжительностью 18 минут, 200 млн строк на выдаче.
И вот что с этим добром делать?
Получается я знаю, что в 13:00 выполнился запрос, который все убил. Но что это за запрос, какая обработка/документ/консоль выполнила это чудо? Кто это выполнил, под каким пользователем?
9 Вафель
 
01.07.21
10:50
(8) оптимизировать запрос.
но лучше по тж собирать длительные запросы
10 OldCondom
 
01.07.21
10:51
(9) так вопрос в том, какой запрос? Я вижу в profiler то, что выполнилось на стороне сервера sql. Каков был первоначальный запрос в 1С без понятия, и уж тем более не известно из какого места этот запрос вылетел. Или как-то можно перевести этот мрак?
11 rphosts
 
01.07.21
10:51
(8) Если тебя раньше юзера не убьют.... и да, берёшь текст запроса, смотришь запросы из ТЖ, сопоставляешь... думаешь.
PS не хочешь сопоставлять  - ЦУП тебе в зубы, что-б дым пошёл
12 rphosts
 
01.07.21
10:52
+ (11) обычно данных одного ТЖ достаточно
13 OldCondom
 
01.07.21
10:53
(11) То есть в ТЖ я увижу запрос на стороне sql и то, что было первоначально в 1С? Супер, спасибо.
14 OldCondom
 
01.07.21
10:53
Итого: в трассере ловлю проблемный запрос, ищу это в ТЖ и вижу запрос 1С/место/пользователя и т.д. Верно?
15 rphosts
 
01.07.21
10:55
(13) и контекст откуда был вызов
(14) долгие запросы можно отлавливать в самом ТЖ
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой