Arthas基础
基础练习,本文大多资料在官方网站都可以找到
1. 启动示例demo
可以下载官网提供的示例jar文件,作为练习,arthas-demo
是一个很简单的程序,它随机生成整数,再执行因式分解,把结果打印出来。如果生成的随机数是负数,则会打印提示信息
1 wget https://arthas.aliyun.com/arthas-demo.jar 2 java -jar arthas-demo.jar
2. 启动Arthas服务
下载arthas-boot.jar
再用java -jar
命令启动
1 wget https://arthas.aliyun.com/arthas-boot.jar 2 java -jar arthas-boot.jar
启动后,显示了Arthas LOGO,并且连上了进程,说明启动成功了,选择一个进程回车即可
3. help
查看所有可用命令
4. dashboard
可以查看当前系统的实时数据面板,Q或者Ctrl+C 退出dashboard命令
5. thread
thread 命令会打印线程的面板信息
thread 1 命令可以打印线程1 的栈,另外Arthas支持管道,可以用 thread 1 |grep 'main(' 查找到 main class 。可以看到 main class 是 demo.MainGame ,并且可以使用jad来反编译class:
6. sc
可以通过 sc 命令来查找jvm里已经加载的类,比如 sc -d *MathGame
7. watch
通过 watch 命令可以查看函数的参数/返回值/异常信息。比如 watch demo.MathGame primeFactors returnObj
8. exit/stop
使用 exit 或者 quit 退出Arthas之后,还可以通过 java -jar arthas-boot.jar 再次连接。因为只是退出了当前session,Arthas服务还在运行中,没有停止。
彻底退出Arthas需要使用 stop 命令。