欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

Arthas使用指南:安装与常用命令(trace、watch)详解,本文将详细介绍其核心

来源: javaer 分享于  点击 47063 次 点评:123

Arthas使用指南:安装与常用命令(trace、watch)详解,本文将详细介绍其核心


Arthas 是阿里开源的Java诊断工具,能在不重启应用的情况下实现线上问题排查、性能监控和动态代码热更新。本文将详细介绍其核心功能与使用技巧。


一、快速安装与启动

# 下载最新版Arthas
curl -O https://arthas.aliyun.com/arthas-boot.jar

# 启动并选择目标JVM进程
java -jar arthas-boot.jar

启动后会显示当前机器上的Java进程列表,输入序号即可附加到目标进程进行诊断。


二、性能瓶颈定位:trace命令

命令格式

trace [全限定类名] [方法名] '#cost>阈值' -n 监控次数

核心功能
追踪方法内部调用链,精确到每一行代码的耗时,快速定位性能瓶颈。

使用示例

# 监控saveMedicalDiag方法,仅显示耗时>10ms的调用,最多捕获5次
trace com.example.ClinicService saveMedicalDiag '#cost>10' -n 5

输出解读

`---ts=2025-07-30 12:00:00;thread_name=http-nio-8080-exec-1;id=1e;is_daemon=true;priority=5;
    `---[15.78ms] com.example.ClinicService:saveMedicalDiag()
        +---[0.5ms] com.example.DBUtil:getConnection() 
        +---[12.0ms] com.example.DAO:insert()  # ⚠️ 主要耗时点
        `---[3.2ms] com.example.Logger:writeLog()

注意事项

  1. 默认忽略java.*包下的调用,需逐层排查或使用正则监控多层调用
  2. 正则监控示例:trace -E com.service.*|com.dao.* save*

相关栏目:

用户点评