TRCANLZR.sql - Trace Analyzer.
Средство для анализа trace файлов полученных
в результате команды ALTER SESSION set events '10046 trace name context
forever, level <N>' (см. подробнее здесь)
Для меня важно, что он
отличается от столь любимого tkptof:
- Показывает Total User Elapsed Time Accounted Elapsed and
CPU Times (тоже что и в tkprof); WAIT Times (чего нет в
tkprof или не было );
- Показывает первые 5 блоков данных по
временам ожидания, связанных с ними;
- Показывает bind переменные;
- Декларируется, что более аккуратно
суммируем время, отличая время
потраченное пользовательским запросом,
от времени внутренних рекурсивных
запросов;
- Сохраняет результаты своей работы в
собственном репозитории.
Читать документацию к
нему. Скачать
с металинка.
Установка Развернуть архив на сервере.
Выдать пользователю (smap_dba), который будет
анализировать свои запросы гранты: SQL> conn sys/manager
Connected.
SQL> @TRCAGRNT smap_dba Установить репозиторий SQL> conn
smap_dba/smap_rulez SQL>@TRCACREA No errors.
TRCA$ Staging Repository and Package have been created Теперь
получим dump файл. Наш запрос, который мы
будем исследовать такой: select distinct m.id
from body_owner l1,
rfc822_body b,
rfc822_body_header mh,
rfc822_body_param mhp,
message m , message_label l
where mhp.header = mh.id
and mh.body = b.id
and l1.body = b.id
and l1.message = m.id
and (mhp.name = 'FILENAME' or mhp.name = 'NAME' )
and mhp.value like '%' || 'doc' || '%'
and l.message = m.id and l.timestamp > sysdate - 100
/ sqlplus smap_dba/map_rulez SQL> ALTER SESSION set events '10046 trace name context
forever, level 12'
SQL> @myquery SQL> @TRCANLZR UDUMP ora_8853_dvp.trc На
экран выводиться отчет но удобнее его найти
в текущей директории, он называется TRCANLZR_ora_8853_dvp.LOG,
т.е. к имени вашего трасе файла добавляется
TRCANLZR и меняется расширение. Видно что по
сравнению с tkprof добавлены времена ожиданий
(waits), информации о кол-во прочитанных блоков,
дата последнего анализа таблиц и индексов,
описываются сами индексы. В общем, полезно. Мое
резюме - для разработчика, изучающего
тонкости поведения одного своего запроса -
более чем удобно. Когда запросов много -
удобнее сначала пройтись по ним tkprof,
выяснить подозрительные, потом по ним уже
проходиться trcanlzr.
|