Activar trace de un proceso en ejecución | ExpoDBA

Activar trace de un proceso en ejecución

Activar trace de un proceso en ejecución

Activar un trace a un proceso que se está ejecutando Necesito el Sid y el Serial, y con el paquete dbms_system activo el trace

Obtener el sid, serial# a partir del pid

select /*+rule*/ sid, serial# from v$session  
where paddr in  (select addr from v$process where spid = &pid);


Los 3 modos para activar y desactivar el trace (Hay que estar logueado con "/as sysdba"

/*MODO A*/
--Activo el trace para el proceso
exec dbms_system.set_ev(&SID,&SERIAL,10046,12,'');
--Desactivo el trace para el proceso
exec dbms_system.set_ev(&SID,&SERIAL,10046,0,'');

 

/*MODO B*/
--Activo el trace para el proceso
exec dbms_system.set_sql_trace_in_session(&SID,&SERIAL, TRUE);
--Desactivo el trace para el proceso
exec dbms_system.set_sql_trace_in_session(&SID,&SERIAL, FALSE);


Luego para poder leer el trace

#Ejecutar desde el SO
tkprof nombre_trace.trc nombre_salida.out sort=(exeela,fchela,prsela) explain=/