美文网首页
Arthas使用

Arthas使用

作者: 魂之挽歌w | 来源:发表于2022-05-28 15:27 被阅读0次

简介

官方文档链接:https://arthas.aliyun.com/doc/quick-start.html

启动arthas

方式一:java -jar arthas-boot

方式二:java -jar arthas-boot pid

两种方式都可以,方式二要预先知道JAVA进程的PID

命令列表

控制面板

适用场景

场景一:查看当前jvm的线程执行状态,也可以使用thread命令

场景二:查看jvm的内存使用

示例

1dashboard

image.png

查看class源码

适用场景

场景一:测试/生产环境已经发布,方法执行与预期不符,无法确认类文件是否发布成功

场景二:测试/生产环境代码执行报错,暂时无法通过IDE工具查看源码

示例

# eg. com.demo.MainClass

jad --``source``-only com.demo.MainClass

|

监听方法执行

适用场景

场景一:代码执行异常,暂无法通过本地IDE工具进行DEBUG,通过日志又无法定位问题

场景二:查看方法的参数、返回结果

场景三:统计方法的执行耗时

示例

准备监听方法

# eg. com.demo.MainClass.doAnyThing()

tt -t com.demo.MainClass doAnyThing

# 监听通用方法可以加参数以防止方法数量过多

tt -t com.demo.MainClass doAnyThing params[0].customerId==3

查看监听列表

查看监听的方法列表

# 查看监听的方法列表

tt -l

# 监听的方法太多,只查看入参customerId=3的方法

tt -s params[0].customerId==3

查看监听方法的明细

# 通过index来查看监听方法的详细信息

tt -i 1000

# 只想查看入参中的某个对象,不想全量查看,可以加-w参数

tt -i 1000 -w params[0].userVO

tt -i 1000 -w returnObj.response

热更新class文件

适用场景

生产环境无法随时重启部署,通过retransform对运行的jvm中的class文件进行替换,以达到不发布即可更新代码的目的

示例

# 指定绝对的class路径加载到jvm内存中

retransform ``/tmp/com/example/demo/arthas/user/UserController``.class

生产环境的服务器一般是多台,手动执行风险极高,而且属于奇技淫巧,不推荐当作正常发布的流程

生成JVM火焰图

适用场景

希望观察jvm在一定时间内的cpu负荷

示例

# 单位:秒,执行300秒后结动结束,默认采集cpu,默认生成svg格式

profiler start --duration 300

image.png

相关文章

  • 如何使用Arthas提高日常开发效率?

    Arthas有什么功能,怎么用,请看:Arthas使用手册[https://arthas.aliyun.com/d...

  • Arthas-Java排查神器使用

    推荐使用arthas-boot.jar方式 1、下载及安装 arthas-boot是Arthas的启动程序,它启动...

  • arthas源码分析

    arthas简介 arthas 是Alibaba开源的Java诊断工具,基于jvm Agent方式,使用Instr...

  • 排查线上CPU飙高

    1、本案例的排查过程使用的阿里开源的Arthas工具进行的,不使用arthas,使用JDK自带的命令也是可以。 2...

  • 超好用的自带火焰图的 Java 性能分析工具 Async-pro

    最近 Arthas 性能分析工具上线了火焰图分析功能,Arthas 使用 async-profiler 生成 C...

  • Arthas使用

    下载arthas-boot.jar: 然后用java -jar的方式启动: 选择一个pid进入(如1): 通过th...

  • Arthas使用

    1、写作背景 在此记录,以备遗忘 2、核心操作 2.1、Arthas安装 linux安装 wget https:/...

  • Arthas使用

    Authas — 开源的java诊断工具 下载安装 authas是一个jar包,可以直接下载后运行 就可以启动起来...

  • Arthas使用

    1.代码热修复:jad --source-only com.test.demo.dmp.constant.DmpC...

  • arthas使用

    安装 第一步:下载arthas 安装jar包 日常使用命令 详细参考:https://arthas.aliyun....

网友评论

      本文标题:Arthas使用

      本文链接:https://www.haomeiwen.com/subject/iyiiprtx.html