Имя: Пароль:
1C
 
Как собирать планы запросов с фильтром по длительности?
,
0 H A D G E H O G s
 
16.10.16
02:06
Дня доброго.
Собираю длительные запросы профайлером в базе SQL
Собираю только те запросы, duration которых больше 3000.
Но также, хочу собирать их планы (xml statistics profile)
У них нет duration, я их записываю все.
В принципе, выбирая уже записанные в базу тексты запросов, я могу найти их планы по rownumber, но проблема в том, что после 3 минут работы профайлера размер SQL базы, хранящей его лог достигает 3 гигов. А мне надо отработать пару суток (расчет себестоимости).
1 H A D G E H O G s
 
16.10.16
02:20
немного сумбурно выразился.
Лог профайлера записываю в sql базу, чтобы отобрать самые долгие запросы.
2 МихаилМ
 
16.10.16
10:26
3 МихаилМ
 
16.10.16
10:33
софт-поинт собирает в отдельный инстанс и отдельный диск. чтобы понимать дисковую нагрузку
4 Лефмихалыч
 
16.10.16
11:03
(0) может разделить задачи? Сначала собрать запросы овер 3000мс, а уже потом для топа получить планы?
Ну, ей богу, 80% того, что ты там на собираешь, не будет стоить твоего внимания...
5 МихаилМ
 
16.10.16
11:21
(4)
легко может оказаться , что 1с грешит множеством мелких запросов , тогда они не попадут в фильтр по длительности.

1с ника так любят делать. например так было в закрытии периода в бухгалтерии . 1,5М мелких запросов.
6 H A D G E H O G s
 
16.10.16
13:09
(4) Хотелось бы сразу.
7 H A D G E H O G s
 
16.10.16
13:09
(5) Нууу, тут я бессилен.
8 H A D G E H O G s
 
16.10.16
13:12
Ладно, специальной хитрой методики похоже нет и будем собирать планы потом.
9 H A D G E H O G s
 
16.10.16
13:41
Ну вот собрал несколько.
Во первых, в запросе может использоваться временная таблица, которую я уже не получу.
Во вторых, запросы с параметрами 1С выполняет через exec, предполагаемый план которой будет выглядеть из одного оператора EXECUTE PROC. Конечно, можно преобразовать его в нормальный tsql, но муторно. В связи с этим вопрос - можно как-то по тексту запроса получить его план в формате XML из кэша?
10 Fragster
 
гуру
16.10.16
14:46
(0) я собираю технологическим журналом
11 Fragster
 
гуру
16.10.16
14:47
(10)+ настроил и просматриваю с помощью http://devtool1c.ucoz.ru/, оно еще и имена метаданных в планы подставляет
12 МихаилМ
 
16.10.16
15:05
(9) вроде можно : dm_exec_cached_plans, dm_exec_query_plan, dm_exec_sql_text .  только под нагрузкой и без планы отличаются.
13 H A D G E H O G s
 
16.10.16
15:16
(10) ТЖ собирает ПЛАНЫ запросов, а не только запросы???
14 Лефмихалыч
 
16.10.16
15:33
(13) ТЖ собирает и планы тоже
15 rphosts
 
16.10.16
15:38
(14) ээээ, а есть пример файла настроек, для сбора планов запросов?
16 H A D G E H O G s
 
16.10.16
15:40
Планы можно отфильтровать по времени выполнения их запроса?
17 Лефмихалыч
 
16.10.16
16:49
(15) 3.14.1.7 Элемент plansql

Если элемент <plansql> присутствует, то будет включен сбор планов запросов, которые генерируют СУБД при выполнении запросов «1С:Предприятия». Сами планы запросов расположены в свойстве <planSQLText> событий, связанных с исполнением запросов конкретной СУБД (см. здесь).

СОВЕТ. Рекомендуется вместе со свойством <planSQLText> включать в состав регистрируемых свойств также и свойство <SQL>, содержащее запрос, план которого будет зарегистрирован.

<?xml version="1.0"?>
<config xmlns="http://v8.1c.ru/v8/tech-log"&gt;
  <log location="c:\log" history="24">
    <event>
      <eq property="name" value="dbmssql"/>
    </event>
    <property name="sql"/>
    <property name="plansqltext"/>
  </log>
  <plansql />
</config>
http://its.1c.ru/db/v8doc#content:26:1:issogl3_3.14.1.7элементplansql
18 Лефмихалыч
 
16.10.16
16:50
(16) дя хз. Но в результате сбора ТЖ у тебя все равно задача разобрать всю куйню в файлах дампа и вот эту свою сортирвку ты в этой задаче и можешь сделать.
19 Fragster
 
гуру
16.10.16
22:36
(16) я не вполне понял, но в ТЖ можно настроить сбор запросов, выполнявшихся более хххх десятитысячных секунды
20 Fragster
 
гуру
16.10.16
22:36
(19)+ вместе с их планами. и кто из нас эксперт?
21 Cyberhawk
 
16.10.16
22:48
(20) А ты почему не сдавал еще на эксперта?
22 H A D G E H O G s
 
16.10.16
23:08
(19) (20) А не могу все знать и помнить :-)

Да, ТЖ рулит, все собрал, все в пределах нормы и логики.
23 Fragster
 
гуру
16.10.16
23:13
(21) у меня вообще сертов нет, такие дела
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.