文章目录
arthas的安装使用说明
arthas介绍
开源地址
https://github.com/alibaba/arthas
官方文档
https://alibaba.github.io/arthas
使用场景
1.是否有一个全局视角来查看系统的运行状况?
2..为什么 CPU 又升高了,到底是哪里占用了 CPU ?
3.运行的多线程有死锁吗?有阻塞吗?
4.程序运行耗时很长,是哪里耗时比较长呢?如何监测呢?
5.这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception?
6.我改的代码为什么没有执行到?难道是我没 commit?分支搞错了?
7.遇到问题无法在线上 debug,难道只能通过加日志再重新发布吗?
8.有什么办法可以监控到 JVM 的实时运行状态?
安装启动
下载
-- github下载
wget https://alibaba.github.io/arthas/arthas-boot.jar
-- gitee下载
wget https://arthas.gitee.io/arthas-boot.jar
-- 打印帮助信息
java -jar arthas-boot.jar -h
启动
arthas是java程序,直接使用java -jar运行,启动后可以检测改服务器上的java进程
-java -jar arthas-boot.jar启动服务,默认情况下,arthas只listen 127.0.0.1,如果想从远程连接,可以使用 --target -ip参数指定listen的ip
但是会有安全风险
切换服务
java -jar arthas-boot.jar --telnet-port 9998 --http-port -1
快速入门
查看dashboard
输入dashboard,按回车/enter,会展示当前进程的信息,按ctrl+c可以中断执行
jad 来反编译Main Class
jad refactor class url
watch 监听服务出入参数
watch 包路径 空格 方法名"{params,returnObj}" -x 2
检测才代码耗用时间
trace 包路径 空格 方法名#cost>10 n:100
命令列表
https://alibaba.github.io/arthas/commands.html