跟踪(Trace)并发请求
Posted on May 28, 2008
Oracle EBS中跟踪form执行非常简单,可以直接在菜单:帮助->诊断->跟踪 中启用跟踪功能。对于并发请求,稍见麻烦。
如果要对某个并发程序进行跟踪,则先进系统管理员职责,在并发程序定义界面找到该并发程序,勾选“启用跟踪”。在运行该请求的时候,会自动启用跟踪功能。如果需要跟踪绑定变量,要先执行bde_system_event_10046.sql (参考metalink:179848.1)。
用以下SQL找到相应的trc文件:
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 fnd_concurrent_requests req,
v$session ses,
v$process proc,
v$parameter dest,
v$parameter dbnm,
fnd_concurrent_programs_vl prog,
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;
一个请求产生的trace文件可能达到几十至数百兆,最后可别忘了关闭跟踪功能。
Related Posts
» Filed Under E-Business Suite
Print This Post
Comments
2 Responses to “跟踪(Trace)并发请求”
Leave a Reply

有用!
收!
学习了,这网站可真清爽,资料也很多