一、Arthas简介
可以用来快速定位java程序使用中的问题,查看程序运行过程中的各种信息。
相对于之前jvm命令方式的定位方式,主要有以下特性:
1) 对源程序无侵入性,不需要重启或修改源码
2) 交互式命令行操作方式,方便使用
3) 功能丰富,对jvm各种性能,class信息等都能做到分析
二、安装启动
1、将下载的软件传入需要分析的服务容器中解压,然后执行 java -jar arthas-boot.jar 命令运行Arthas。
若无法发现主类,可运行如下命令尝试:
-
java -jar arthas-boot.jar
-
su-exec oes:oes /openjdk/bin/java -jar arthas-boot.jar
-
/openj9jdk/bin/java -jar arthas-boot.jar
-
/openjdk/bin/java -jar arthas-boot.jar
三、常用命令
命令相关文档 简介 | arthas
1、trace
trace 命令能主动搜索对应的方法调用路径,渲染和统计整个调用链路上的所有性能开销和追踪调用链路
例如:trace com.xxx.xxxx.xxxx.xxxxx.xxxxx.TestsResourceImpl exportDates
2、thread
查看当前线程信息,查看线程的堆栈
thread - N 支持一键展示当前最忙的前 N 个线程并打印堆栈
thread id, 显示指定线程的运行堆栈
thread -b, 找出当前阻塞其他线程的线程
3、jvm 查看当前 JVM 信息
4、dashboard
当前系统的实时数据面板,按 ctrl+c 退出
5、memory 查看 JVM 内存信息