arthas 使用总结

本文为博主原创,未经允许不得转载:

  Arthas 是Alibaba开源的Java诊断工具,深受开发者喜爱。在线排查问题,无需重启;动态跟踪Java代码;实时监控JVM状态。

  • Github: https://github.com/alibaba/arthas
  • 文档: https://arthas.aliyun.com/doc/

  下载arthas-boot.jar,再用java -jar命令启动:

wget https://arthas.aliyun.com/arthas-boot.jar ; java -jar arthas-boot.jar

  arthas-bootArthas的启动程序,它启动后,会列出所有的Java进程,用户可以选择需要诊断的目标进程。

 选择需要监控进程前的序号,输入 1 ,再Enter 回车,便会打印 arthas 的banner

   输入 help 可以查看 arthas 的所有命令:

Dashboard

dashboard 命令可以查看当前系统的实时数据面板。分为三个部分:第一部分为cpu监控,第二部分为内存监控,第三部分为环境信息

   输入 q 或者 Ctrl+C 可以退出dashboard命令。

  还可以使用指定的方式启动,在浏览器web页面进行访问服务器的arthas 控制台:  

指定arthas 服务所在的ip地址:--target-ip 112.25.26.68 
指定arthas 服务访问的端口及监听的服务进程: --telnet-port 3658 19113
java -jar arthas-boot.jar --target-ip 112.25.26.68 --telnet-port 3658 19113

Thread

直接执行 thread ,查看所有的线程:

查看CPU使用率top n线程的栈 :thread -n 3

thread pid 命令会打印线程ID 的栈。

Sc

可以通过 sc 命令来查找JVM里已加载的类:

 

Jad

可以通过 jad 命令来反编译代码.查看当前jvm 中类的代码。此命令在项目发布定位某个类信息有没有更改过来时,使用这个命令可以很快定位代码是否修改。

Watch

通过watch命令可以查看函数的参数/返回值/异常信息。

退出Arthas

用 exit 或者 quit 或者 stop  命令可以退出Arthas。

 
原文地址:https://www.cnblogs.com/zjdxr-up/p/14897751.html