线上问题排查利器Arthas

Posted doit8791

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了线上问题排查利器Arthas相关的知识,希望对你有一定的参考价值。

下载arthas-boot.jar,然后用java -jar的方式启动:

curl -O https://alibaba.github.io/arthas/arthas-boot.jar
java -jar arthas-boot.jar
  • 执行该程序的用户需要和目标进程具有相同的权限。比如以admin用户来执行:sudo su admin && java -jar arthas-boot.jar 或 sudo -u admin -EH java -jar arthas-boot.jar
  • 如果attach不上目标进程,可以查看~/logs/arthas/ 目录下的日志。
  • 如果下载速度比较慢,可以使用aliyun的镜像:java -jar arthas-boot.jar --repo-mirror aliyun --use-http
  • java -jar arthas-boot.jar -h 打印更多参数信息。

查看cpu占用高的3个线程 类似top -H,但是能看到堆栈信息,不用先找到线程id再从jstack线程堆栈中查找

thread -n 3

跟踪某个方法的调用时间【显示的条数】

trace 包名.类名 方法名 [-n 数字]

进行获取执行方法的参数【参数第几个】然后获取数据【-n 1为只输出一条】

#$ watch 包名.类名 方法名 params[0].get(0).age -n 1

执行的系统环境变量

#sysprop和sysenv
#通过sysprop可以查看所有的系统变量,也可以设置某个系统变量。
#同理,通过sysenv可以查看所有的操作系统环境变量,也可以查看设置某个环境变量。

jvm

#通过jvm命令直接输出当前jvm的各种信息。

以上是关于线上问题排查利器Arthas的主要内容,如果未能解决你的问题,请参考以下文章

Java在线诊断利器之Arthas

线上应用调试利器 --Arthas

arthas排查线上问题真是太好用了!

阿里开源的那个牛X的问题排查工具——Arthas,推出IDEA插件了!

java生产环境调试问题排查神器arthas(阿里中台开源的)

Cpu飚高show-busy-java-threads一件脚本排查与Arthas线上诊断工具排查实战