Arthas 常用命令

官方文档:https://alibaba.github.io/arthas/install-detail.html

安装

Arthas 是阿里开源的一款 linux/mac 上性能问题排查工具。文档链接: https://alibaba.github.io/arthas/  (这个里边具体步骤和指令讲得很详细)

  • 安装启动

wget https://alibaba.github.io/arthas/arthas-boot.jar
java -jar arthas-boot.jar      (确保安装了完整 java 且 jps 命令可用)
java -jar arthas-boot.jar --repo-mirror aliyun --use-http           (下载真正的运行包,默认到 /Users/shicai.xsc/.arthas/lib/3.1.4/arthas 目录)

下载完后,可以看到 arthas 文件夹里有以下文件。可以将此文件夹打包拷贝到其他机器直接使用。
[admin@iZbp1i1vql5huywx13yay4Z arthas]$ ls
arthas-agent.jar  arthas-boot.jar  arthas-client.jar  arthas-core.jar  arthas-demo.jar  arthas-spy.jar  as.bat  as-service.bat  as.sh  install-local.sh

使用时执行 sh as.sh

  • 查看最慢的 n 个进程

thread -n 3

  • 根据线程 ID 查看线程堆栈

thread 25               25 是线程 ID

  • 利用jad反编译指定class

jad org.slf4j.Logger          出来的每个 hashcode 代表一个 classloader

jad org.slf4j.Logger -c 17a7cec2        反编译相应代码

提示:可以通过  tab 键来补全类名

  • 显示所有加载过这个类的 ClassLoader

sc -d org.slf4j.Logger

  • 输出当前方法被调用的调用路径

stack com.xxxxx.middleware.kkkkkkk.core.applier.opensearch.OpenSearchApplier apply

  • 方法内部调用路径,并输出方法路径上的每个节点上耗时

trace com.xxxxx.middleware.kkkkkkk.core.applier.opensearch.OpenSearchApplier apply

  • 显示方法执行时出参入参

watch com.xxxxx.middleware.kkkkkkk.core.applier.opensearch.OpenSearchApplier apply

Thread

  • thread      查看当前进程的所有线程
  • thread -n 3       展示当前最忙的前N个线程并打印堆栈
  • thread -b        找出当前阻塞其他线程的线程
  • thread id        显示指定线程的运行堆栈
  • thread -i             指定采样时间间隔
  • thread --state WAITING         查看指定状态的线程
  •  

 

 

 

 

 

 

 

 

发布了34 篇原创文章 · 获赞 0 · 访问量 1399

猜你喜欢

转载自blog.csdn.net/justsomebody126/article/details/101174433