一. 背景介绍

Arthas 是 Alibaba 在 2018 年 9 月开源的 Java 诊断工具。支持 JDK6+, 采用命令行交互模式,提供 Tab 自动补全,可以方便的定位和诊断线上程序运行问题。得益于 Arthas 强大且丰富的功能,让 Arthas 能做很多的事情,比如以下场景:

  1. 是否有一个全局视角来查看系统的运行状况?
  2. 为什么 CPU 又升高了,到底是哪里占用了 CPU ?
  3. 运行的多线程有死锁吗?有阻塞吗?
  4. 程序运行耗时很长,是哪里耗时比较长呢?如何监测呢?
  5. 这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception?
  6. 遇到问题无法在线上 debug,难道只能通过加日志再重新发布吗?

二. 安装和启动

通过命令下载arthas的jar包

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

启动arthas

java -jar arthas-boot.jar

image-1682470016111
然后会列出正在运行的java项目,比如我这里选择第7个,直接输入7回车即可进入,然后就是输入arthas命令的时候了

详细命令使用,请参考网上这篇文章

arthas命令使用