渣渣兔 发表于 2022-10-9 11:06:28

arthas使用介绍

arthas使用介绍

一、介绍

Arthas是阿里巴巴旗下的一款开源的JAVA诊断工具,可以进行线上监控诊断产品,实时查看应用的内存、gc、线程等信息,方便排查线上问题。
二、支持的平台

需要安装JDK6以上版本,支持Linux/Mac/Windows,是使用命令行进行交互。
三、安装

curl -O https://arthas.aliyun.com/arthas-boot.jar
java -jar arthas-boot.jar启动之后,就会列出当前系统上所有的java进程,输入进程前面的序号,连接到相应的应用进程。
http://picgo.xpyvip.top/image-20221008231139965.png
四、常用命令


[*]dashboard
dashboarddashboard命令会展示当前进程的相关信息,包含相关线程的线程名称、CPU占用、JVM内存使用情况,java版本等等,并且dashboard展示的信息会默认5秒刷新一次。
参数说明-i实时数据刷新时间,默认是5000ms-n实时数据刷新次数http://picgo.xpyvip.top/image-20221008231738125.png
[*]thread
thread 线程idthread命令是查看当前线程的信息,包括线程的堆栈信息。
参数说明id线程id-n打印最忙的前n个线程,包含堆栈信息-b找出当前阻塞其他线程的线程-i设置cpu使用率统计的采样时间,单位毫秒,默认是200--all显示所有匹配的线程http://picgo.xpyvip.top/image-20221008232649543.png
[*]heapdump
heapdump /路径/dump.hprof该命令类似jmap的heap dump功能。

[*]jvm
jvm查看当前JVM相关信息,包含JVM启动时间、版本、线程数等。

[*]memory
memory查看JVM内存信息。
http://picgo.xpyvip.top/image-20221008233314484.png
[*]quit
quit退出Arthas客户端。也可以使用exit、logout、q这三个指令。

五、总结

上方命令是基础的常用命令,快速判断应用问题原因,详细分析还需要借助其他命令,例如以下命令。

[*]monitor——方法执行监控。
[*]watch——函数执行数据观测,可以看到函数执行的调用情况、返回值、入参、异常等。
[*]trace——方法内部调用路径,并且输出方法路径上的每个节点的耗时。
[*]stack——当前方法被调用的调用路径。
[*]profiler——生成应用热点火焰图。
排查问题可能需要命令搭配使用,才能找出问题。Arthas命令远不止这些,并且功能也远不止这些,具体可以查看Arthas官网实例和使用方法。官网
原文链接:https://monkey.blog.xpyvip.top/archives/arthas-shi-yong-jie-shao

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
页: [1]
查看完整版本: arthas使用介绍