![]() |
|
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) долгие запросы можно отлавливать в самом ТЖ |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |