全部产品
阿里云办公

使用线程剖析诊断代码层面的问题

更新时间:2018-12-03 14:00:10

ARMS TProf 线程剖析是代码级的诊断工具,能够自动捕获慢调用的堆栈快照,真实还原代码执行的第一现场。

使用场景

其典型使用场景有:

  • 当促销活动流量峰值出现慢调用时,ARMS TProf 可为您快速定位问题代码。
  • 当系统出现大量慢调用时,ARMS TProf 可为您自动保存第一现场。
  • 当业务太复杂,偶发性慢调用无法复现时,ARMS TProf 可为您还原代码真实执行轨迹。

使用方法

设置线程剖析参数

  1. 登录 ARMS 控制台,在左侧导航栏中选择应用监控 > 应用列表

  2. 应用监控列表页面,单击目标应用的名称。

  3. 在左侧导航栏中单击应用设置,并在页面右侧单击自定义配置标签页。

  4. 线程剖析设置区域,可以打开或关闭线程剖析总控开关,并设置慢调用触发阈值。

    注意:服务调用耗时超过该阈值(默认值为 1000 毫秒)时才会启动监听,并一直持续到该次调用结束或超过 15 秒。

    提示:建议将此阈值设为调用耗时的第 99 百分位数。假设有 100 次调用,则按耗时从小到大排序,排在第 99 位的耗时就是第 99 百分位数。

    TProf Setting

通过接口快照查看线程剖析详情

  1. 登录 ARMS 控制台,在左侧导航栏中选择应用监控 > 应用列表

  2. 应用监控列表页面,单击目标应用的名称。

  3. 在左侧导航栏中单击接口调用,并在页面右侧单击接口快照标签页。

  4. 接口快照标签页上单击一个 TraceId 链接。调用链路标签页在新窗口打开。

  5. 线程剖析栏中单击放大镜图标。线程剖析对话框打开。

    TProf

    注意:

    • 实际耗时是服务调用的实际执行时间,不受线程剖析影响。
    • 监听耗时是能够被 TProf 监听到的耗时。通常情况下,监听耗时 ≈ 实际耗时 - 慢调用触发阈值。

通过多维查询查看线程剖析详情

  1. 登录 ARMS 控制台,在左侧导航栏中选择应用监控 > 多维查询

  2. 调用链路查询标签页的参数名下拉框中选择仅含线程剖析快照,并单击查询

    image

  3. 在搜索结果中单击一个 TraceId 链接。调用链路标签页在新窗口打开。

  4. 线程剖析栏中单击放大镜图标。线程剖析对话框打开。

常见问题

为什么有的慢调用没有被监听?

答:如果短时间内出现大量慢调用,为了优先保证业务系统稳定性,ARMS 应用监控仅会使用有限监听资源,选择性监听部分慢调用。