trace的目的

trace主要是用于程序调优,优化,程序bug调试,程序运行系统情况跟踪

trace步骤

1.并发定义中,勾上“启用跟踪”

2.提交一个请求,得到请求编号

注意:用完之后,将启用追踪去掉,以免生成大量无用的 log 文件,占用服务器资源

3.获取并发程序日志目录:SELECT * FROM v$parameter t WHERE t.NAME = 'user_dump_dest'

4.用数据库用户登陆linux切换到上面查找出的目录:tkprof *XX.trc $HOME/XX.fchela.txt sort=fchela将trc转化为txt。sort=fchela。按执行时间倒序排列

5.用数据库用户登陆服务器:对应目录,找到文件

当然也可以用下面的 sql 语句查找 trace 文件

select fcr.request_id "Request ID",
p1.value "Trace Directory",
'*' || fcr.oracle_process_id || '*.trc' "Trace File format",
fcp.user_concurrent_program_name "Program"
from fnd_concurrent_requests fcr,
v$parameter p1,
fnd_concurrent_programs_tl fcp
where p1.name = 'user_dump_dest'
and fcp.language = 'US'
and fcr.concurrent_program_id = fcp.concurrent_program_id
and fcr.program_application_id = fcp.application_id
and fcr.request_id = &request_id

这个更详细:

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;

FORM的trace

在任意想要 trace 的界面上,点菜单栏上的帮助->诊断->跟踪>选择一个跟踪的选择即可。

点完之后,界面提示 trace 文件存放位置及文件名

Report trace

需要在 report 开发时修改下面内容

1.Add "SRW.USER_EXIT('FND SRWINIT');" in before report trigger

2. Add "SRW.USER_EXIT('FND SRWEXIT');" in after report trigger

3. Add a parameter P_CONC_REQUEST_ID in User Parameters

这样就可以拥有启用跟踪的功能

EBS开发技术之trace的更多相关文章

  1. EBS开发技术之Patch安装

     Contents Document Control........................................................................ ...

  2. 转:ORACLEERP开发基础之EBS开发基础

    转自:http://blog.itpub.net/8781091/viewspace-1012244/ [内容导航] 第1页:开发工具安装 第2页:增加数据块 第3页:注册表单FORM 第4页:注册请 ...

  3. 通俗易懂,什么是.NET?什么是.NET Framework?什么是.NET Core? .Net Web开发技术栈

    通俗易懂,什么是.NET?什么是.NET Framework?什么是.NET Core?   什么是.NET?什么是.NET Framework?本文将从上往下,循序渐进的介绍一系列相关.NET的概念 ...

  4. .NET Web开发技术简单整理

    在最初学习一些编程语言.一些编程技术的时候,做的更多的是如何使用该技术,如何更好的使用该技术解决问题,而没有去关注它的相关性.关注它的理论支持,这种学习技术的方式是短平快.其实工作中有时候也是这样,公 ...

  5. Web前端开发大系概览 (前端开发技术栈)

    前言 互联网建立50多年了,网站开发技术日新月异,但web前端始终离不开浏览器,最终还是HTML+JavaScript+CSS这3个核心,围绕这3个核心而开发出来大量技术框架/解决方案. 我从2000 ...

  6. VC++/MFC(VC6)开发技术精品学习资料下载汇总

    工欲善其事,必先利其器,VC开发MFC Windows程序,Visual C++或Visual Studio是必须的,恩,这里都给你总结好了,拿去吧:VC/MFC开发必备Visual C++.Visu ...

  7. Web开发技术发展历史

    Web开发技术发展历史   来自:天码营 原文:http://www.tianmaying.com/tutorial/web-history Web的诞生 提到Web,不得不提一个词就是"互 ...

  8. 大规模web 服务开发技术

    <大规模web 服务开发技术> 是一本讲解大型Web 应用的入门级书籍,能够让我们接触到大应用的知识点. 目录如下: 第1章  大规模Web服务的开发定位——掌握整体第2章  大规模数据处 ...

  9. 本人讲课时录制的Android应用开发技术教学视频

    网盘地址:http://yun.baidu.com/pcloud/album/info?query_uk=1963923831&album_id=3523786484935252365 本人讲 ...

随机推荐

  1. [LeetCode] Cracking the Safe 破解密码

    There is a box protected by a password. The password is n digits, where each letter can be one of th ...

  2. [LeetCode] Boundary of Binary Tree 二叉树的边界

    Given a binary tree, return the values of its boundary in anti-clockwise direction starting from roo ...

  3. django 表单过滤与查询

    7.1 表的查询 查询 Person.objects.all() Person.objects.all()[:10] 切片操作,获取10个人,不支持负索引,切片可以节约内存 Person.object ...

  4. 实验吧_程序逻辑问题(代码审计)&上传绕过

    一开始我先随便输入了几个账号名字进行测试,发现当输入的账号名为admin时会发生报错 经过测试果然是一个注入点 当拿到admin密码后发现根本没用,没办法另寻他路 审查元素时发现提示index.txt ...

  5. poj 1046 ——Color Me Less

    提交地址:http://poj.org/problem?id=1046 Color Me Less Time Limit: 1000MS   Memory Limit: 10000K Total Su ...

  6. codefroces 911G Mass Change Queries

    题意翻译 给出一个数列,有q个操作,每种操作是把区间[l,r]中等于x的数改成y.输出q步操作完的数列. 输入输出格式 输入格式: The first line contains one intege ...

  7. ●UVA 10652 Board Wrapping

    题链: https://vjudge.net/problem/UVA-10652 题解: 计算几何,Andrew求凸包, 裸题...(数组开小了,还整了半天...) 代码: #include<c ...

  8. BZOJ4574 [Zjoi2016]线段树

    比较厉害的dp. 网上题解都是利用了随机的条件,用了一个$O(n^4)$的dp,这里简单说一下. 用f(x,i,l,r)表示经过前i轮操作,[l,r]的所有数<=x,且l-1和r+1都>x ...

  9. Ubuntu 16.04 Vim安装及配置【转】

    转自:http://www.cnblogs.com/ace-wu/p/6273031.html 安装VIM 默认已经安装了VIM-tiny acewu@acewu-computer:~$ locate ...

  10. python3 字符串str 教程

    字符串可以用单引号或双引号来创建. Python 不支持单字符类型,单字符也在Python也是作为一个字符串使用. 例: var1 = 'Hello World!' var2 = "Pyth ...