Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Como habilitar o rastreamento em aplicativos oracle r12

  • Às vezes, os usuários têm problemas de desempenho durante várias páginas no aplicativo Oracle Apps. Precisamos rastrear o problema para identificar o gargalo
  • Podemos executar as etapas abaixo para gerar o rastreamento de nível de banco de dados para o problema e descobrir o sql ou instrução culpado. Veja como habilitar o rastreamento em aplicativos oracle r12

Índice

Como obter o rastreamento da página de autoatendimento


(1) Definir perfil FND:Diagnósticos =Sim no nível de USUÁRIO.
(2) Faça login na Página inicial pessoal como esse usuário e selecione o link Diagnósticos na parte superior da página.
(3) Selecione Defina o nível de rastreamento e clique em Ir.
(4)Selecione o nível de rastreamento desejado e clique em Salvar.
(5)Anote o(s) número(s) de identificação de rastreamento.
(6)Realize a atividade que você deseja rastrear.
(7)Retorne à página 'Diagnóstico'.
(8)Selecione 'Definir nível de rastreamento' e clique em Ir.
(9)Selecione 'Desativar rastreamento' e clique em Ir.
(10)Anote o(s) número(s) de identificação de rastreamento, se diferentes.
(11)Vá para diagnostics_dest para seu banco de dados e colete os sufixos de arquivo de rastreamento bruto pelo id de rastreamento número(s) que você gravou.
(12)Sair dos aplicativos

Como habilitar o rastreamento para formulários em aplicativos Oracle r12


(1) Definir perfil FND:Diagnóstico =Sim no nível de USUÁRIO.
(2) faça login no Aplicativo
(3) Navegue até o formulário onde deseja rastrear
(4) Vire em Rastreamento usando a opção de menu:Home> Diagnostics> Trace> Trace with waits
(5) Um pop-up com o nome e o local do arquivo de rastreamento é exibido. Anote o nome do arquivo de rastreamento
(6) Execute a atividade que você deseja rastrear.
(7) Retornar à página inicial> Diagnósticos> Rastrear>
(8) Selecione 'Desativar rastreamento' e clique em Go.
(9) Vá para diagnostics_dest para seu banco de dados e colete os sufixos dos arquivos de rastreamento brutos pelos números de identificação de rastreamento que você gravou.
(10) Sair dos aplicativos

Como obter o rastreamento do Oracle Concurrent Program

  1. Navegue para Simultâneo> Programa> Tela de definição
  2. Pesquise o programa simultâneo que você deseja rastrear
  3. Marque a caixa Ativar rastreamento para ativar o rastreamento para o programa simultâneo
  4. Envie e execute o programa simultâneo
  5. Anote o request_id do seu job de programa simultâneo
  6. Volte para a tela Definir e desmarque a caixa Ativar rastreamento para este programa simultâneo
  7. Recupere o arquivo de rastreamento bruto usando request_id
column traceid format a8
column tracename format a80
column user_concurrent_program_name format a40
column execname format a15
column enable_trace format a12
set lines 80
set pages 22
set head off
SELECT 'Request id: '||request_id ,
'Trace id: '||oracle_Process_id,
'Trace Flag: '||req.enable_trace,
'Trace Name:
'||dest.value||'/'||lower(dbnm.value)||'ora'||oracle_process_id||'.trc',
'Prog. Name: '||prog.user_concurrent_program_name,
'File Name: '||execname.execution_file_name|| execname.subroutine_name ,
'Status : '||decode(phase_code,'R','Running')
||'-'||decode(status_code,'R','Normal'),
'SID Serial: '||ses.sid||','|| ses.serial#,
'Module : '||ses.module
from apps.fnd_concurrent_requests req, v$session ses, v$process proc,
v$parameter dest, v$parameter dbnm, apps.fnd_concurrent_programs_vl prog,
apps.fnd_executables execname
where req.request_id = &request
and req.oracle_process_id=proc.spid(+)
and proc.addr = ses.paddr(+)
and dest.name='user_dump_dest'
and dbnm.name='db_name'
and req.concurrent_program_id = prog.concurrent_program_id
and req.program_application_id = prog.application_id
and prog.application_id = execname.application_id
and prog.executable_id=execname.executable_id;

como habilitar o rastreamento para uma solicitação simultânea em execução


Execute a consulta abaixo para encontrar o SPID e o SID da solicitação simultânea
col addr format a11
col program format a20 trunc
col logon_time format a18
col osuser format a8 heading unixUsr
col p_user format a9 heading unixUsr
col terminal format a7 heading unixtrm
col command format 99 heading Cd
col machine format a7
col action format a10
col module format a10
col requestor format a20
col cmgr_job format a38 trunc heading 'CMgr_job'
set pagesize 24
Prompt Enter the Concurrent Request ID number:
select s.inst_id, fcr.request_id, fv.requestor, fv.Program cmgr_job,
p.PID,
p.SERIAL#,
p.USERNAME p_user,
p.SPID,
to_char(s.logon_time,'DD-MON-YY HH24:MI:SS') Logon_Time,
s.program,
s.command,
s.sid,
s.serial#,
s.username,
s.process,
s.machine,
s.action,
s.module
from apps.fnd_concurrent_requests fcr,
apps.FND_CONC_REQ_SUMMARY_V fv,
gv$session s,
gv$process p
where fcr.request_id = &request_id
and p.SPID = fcr.oracle_process_id
and s.process = fcr.OS_PROCESS_ID
and s.inst_id = p.inst_id
and p.addr = s.paddr
and fv.request_id = fcr.request_id
;

Agora você pode habilitar o rastreamento no SID usando o programa oradebug ou DBMS como
SQL> oradebug setospid 1111
SQL> oradebug event 10046 trace name context forever, level 12
LEVEL 12 – Both Binds and Waits
LEVEL 8 – Only WAITS
LEVEL 4 – Only BIND Variables
SQL>oradebug tracefile_name
prod _ora_1111.trc
Wait for 15-20 minutes
SQL> oradebug event 10046 trace name context off

Usando o programa DBMS
Full level with wait event And bind trace

execute dbms_system.set_ev(‘sid’,’serial’,10046,12,’’);

To put trace off

execute dbms_system.set_ev(‘sid’,’serial’,10046,0,’’);

Como analisar os arquivos de rastreamento


Uma vez que os arquivos de rastreamento são encontrados, podemos usar o utilitário tkprof para encontrar a instrução culpada do arquivo de rastreamento
tkprof XPROD_ora_19005_a.trc XPROD_ora_19005_a.txt sys=no explain=apps/apps sort=prsela,exeela,fchela

Artigos relacionados
SQL trace :SQL trace ou evento 10046 está sendo usado para rastrear a atividade da sessão no Oracle. A saída gerada pelo rastreamento SQL é formatada usando trcsess, utilitário tkprof
Autotrace in oracle :Autotrace in oracle, O que é autotrace, como configurá-lo, Entendendo a saída do Autotrace, Opções de Autotrace, estatísticas exibidas pelo autotrace
sql tuning advisor:Como executar o sql tuning advisor para sql_id no cache do Cursor, como é criada e executada a tarefa de sql tuning para obter a recomendação
Hanganalyze:confira como fazer dump de estado do sistema no oracle, hanganalyze no oracle , o que é v$wait_chains e como ele pode ajudar a encontrar o bloqueio
Como gerar rastreamento de FRD em Oracle Apps:Como gerar rastreamento de diagnóstico de tempo de execução de formulários em aplicativos oracle 11i/R12
FAQ:Common Tracing Techniques no Oracle E-Business Applications 11i e R12 (Doc ID 296559.1)