FavoriteLoading
1

ST12性能分析工具使用教程

[隐藏]

1, ST12介绍

ST12性能分析工具的使用分如下三个步骤:

  • 设置跟踪参数
  • 开始跟踪收集跟踪数据
  • 分析跟踪数据

跟踪参数分类:

  • 跟踪对象(Trace For)
  • 跟踪类型(Type of Trace)

跟踪对象

  • ST12可以捕获4种类型的数据 “User/Tasks”, “Work Process”, “Current Mode” 和 “For a Schedule”
  • “User/Tasks”可以跟踪指定用户以及tasktype的数据,task type包括Dialog,batch等,输入星号*表示跟踪所有类型的task

Image 15

  • 选中Workprocess可以跟踪服务器的性能数据,如果不指定服务器,则跟踪所有服务器。

2

  • Current Mode 可以用来跟踪TCode或者abap程序

3

  • Schedule可以跟踪后台JOB,通过指定Job名字,用户名,程序名,变式名

4

跟踪类型(Type of Trace)    

ST12初始化时,可以设置成跟踪ABAP 跟踪或性能跟踪。通过设定 Size&Duration参数为MAX来避免ST12超过最大跟踪数据或最长跟踪时间

5

2, 运行ST12并收集跟踪数据

          Tcode:PA20, 跟踪用户的infotype 0001的数据,以此为例详细说明ST12的使用方法。

首先,设定跟踪参数,选择‘User/Task',输入备注,用户名,设定task type为*,然后运行ST12

Image 16

然后,运行tcode:PA20,输入员工号码和info type 0001,点击overview 按钮,如下:

 7

在ST12界面上点击Eend Trace按钮,跳转到跟踪结果界面,点击运行按钮收集跟踪详细结果。如果需要保留跟踪结果,则不勾上红框内的单选框。

8

3, 分析收集跟踪数据 

跟踪结果数据收集完成之后,点击我们关心的评估按钮(ABAP trace,performance Trace,SQL summary,Stat. records),如下:

9

ABAP Trace:

这是ST12中最常用的一个分析选项。可以得到任何程序/Tcode的自上而下的运行流程和消耗时间。从下图中可以看到pa20运行的abap 语句层次顺序。所以可以定位问题发生的abap语句和位置。

1

上面的屏幕截图是Per Call View形式的,点击按钮‘Per ModUnit’转换到模块化显示模式,展开可以看到模块内的运行form或SQL语句

2

光标置于模块单位(Method/Performs)行时,点击“Top Down Call Tree”按钮(下图红框内按钮),能显示模块内abap语句的运行次序,0代表模块本身,1为模块内第一层次,2为第二层次直至第30层,字母用户低层次。

3

双击任何一行可以跳转到原代码,进而确定影响点。

ST12能捕捉到微小的程序运行流程的详细信息包括loop循环语句的效率,可以用于详细分析。

4

由于ABAP trace能完整地跟踪程序运行流程,ST12可以用于确定程序用到的用户增强或用户出口

Comparison of ST12 with ST05 trace

ST12

ST05

Traces only a specific user context or a transaction Traces every action of a user on a server
ST12 trace automatically turns off with a transaction ST05 trace has to be manually turned off
Stores the trace into database and is permanent Stores the trace into local files and overwritten regularly
Provides a Top-Down flow used to find performance hotspot, issues identified by which are usually solved by code changes. Provides a bottom-up flow which is suitable for identifying DB bound performance issues, which are usually solved by Performance Tuning.

Performance Trace

性能分析和ST05相关,下图展示了程序运行过程中的SQL语句的效率

5

SQL Summary

SQL summary提供了基于数据库表的详细信息,例如运行时间,SQL语句抽取的数据数量,运行时间,服务器信息等等。双击任意一行记录能跳转到数据库表涉及到程序列表界面。

6

Statistical Records

statistical records用于收集特定Tcode运行过程中时间相关信息。

7

以上。