文章目录
前言
Arthas 是什么?
Arthas
(阿尔萨斯)是Alibaba开源的Java诊断工具,深受开发者喜爱。
Arthas 能够做什么?
当你遇到以下类似问题而束手无策时,Arthas
可以帮助你解决:
- 这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception?
- 我改的代码为什么没有执行到?难道是我没 commit?分支搞错了?
- 遇到问题无法在线上 debug,难道只能通过加日志再重新发布吗?
- 线上遇到某个用户的数据处理有问题,但线上同样无法 debug,线下无法重现!
- 是否有一个全局视角来查看系统的运行状况?
- 有什么办法可以监控到JVM的实时运行状态?
- 怎么快速定位应用的热点,生成火焰图?
- 怎样直接从JVM内查找某个类的实例?
Arthas
支持JDK 6+,支持Linux/Mac/Windows,采用命令行交互模式,同时提供丰富的 Tab
自动补全功能,进一步方便进行问题的定位和诊断。
安装
前面说了 Arthas
是阿里开源的 Java 诊断工具,所以它是一个项目,可以打成 jar 包部署在服务器运行。
下面我就以 window 上运行 jar 包为例进行演示。
(安装我们就省略,直接从官网下载 jar 包进行使用即可)
Linux 安装可以参考官网:https://arthas.aliyun.com/doc/install-detail.html
初步使用
启动正常 Java 项目
命令:$ java -jar xxx.jar
启动 Arthas 服务
$ java -jar arthas-boot.jar
可以看到我们启动的 demo-test.jar
Java 项目,前面有个 index
标识 4;所以我们输入 4 + Enter 即可指向我们要操作的项目。
启动成功,arthas
提供一个web操作界面,在游览器地址栏输入:127.0.0.1:3658
即可打开。
至此,我们准备工作就已完成,接下来我们就在这个 Web 界面进行命令操作。
Arthas 追加日志案例
基础命令
help 查看帮助命令
可以看到,Arthas
提供的命令非常多,功能也非常