关闭功能顾问的那些诊断模式
Posted on May 28, 2010
相对于SAP而言,Oracle ERP的另一个显著特征或许就是大量的BUG和补丁吧,也或许正因为如此,Oracle ERP中的故障诊断越来越便捷,方式也越来越,有Server级的诊断(如Form Server),有DB级的诊断,也有功能级的诊断(输出程序步骤和关键业务数据)。对于Form/Report Server之类的故障诊断,通常有专门的技术顾问负责,多数情况下,功能顾问在Oracle Support的建议下也会进行各种形式的、针对各个模块和功能的诊断,有的记录在表里,有的形成日志文件,也有的直接显示在页面上。对于不影响用户操作的诊断,事后很容易就忘记了关闭,于是大量的五花八门的被遗弃的debug和trace偷偷占用着宝贵的系统资源。
通常,功能顾问们涉及的诊断功能可直接通过配置文件启用,主要有下面这些:
- FND:启用调试日志 启用日志。如果为否 (‘N’),则运行时不会进行记录和发出预警。
- OE:调试 选择“是”以激活 Oracle 订单分录管理系统表单用户退出和并发程序中的调试信息
- OE:调试跟踪 选择“是”以激活 oracle 订单分录管理系统并发程序的跟踪输出
- OSO:启用调试消息 用于显示/隐藏调试消息的 Sales Online 配置文件
- PA:调试模式 指明是否按调试模式运行项目会计管理系统报表和流程;在调试模式下运行时,线索会被打开,附加信息会打印至日志文件
- PO:将调试工作流设置为“打开” 启用/禁用 PO 工作流调试模式
- PO:启用对接收处理程序的 SQL 跟踪 启用数据库 SQL 跟踪,以便调试接收事务处理程序。
- RCV:调试模式 如果将此模式设置为“是”,则将在日志文件中打印消息。
- 初始化 SQL 语句 – 自定义 初始化会话的自定义 SQL 语句
其中“初始化 SQL 语句 – 自定义”比较特殊,可以自行设置event。它的格式如:
BEGIN fnd_ctl.fnd_sess_ctl('','','','TRUE','','ALTER SESSION SET TRACEFILE_IDENTIFIER=' || '''' ||'4269824.999' || '''' || ' EVENTS =' || '''' ||' 10046 TRACE NAME CONTEXT FOREVER, LEVEL 12 ' || '''');END;
其实就相当于每次开启会话时自动执行了类似如下的命令:
alter session set events='10046 trace name context forever, level 12' ;
用下面的SQL可以查询到各个级别的配置文件设置情况:
SELECT n.user_profile_option_name NAME,
to_char(v.last_update_date, 'yyyy-mm-dd') "Last Updated",
decode(v.level_id,
10001,
'Site',
10002,
'Application',
10003,
'Responsibility',
10004,
'User',
10005,
'Server',
10007,
'SERVRESP',
'UnDef') level_set,
decode(to_char(v.level_id),
'10001',
'',
'10002',
app.application_short_name,
'10003',
rsp.responsibility_key,
'10005',
svr.node_name,
'10006',
org.name,
'10004',
usr.user_name,
'10007',
'Serv/resp',
'UnDef') "CONTEXT",
v.profile_option_value VALUE
FROM fnd_profile_options p,
fnd_profile_option_values v,
fnd_profile_options_vl n,
fnd_user usr,
fnd_application app,
fnd_responsibility rsp,
fnd_nodes svr,
hr_operating_units org
WHERE p.profile_option_id = v.profile_option_id(+)
AND p.profile_option_name = n.profile_option_name
AND usr.user_id(+) = v.level_value
AND v.level_id = 10004 -- User
AND rsp.application_id(+) = v.level_value_application_id
AND rsp.responsibility_id(+) = v.level_value
AND app.application_id(+) = v.level_value
AND svr.node_id(+) = v.level_value
AND org.organization_id(+) = v.level_value
ORDER BY n.user_profile_option_name,
level_set;
对于懒人们,不妨做成自动预警,每周末检查一次就可以了。
Related Posts
» Filed Under E-Business Suite
Print This Post
Comments
Leave a Reply
