线程分析
线程分析功能可帮助您识别并隔离代码栈中的性能瓶颈。在 Site24x7 APM Insight 中,所选时间窗口内收集的所有线程分析记录均会以列表形式展示,并附带线程数、CPU 时间及内存详情。每条线程分析记录包含应用程序被分析时正在运行的线程列表。
点击某条特定线程分析记录,可查看:
- 高 CPU 占用线程,以及对应的线程 ID、CPU 时间和内存分配详情
- 可能影响应用程序性能的耗时方法
- 每个方法的调用次数
查看线程分析:
- 登录您的 Site24x7 账户。
- 前往首页 > APM > 您的应用程序。
- 点击线程 分析选项卡,然后点击各个线程以进一步检查。

线程分析类型:
计划分析:
默认情况下,APM Insight 每天自动执行两次线程分析,每次持续 5 分钟。
在 Java 代理中, 计划线程分析每小时执行一次。
按需分析:
使用按需分析功能,可在当前时间启动线程分析,持续时长为 5 至 30 分钟。
在指定时长内,线程将按固定时间间隔进行采样,采集的综合数据将在时长结束时展示。
要启动按需分析,请执行以下步骤:
- 登录您的 Site24x7 账户。
- 前往首页 > APM > 您的应用程序。
- 点击线程 分析选项卡,然后点击按需线程分析选项卡。
- 指定时长并点击启动分析。

按需分析每小时只能启动一次,即如果您启动了 5 分钟的按需分析,则需等待 55 分钟后才能再次启动。

按需分析可针对应用程序和实例启动。
- 在应用程序视图中,按需分析将针对第一个可用实例启动。
- 在实例视图中,仅当实例处于运行状态时才能启动按需分析。
- 当实例处于宕机状态时尝试启动按需分析,您将收到提示消息:"Agent is currently DOWN.Please try after some time"

- 当实例被暂停时,按需分析将被禁用

前 N 个资源消耗线程
通过此选项,您可以轻松识别 CPU 或内存消耗最多的线程。您可以选择 5 到 20 之间的任意数值(N)。
此选项仅适用于 Java 代理 v5.6 及以上版本。

当发起按需线程分析请求时,代理还会监控每个线程的 CPU 和内存使用情况。代理根据您提供的 N 值,从每个类别(CPU 和内存)中选出消耗资源最多的前 N 个线程。分析完成后,这些线程及其使用统计数据和堆栈跟踪将显示在 Site24x7 Web 客户端中。
下图展示了按资源消耗量降序排列的线程列表。

自动化线程分析
您可以创建线程转储自动化,使线程分析根据设定条件自动触发。
添加线程转储自动化
按照以下步骤实现线程分析流程的自动化:
- 点击应用程序/实例下拉菜单旁边的汉堡图标(
)。 - 选择编辑。编辑 APM Insight 应用程序界面将打开。
- 在配置文件部分找到IT 自动化模板字段,并从下拉菜单中选择自动化。
- 从执行时机下拉菜单中选择执行时机,选项包括:
- 宕机时执行
- 严重时执行
- 故障时执行
- 恢复时执行
- 任意属性状态变更时执行
- 任意状态变更时执行
注意同一个监视器可以添加多个自动化。
- 点击保存。
创建新的线程转储自动化模板
按照以下步骤创建新的线程转储自动化模板:
- 点击选择自动化下拉菜单,滚动到底部选择+添加自动化模板。

- 在添加自动化模板弹窗中,按如下说明填写信息。

- 类型:线程转储
- 显示名称:根据需要填写显示名称。
- 代理类型:APM
- 操作执行目标主机:此字段默认值为 $LOCALHOST,不可修改。
- 最大允许操作执行时间:默认超时时长为 15 秒,您可以将其设置为 1 到 90 秒之间的任意值。
- 通过邮件发送自动化结果:您可以选择是,将自动化结果以邮件形式发送至通知配置文件中配置的用户组。默认设置为否。
- 点击保存。
视频
以下是线程分析工作原理的快速演示视频:
下一步
查看线程转储分析功能,深入了解线程分析的更多内容。
