理解PeopleSoft Trace文件对于解决性能问题是绝对有必要的。你可能面临一个问题,用户抱怨性能较慢,而OEM并没有补货SQL,你有2种方法选择:使用PeopleSoft trace检查或启用数据库的跟踪来查找SQL。

你应该优先选择PeopleSoft的Trace。此外你需要了解Trace文件中的所有内容才不会感到困惑。你可以使用TraceMagic工具来分析Trace文件。

下面是如何来读取Trace 文件来识别性能瓶颈的SQL,然后再做进一步打算:

这个trace文件是8.54的

PSAPPSRV.8972 (706) 1-19753 10.45.11 0.000000 Cur#1.8972.ELM91DEV RC=0 Dur=0.000000 COM Stmt=SELECT FILL.LM_GRADE_VAL_ID,FILL.LM_GRADE_LABEL FROM PS_LM_GRD_SCH_VW FILL

下面来理解下这行日志,我们关注的部分是:

1-19753 10.45.11 0.000000 Cur#1.8972.ELM91DEV RC=0 Dur=0.000313 COM Stmt=SELECT FILL.LM_GRADE_VAL_ID,FILL.LM_GRADE_LABEL FROM PS_LM_GRD_SCH_VW FILL

第一列:1-19753 这是进程的顺序行计数器,下一行将有递增的数字。

第二列:10.45.11 这是记录跟踪行的时间戳,这个时间戳来自于用户的机器,并不是来自于数据库的时间戳。

第三列:0.000000 这是自上一条日志写进来的时间这意味1-19752之后用了0.000000秒 写了1-19753。

第四列:Cur#1 这是语句的光标号,如果您打开第二个游标,将会有一个大于1的光标号。例如:

PSAPPSRV.20822 (56) 1-54263 11.42.34 0.000195 Cur#1.20822.notSamTran RC=0 Dur=0.000002 Open Cursor Handle=0000000000AF0E10
PSAPPSRV.20822 (56) 1-54264 11.42.34 0.000009 Cur#2.20822.notSamTran RC=0 Dur=0.000002 Open Cursor Handle=0000000000AF0E10

第五列:ELM91DEV 这是API调用正在执行的PeopleSoft 实例名。

第六列:RC=0 这是API调用返回的代码。

第七列:Dur=0.000313 这个返回的时间是根据调用的不用或执行sql语句的不同返回的时间。

第八列:COM Stmt=SELECT FILL.LM_GRADE_VAL_ID,FILL.LM_GRADE_LABEL FROM PS_LM_GRD_SCH_VW FILL 这是数据库API调用。

理解trace timer 对于解决性能问题是非常有必要的。有2个主要的timers需要理解:

Dur=0.000313 这表示与SQL语句相关的API调用时间,换句话说这可能是准备或执行的时间,这是你在解决性能问题时需要考虑的时间参数,很多时间这个参数的值和CPU的值是一样的。

第二列:0.000000 前文已经说明,这是上一条跟踪被写入的时间,所以这个时间可能是下面几种:

用户在思考的时间--如果此处的值非常大,那么这一定是用户思考的时间。如果之前的行是断开连接,提交或回滚,也说说明是用户思考的时间。这个值很大的话,不用担心。

PeopleTools处理时间--这将是一个导致不会写日志的活动。这可能是在等待远程调用,或者是页面在处理,由于这些原因,这个时间可能很大,需要考虑。

SQL-可能是SQL执行的时间。

我的公众号:

[性能调优]如何通过读PeopleSoft Trace文件来调优的更多相关文章

  1. 使用 10046 查看执行计划并读懂 trace 文件

    查看 sql 执行计划的方法有许多种, 10046 事件就是其中的一种. 与其他查看 sql 执行计划不同, 当我们遇到比较复杂的 sql 语句, 我们可以通过 10046 跟踪 sql 得到执行计划 ...

  2. [性能调优]PeopleSoft Trace 分析工具 - TraceMagic

    PeopleSoft Trace 文件包含大量的信息,在前面文章讲解过如何查看trace日志文件,这边文章介绍一个工具可以很好的分析trace日志文件. TraceMagic 是由oracle开发的一 ...

  3. 直通BAT必考题系列:JVM性能调优的6大步骤,及关键调优参数详解

    JVM内存调优 对JVM内存的系统级的调优主要的目的是减少GC的频率和Full GC的次数. 1.Full GC 会对整个堆进行整理,包括Young.Tenured和Perm.Full GC因为需要对 ...

  4. Perf -- Linux下的系统性能调优工具,第 1 部分 应用程序调优的使用和示例 Tracepoint 是散落在内核源代码中的一些 hook,一旦使能,它们便可以在特定的代码被运行到时被触发,这一特性可以被各种 trace/debug 工具所使用。Perf 就是该特性的用户之一。

    Perf -- Linux下的系统性能调优工具,第 1 部分 应用程序调优的使用和示例 https://www.ibm.com/developerworks/cn/linux/l-cn-perf1/i ...

  5. Oracle性能分析1:开启SQL跟踪和获取trace文件

    当Oracle查询出现效率问题时,我们往往须要了解问题所在,这样才干针对问题给出解决方式.Oracle提供了SQL运行的trace信息,当中包括了SQL语句的文本信息.一些运行统计,处理过程中的等待, ...

  6. iOS instruments trace文件解析方案

    前言 已很少写文章,不过这次感觉有必要写一下.因为: 1. 这个方案通过debug逆向得来,很有参考意义. 2. iOS这方面资料非常少,做这块时,无论国内外,翻遍了google,baidu都没太多合 ...

  7. Oracle 10046 trace文件分析

    生成10046 trace文件: SQL> create table t10046 as select * from dba_objects; Table created. SQL> se ...

  8. trace文件解读

    *********************************************************************示例:全表扫描的10046文件解读************** ...

  9. Oracle Trace文件生成及查看

    2011-11-03 16:45:01 聪明的笨蛋 阅读数 39596更多 分类专栏: 6) Database   版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出 ...

随机推荐

  1. Runtime 全方位装逼指南

    Runtime是什么?见名知意,其概念无非就是“因为 Objective-C 是一门动态语言,所以它需要一个运行时系统……这就是 Runtime 系统”云云.对博主这种菜鸟而言,Runtime 在实际 ...

  2. Git使用、Git配置、Git提交代码、Git上传

    非教程,只是自己的一个简单笔记.建议没有入门的朋友,直接看git的官方help文档: https://help.github.com/articles/set-up-git 1.注册一个git账号,超 ...

  3. oracle跨平台数据迁移 expdp/impdp 字符集问题 导致ORA-02374 ORA-12899 ORA-02372

    环境描述: 源数据库环境:     操作系统:Windows SERVER 2008R2     数据库版本:单实例 ORACLE 11.2.0.1 目标端数据库环境:     操作系统:redhat ...

  4. Linux在终端和控制台下复制粘贴命令快捷键

    1.在终端下: (1)复制命令:Ctrl + Shift + C 组合键. (2)粘贴命令:Ctrl + Shift + V 组合键. 2.在控制台下:(即vi编辑过程中) (1)复制命令:Ctrl ...

  5. java重点知识

    一.java基本知识点 java是由SUN公司在1995年推出的,在2009年SUN公司又被甲骨文公司收购,所以甲骨文公司获得java版权.其底层是由C语言写的,java分为三个体系: JavaSE, ...

  6. ActiveMQ配置高可用性的方式

    当一个应用被部署于生产环境,灾备计划是非常重要的,以便从网络故障,硬件故障,软件故障或者电源故障中恢复.通过合理的配置ActiveMQ,可以解决上诉问题.最典型的配置方法是运行多个Broker,一旦某 ...

  7. mybatis 关联映射

    一对一 创建数据表 CREATE TABLE `tb_card` ( `id` int NOT NULL AUTO_INCREMENT , `code` varchar() NULL , PRIMAR ...

  8. 一口一口吃掉Volley(三)

    欢迎访问我的个人博客转发请注明出处:http://www.wensibo.top/2017/02/17/一口一口吃掉Volley(三)/ 学习了一口一口吃掉Volley(二)之后,你应该已经学会了如何 ...

  9. python get请求

    #!/usr/bin/python #-*- coding:UTF-8 -*-#coding=utf-8 import requests import time import hashlib impo ...

  10. TCP连接的TIME_WAIT和CLOSE_WAIT 状态解说

    相信很多运维工程师遇到过这样一个情形: 用户反馈网站访问巨慢, 网络延迟等问题, 然后就迫切地登录服务器,终端输入命令"netstat -anp | grep TIME_WAIT | wc ...