Трассировка
сессий в Oracle.
Процедурой dbms_system.set_ev:
------------------
sys.dbms_system.set_ev (si
binary_integer,
se
binary_integer,
ev
binary_integer,
le
binary_integer,
nm varchar2);
SI
- идентификатор сессии sid из представления v$session;
SE
- идентификатор сессии serial# из представления v$session;
EV
- номер (event) события (10046 для включения трассировки);
LE
- уровень трассировки;
Level:
0 - отключить трэйс;
1 - обычный трэйс;
4 - трэйс с переменными (bind);
8 - с ожиданиями (waits)
12 - с переменными и waits
0 - отключить трэйс;
1 - обычный трэйс;
4 - трэйс с переменными (bind);
8 - с ожиданиями (waits)
12 - с переменными и waits
NM
- имя события;
------------------
Задача: Получить трейс выполнения запроса.
Шаги:
Сессия1 (S1). Открываем SQLPLUS или Developer, где будем выполнять запрос.
sqlplus tester/tester@usbs
Сессия2
(S2).
Открываем SQLPLUS или Developer, где будем включать трассировку.
В S1 находим S2 :
------------------
select s.SID, s.SERIAL#, s.USERNAME from v$session s where s.USERNAME = 'TESTER';
------------------
*SPID необходим для поиска получившегося трейс-файла
4. Включаем трассировку, указываем в качестве
SID и SERIAL# ранее найденные значения:
------------------
begin
sys.dbms_system.set_ev(40,
28445, 10046, 12,
'');
end;
------------------
5. Выполняем запрос\действия в S2.
6. Выключаем трассировку:
--------------
begin
sys.dbms_system.set_ev(40,
28445, 10046, 0,
'');
end;
--------------
7. Забрать файл трассировки можно в каталоге «user_dump_dest»:
--------------
select value
"Trace path"
from V$PARAMETER p
where p.name =
'user_dump_dest';
--------------
8. По умолчанию имя файла трассировки формируется так:
INSTANCE_ora_PID.trc
где
INSTANCE имя
экземпляра (instance) Oracle;
PID ID процесса
операционной системы (V$PROCESS.SPID);
Например - usbs_ora_6014.trс
В самом трейс-файле указано какой сессии он принадлежит:
--------------
*** 2014-09-15
08:34:43.756
*** SESSION ID:(40.28445) 2014-09-15
08:34:43.756
*** CLIENT ID:()
2014-09-15 08:34:43.756
*** SERVICE NAME:(usbs)
2014-09-15 08:34:43.756
*** MODULE NAME:(Developer) 2014-09-15
08:34:43.756
*** ACTION NAME:() 2014-09-15 08:34:43.756
--------------
Комментариев нет:
Отправить комментарий