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

使用场景

其典型使用场景有:

  • 当促销活动流量峰值出现慢调用时,ARMS TProf 可为您快速定位问题代码。

  • 当系统出现大量慢调用时,ARMS TProf 可为您自动保存第一现场。

  • 当业务太复杂,偶发性慢调用无法复现时,ARMS TProf 可为您还原代码真实执行轨迹。

使用方法

设置线程剖析参数

  1. 登录 ARMS 控制台,并在页面左上角选择所需地域。
  2. 在控制台左侧导航栏中选择应用监控 > 应用列表

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

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

  5. 线程剖析设置区域,可以打开或关闭线程剖析总控开关,并设置慢调用触发阈值。
    说明
    • 服务调用耗时超过该阈值(默认值为 1000 毫秒)时才会启动监听,并一直持续到该次调用结束或超过 15 秒。

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

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

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

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

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

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

  5. 线程剖析栏中单击放大镜图标。线程剖析对话框打开。
    说明
    • 实际耗时是服务调用的实际执行时间,不受线程剖析影响。

    • 监听耗时是能够被 TProf 监听到的耗时。通常情况下,监听耗时 ≈ 实际耗时 - 慢调用触发阈值。

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

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

  2. 调用链路查询标签页的参数名下拉框中选择仅含线程剖析快照,并单击查询
  3. 在搜索结果中单击一个 TraceId 链接。调用链路标签页在新窗口打开。

  4. 线程剖析栏中单击放大镜图标。

常见问题

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

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