设为首页 加入收藏

TOP

怎样收集EBS各个模块的Log,SQLtrace,以及FRDlog
2014-11-24 01:03:03 来源: 作者: 【 】 浏览:7
Tags:怎样 收集 EBS 各个 模块 Log SQLtrace 以及 FRDlog

我平时接触到的EBS 模块主要是下面几个: PO, INV, OM. 因此也经常需要收集相关的log 信息. 如果界面上报错了, 可以很容易从log 里面看到是哪里的代码执行报错.

这篇博客总结了收集上述几个log 的方法, 和sql trace 以及frd log.

1. OM log

这个主要记录OM 模块的日志. OM 模块的代码文件以OE 开头, 文件里面有记录日志的语句: oe_debug_pub.add(). 写在这个语句的内容会被写到日志中.

设置profile

OM: Debug Level = 5

OM: Debug Log Directory = /usr/tmp

log 目录默认的是 /dbfiles/applcsf/log, 但是这个目录不存在, 而且无法创建... 我们只好转到/usr/tmp 目录下了. 其实只要是 select value from v$parameter where name = 'utl_file_dir' 得到的目录都可以.

\

然后打开Sales Order form, 选择 menu -> Tools -> debug

\

会弹出一个窗口:< http://www.2cto.com/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+PGltZyBzcmM9"https://www.cppentry.com/upload_files/article/57/1_ucxbd__.jpg" alt="\">

然后就可以在/usr/tmp 目录下找到log 了.

2. INV log

设置profile

\

3. RCV log -- 在 patch 9184617:R12.PO.A 之后, RCV log 是打印在INV log 里面的. 因此R12 的只要设置INV 和RCV 的profile, 就可以在INV log 里面拿到RCV log 了.

\

4. SQL trace

可以在form 界面上设置, 但是这只能收集到form 界面上的SQL, 后续调用的concurrent 使用的SQL 是收集不到的.

\

要收集所有的sql trace, 设置下面的 profile

"Initialization SQL Statement - Custom" = "Begin fnd_ctl.fnd_sess_ctl("','','TRUE','TRUE','LOG','ALTER SESSION SET TRACEFILE_IDENTIFIER='||''''||'file_name'||''''||' EVENTS='||''''||'10046 TRACE NAME CONTEXT FOREVER, LEVEL 12'||'''');End;"

SQL trace 的文件在 SELECT value FROM v$parameter WHERE name ='user_dump_dest' 这个目录下;

5. FRD log

FRD log 可以记录form 界面上所执行的trigger. 收集的方法是设置profile:

"ICX: Forms Launcher" = "http://hostname.domain:port/forms/frmservlet record=collect"

上面hostname, domain, port 要根据自己的instance 修改. 像我的: http://bej301441.cn.oracle.com:8001/forms/frmservlet record=collect

保存之后logout 再login, 这时会弹出一个窗口提示FRD log 已经打开.

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇shell脚本运行日志通用模块 下一篇一个基于MySQL的Key-List存储方案

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: