Arthas阿尔萨斯的使用安装详细教程
创始人
2024-05-28 18:00:59
0

Arthas阿尔萨斯的使用安装详细教程

  • 一、阿尔萨斯能解决什么什么问题
  • 二、安装与命令
  • 三、实际应用
  • 四、自学途径

本篇文章是自学B站“御风大世界”视频的提炼和总结。
原视频见:Arthas使用教程
在这里插入图片描述

一、阿尔萨斯能解决什么什么问题

alibaba出品线上JVM监控诊断利器
1、是一个全局JVM运行时监控工具,实现了 CPU,线程,内存,堆栈信息等监控。
2、CPU飙高,可以快速定位是什么原因造成的。
3、接口没反应、卡住了,定位是不是死锁。
4、CTO说你们这个接口太慢了,要优化一下,可以准确找出耗时的代码。
5、我写的代码没有执行,是部署的分支不对,还是我压根没提交?
6、线上有一个低级错误,改起来很简单,能不能在不重启应用的情况下, 进行类替换, 热部署。

二、安装与命令

1.arthas 如何安装?
Arthas下载地址

比如我们下载到F盘,共享或者发送给linux
在这里插入图片描述

2.arthas 启动
启动前先运行Java程序,我们写了一个死循环
运行程序

    @Testpublic void test2() throws InterruptedException {while (true) {Thread.sleep(1000);System.out.println(123);}}

JVM配置如下:

-Xms10m -Xmx10m

图示如下:
在这里插入图片描述
注意:这里不一定非要启动main方法,只需要打开IDEA即可。
之后在arthas下载路径输入cmd,之后输入如下命令:建议模拟服务器环境用Linux进行如下的所有操作

java -jar arthas-boot.jar

在这里插入图片描述
这里我们输入1,会下载Arthas,这里注意1是打不开的,会报连接失败,因为IDEA占用了那个端口,所以我们选择3
在这里插入图片描述
通过help指令可以看到操作方式
在这里插入图片描述
dashboard 命令展示
输入

dashboard -h

如图,会列举其用法
在这里插入图片描述
输入指令,
解决问题1:实现了 CPU,线程,内存,堆栈信息等监控。

dashboard

在这里插入图片描述
输入指令

thread

在这里插入图片描述
查看某个具体的线程

thread 线程ID

在这里插入图片描述
指令:查看反编译当前类,查看内容

jad 类名

在这里插入图片描述
IDEA中下载插件arthas idea
在这里插入图片描述
想对某个方法进行Arthas的调用,可以右键选择,watch
在这里插入图片描述
这时候,命令到了剪切板之中,去命令行中右键粘贴即可。
在这里插入图片描述
回车后就可以抓到了
在这里插入图片描述
trace是对耗时的分析
在这里插入图片描述
会深入到方法内部,方法比较慢会标红高亮
在这里插入图片描述
stack是调用栈
在这里插入图片描述
可以看条件分支
在这里插入图片描述

monitor是对方法级别的监控
在这里插入图片描述
做压测的时候观测
在这里插入图片描述

三、实际应用

首先用命令

dashboard

查看空间使用情况,发现noheap内存和元空间占用率很高
在这里插入图片描述
某个线程的CPU使用率达到了90%多
在这里插入图片描述

进阶着使用命令,找出CPU利用率高的前5个线程

thread -n 5

定位到死循环的类
在这里插入图片描述

查看死锁的方式

thread

定位到2个死锁
在这里插入图片描述
使用指令

thread -b

在这里插入图片描述
时空隧道功能:重放请求

tt -t 全类名 方法名

在这里插入图片描述
使用指令

tt -i 索引

可以查看某个索引的请求
在这里插入图片描述
我们通过如下指令复现请求

tt -i 索引 -p

在这里插入图片描述

热力图:

profiler start
过一会儿
profiler stop

在这里插入图片描述
访问路径会看到一个热力图
在这里插入图片描述

四、自学途径

官网文档
github用户案例

相关内容

热门资讯

中证A500ETF摩根(560... 8月22日,截止午间收盘,中证A500ETF摩根(560530)涨1.19%,报1.106元,成交额...
A500ETF易方达(1593... 8月22日,截止午间收盘,A500ETF易方达(159361)涨1.28%,报1.104元,成交额1...
何小鹏斥资约2.5亿港元增持小... 每经记者|孙磊    每经编辑|裴健如 8月21日晚间,小鹏汽车发布公告称,公司联...
中证500ETF基金(1593... 8月22日,截止午间收盘,中证500ETF基金(159337)涨0.94%,报1.509元,成交额2...
中证A500ETF华安(159... 8月22日,截止午间收盘,中证A500ETF华安(159359)涨1.15%,报1.139元,成交额...
科创AIETF(588790)... 8月22日,截止午间收盘,科创AIETF(588790)涨4.83%,报0.760元,成交额6.98...
创业板50ETF嘉实(1593... 8月22日,截止午间收盘,创业板50ETF嘉实(159373)涨2.61%,报1.296元,成交额1...
港股异动丨航空股大幅走低 中国... 港股航空股大幅下跌,其中,中国国航跌近7%表现最弱,中国东方航空跌近5%,中国南方航空跌超3%,美兰...
电网设备ETF(159326)... 8月22日,截止午间收盘,电网设备ETF(159326)跌0.25%,报1.198元,成交额409....
红利ETF国企(530880)... 8月22日,截止午间收盘,红利ETF国企(530880)跌0.67%,报1.034元,成交额29.0...