首页 > 其他分享 >ST12 Trace – Step by step instruction on how to use it for analysis

ST12 Trace – Step by step instruction on how to use it for analysis

时间:2023-10-12 19:00:40浏览次数:38  
标签:use Trace trace instruction 按钮 ST12 跟踪 SQL

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

 

 

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

 

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

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

 

跟踪类型(Type of Trace)    

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

 

运行ST12并收集跟踪数据

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

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

 

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

 

 

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

 

分析收集跟踪数据 

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

 

ABAP Trace:

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

 

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

 

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

 

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

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

 

由于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语句的效率

 

SQL Summary

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

 

Statistical Records

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

 

标签:use,Trace,trace,instruction,按钮,ST12,跟踪,SQL
From: https://www.cnblogs.com/weikui/p/17760312.html

相关文章

  • tracepro安装教程
    tracepro中文破解版是一款专业好用的光学仿真软件,该软件以ACISsolidmodelingkernel为基本的实体模型,该软件自发布以来被广泛地应用于照明系统、光学分析、辐射度分析及光度分析等领域,软件提供了丰富实用的功能模块,可以有效地建立括照明系统、灯具及固定照明、汽车照明系统(前头......
  • 【开源三方库】Fuse.js:强大、轻巧、零依赖的模糊搜索库
     开源项目 OpenHarmony是每个人的 OpenHarmony曹天恒公司:中国科学院软件研究所小组:知识体系工作组 1.简介Fuse.js是一款功能强大且轻量级的JavaScript模糊搜索库,支持OpenAtom OpenHarmony(以下简称“OpenHarmony”)操作系统,它具备模糊搜索和排序等功能。该库高性能......
  • 第十九篇 - Vue如何通过session记住User
    登录成功后前端存储user对象window.sessionStorage.setItem("currentuser",JSON.stringify(successResponse.data.data.user))前端script中使用user对象中的值JSON.parse(sessionStorage.getItem("currentuser")).user_name前端vue中使用user对象的值{{currentuser.usernam......
  • 如何解决小程序打开授权报错openSetting:fail can only be invoked by user TAP gestu
    要解决这个问题,你需要在页面上为openSetting接口添加一个点击事件。根据微信小程序的文档,openSetting接口只能通过用户点击行为(如tap事件)来触发。以下是一个简单的示例代码:<!--index.wxml--><view><buttonbindtap="openSetting">打开授权设置</button></view......
  • DPDK-22.11.2 [四] Virtio_user as Exception Path
    因为dpdk是把网卡操作全部拿到用户层,与原生系统驱动不再兼容,所以被dpdk接管的网卡从系统层面(ipa/ifconfig)无法看到,同样数据也不再经过系统内核。如果想把数据再发送到系统,就要用到virtiouser。这种把数据从dpdk再发送到内核的步骤,就叫做exceptionpath。有关virtiouser,又有一......
  • 【React】React.memo与useMemo的区别和联系
    概述React.memo和useMemo都是React进行性能优化的手段,它们允许我们缓存需要进行高性能计算的结果,以便下次渲染页面时,返回缓存的值而不必重新计算函数,从而确保我们的应用程序运行的更快,避免不必要的开销。React.memo详解为什么memo(memoization的简写)在React中这么重要呢?在......
  • 【React系列】React.memo() vs useMemo()
    React.memo()与useMemo()之间有什么主要区别?性能优化是一只web开发中的一个重要讨论点。对于react团队同样如此,为了实现加速组件的渲染速度,采用“备忘录”的方式。所以这个时候就React.memo()和useMemo钩子就为了解决这个问题产生了。本文将比较和对比React.memo和useMem......
  • React Hooks之useRef详解
    ReactHooks之useRef详解最新推荐文章于 2023-08-2621:32:11 发布RayShyy于2023-02-1810:23:20发布2717收藏5分类专栏:React文章标签:react.jsHookHooksuseRefref版权React专栏收录该内容4篇文章0订阅订阅专栏......
  • What causes "Invalid Address specified to RtlValidateHeap"?
    ForumVisualC++&C++ProgrammingVisualC++ProgrammingWhatcauses"InvalidAddressspecifiedtoRtlValidateHeap"?Ifthisisyourfirstvisit,besuretocheckoutthe FAQ byclickingthelinkabove.Youmayhaveto register or Login ......
  • 【Azure Developer】示例: 在中国区调用MSGraph SDK通过User principal name获取到Use
    问题描述示例调用MSGraphSDK通过Userprincipalname获取到User信息,如ObjectID。 参考资料选择MicrosoftGraph身份验证提供程序: https://learn.microsoft.com/zh-cn/graph/sdks/choose-authentication-providers?tabs=java#using-a-client-secret-2MicrosoftGraphSDKfor......