ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Base on SID find the trace file

Base on SID find the trace file

原创 Linux操作系统 作者:flyerchen2000 时间:2010-11-02 15:52:58 0 删除 编辑
今日系统要升级,需要对所有的应用程序,进行TRACE 。
在应用系统里面有个里面有个程序CONTROL table :proc_control , 记录每个程序的SID,SERIAL#,可以方便的多特定的程序进行TRACE , 这个在应用设计的过程中
可以学习借鉴的地方。
但是很多程序同时产生TRACE 文件, 对管理员来说不是很好对应程序和TRACE 文件, 于是通过强大的GOOGLE 发现了如下的解决方法。
在此记录一下, 以备后用。

select a.sid, a.proc_name,b.trace_file_name
from  (select trim(both ',' from (substr(sys_proc_id,1,3))) sid ,proc_name from proc_control) a,
(SELECT s.sid,
s.server,
lower(
CASE
WHEN s.server IN ('DEDICATED','SHARED') THEN
i.instance_name || '_' ||
nvl(pp.server_name, nvl(ss.name, 'ora')) || '_' ||
p.spid || '.trc'
ELSE NULL
END
) AS trace_file_name
FROM v$instance i,
v$session s,
v$process p,
v$px_process pp,
v$shared_server ss
WHERE s.paddr = p.addr
AND s.sid = pp.sid (+)
AND s.paddr = ss.paddr(+)
AND s.type = 'USER'
ORDER BY s.sid) b
where a.sid=b.sid ;

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/3637/viewspace-677235/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 笑话一则
请登录后发表评论 登录
全部评论

注册时间:2009-08-25

  • 博文量
    43
  • 访问量
    84412