美文网首页
阿里jvm监控工具arthas

阿里jvm监控工具arthas

作者: engineer_tang | 来源:发表于2023-05-22 22:38 被阅读0次

1. 安装

第一步: 下载arthas对应jar包

curl -O https://arthas.aliyun.com/arthas-boot.jar
java -jar arthas-boot.jar

第二步:配置环境变量

配置环境变量classpath

  export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_341.jdk/Contents/Home
  export M2_HOME=/Users/tangqiao/Documents/maven/apache-maven-3.8.6
  export PATH=$PATH:$JAVA_HOME/bin:$M2_HOME/bin
  export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.

第三步:运行arthas
可以通过脚本运行

curl -L https://arthas.aliyun.com/install.sh | sh
./as.sh

第四步:通过浏览器访问
http://localhost:8563/

image.png

2. 命令的使用

2.1 jvm相关

1)dashboard命令


image.png

-i 刷新实时数据的时间间隔 (ms),默认 5000ms
-n | 刷新实时数据的次数
例如:dashboard -i 2000 -n 5 ,表示2秒刷新一次,刷新5次

  • ID: Java 级别的线程 ID,注意这个 ID 不能跟 jstack 中的 nativeID 一一对应。
  • NAME: 线程名
  • GROUP: 线程组名
  • PRIORITY: 线程优先级, 1~10 之间的数字,越大表示优先级越高
  • STATE: 线程的状态
  • CPU%: 线程的 cpu 使用率。比如采样间隔 1000ms,某个线程的增量 cpu 时间为 100ms,则 cpu 使用率=100/1000=10%
  • DELTA_TIME: 上次采样之后线程运行增量 CPU 时间,数据格式为
  • TIME: 线程运行总 CPU 时间,数据格式为分:秒
  • INTERRUPTED: 线程当前的中断位状态
  • DAEMON: 是否是 daemon 线程
  1. getstatic


    image.png
  2. jvm


    image.png
  • COUNT: JVM 当前活跃的线程数
  • DAEMON-COUNT: JVM 当前活跃的守护线程数
  • PEAK-COUNT: 从 JVM 启动开始曾经活着的最大线程数
  • STARTED-COUNT: 从 JVM 启动开始总共启动过的线程次数
  • DEADLOCK-COUNT: JVM 当前死锁的线程数
  1. memory
    查看JVM内存信息


    image.png
  2. ognl


    image.png
  3. sysenv
    查看环境变量


    image.png
  4. thread
    查看当前线程信息,查看线程的堆栈


    image.png
  5. vmoption
    查看,更新 VM 诊断相关的参数

image.png
  1. vmtool
    利用JVMTI接口,实现查询内存对象
    强制 GC 等功能。


    image.png

10 ) monitor方法执行监控


image.png
  1. stack
    输出当前方法被调用的调用路径


    image.png
  2. trace
    方法内部调用路径,并输出方法路径上的每个节点上耗时


    image.png
  3. tt
    方法执行数据的时空隧道,记录下指定方法每次调用的入参和返回信息,并能对这些不同的时间下调用进行观测


    image.png
  4. watch
    函数执行数据观测


    image.png

参考:https://arthas.aliyun.com/doc/dashboard.html

相关文章

网友评论

      本文标题:阿里jvm监控工具arthas

      本文链接:https://www.haomeiwen.com/subject/jabtedtx.html