arthas使用教程

简介: arthas使用教程

1.概述

arthas是Alibaba推出的一款JVM性能诊断调优工具,主要具备以下能力:

  • 全局监控,对应用整体情况的一个监控
  • JVM的内存情况
  • 各个线程的情况
  • 运行时的环境信息

  • 方法级别的监控,对单个方法进行监控
  • watch
  • trace
  • stack
  • monitor
  • 线上问题定位,支持对线上问题进行一些排查
  • 各个进程的CPU占用率
  • 查看死锁
  • 程序反编译,用来确定当前部署的版本是不是对的。

2.使用

2.1.安装使用

下载地址:

https://github.com/alibaba/arthas/releases

下载解压后的包结构:

最核心的是arthas的应用jar

2.2.启动

启动要监控的java进程后,再启动arthas。直接通过java -jar arthas-boot.jar可以启动arthas,启动后会列出当前可监控的JAVA进程,选择要监控的进程。

选择好要监控的进程后,接下来就可以通过输入命令的方式来查看具体的监控内容。

2.3.全局监控

dashboard命令,实时展示全局线程情况、内存情况、运行环境信息。

thread命令,可以查看所有线程信息。

thread -id,查看具体线程的信息。

2.4.方法级别的监控

在我们进行调优的时候,先要定位性能问题在何处,直白来说就是往往需要定位到应用内具体的某一个方法。所以对具体方法粒度的监控是很重要,很常用的,arthas提供了一整套对于方法的监控。

方法级别的监控:

  • watch
  • trace
  • stack
  • monitor

2.4.1.插件

方法级别的监控命令后面需要跟很多参数,每次都手动输入的话会很慢,可以安装一个idea的插件,用来自动生成带参数的指令,方便高效。

安装arthas idea后选中该右击方法,会有arthas command选项。  

2.4.2.watch

watch命令用来查看方法的一些信息,如参数、返回值、异常等,

-n 执行次数

-x每次调用追进去监控的层级深度。

2.3.3.trace

trace命令用来查看方法的耗时,

-n 执行次数

2.3.4.stack

stack命令,查看方法的调用栈,用来确定方法在何处被调用了,

-n 执行次数

2.4.线上问题定位

如果是一个我们已经在实际进行生产使用的一个系统,线上出了问题,根据经验来说我们可以从几个方面去考虑问题:

  • 代码的版本是否正确,从而判断是不是代码部署的问题。
  • CPU的占用率是否过高,从而判断是不是性能问题
  • 是否有死锁,从而判断是不是代码编写的问题。

arthas提供了指令用来支持以上三个维度的问题排查。

2.4.1.反编译

jda -类名,可以反编译类,用来确定当前部署的版本是不是正确的。


2.4.2.CPU占用率

thread -n 根据CPU占用率从高到低例举出指定数量的线程。

2.4.3.死锁

死锁首先在全局监控里可以看到所有状态为BLOCKED的死锁。

也可以通过thread -b指令来查看所有死锁。

目录
相关文章
|
7月前
|
Arthas 监控 Java
Arthas (阿尔萨斯)arthas-boot 方式安装及使用教程
Arthas (阿尔萨斯)arthas-boot 方式安装及使用教程
976 0
|
Arthas 监控 Java
Arthas使用教程(8大分类)
Arthas使用教程(8大分类)
777 0
|
Arthas Java 测试技术
Arthas 基础教程
本场景带您体验如何在Alibaba Cloud Linux  2.1903 LTS 64位操作系统的云服务器上通过 arthas-demo 和一个 Spring Boot 应用,演示 Arthas 命令的用法。
|
Arthas Java 测试技术
Arthas 进阶教程
本场景带您体验如何在Alibaba Cloud Linux  2.1903 LTS 64位操作系统的云服务器上通过 arthas-demo 和一个 Spring Boot 应用,演示 Arthas 命令的用法。
|
Arthas JavaScript Java
Java 诊断工具 Arthas 常见命令(超详细实战教程)(一)
Java 诊断工具 Arthas 常见命令(超详细实战教程)(一)
Java 诊断工具 Arthas 常见命令(超详细实战教程)(一)
|
Arthas Java 测试技术
Java 诊断工具 Arthas 常见命令(超详细实战教程)(二)
Java 诊断工具 Arthas 常见命令(超详细实战教程)(二)
Java 诊断工具 Arthas 常见命令(超详细实战教程)(二)
|
Arthas Java 测试技术
阿里巴巴 Arthas 3.1.0版本:在线教程、内存编译器和强大的自动补全
`Arthas`是Alibaba开源的Java诊断工具,深受开发者喜爱。 从Arthas上个版本发布,已经过去两个多月了,Arthas 3.1.0版本不仅带来大家投票出来的新LOGO,还带来强大的新功能和更好的易用性,下面一一介绍。
9110 0
|
7月前
|
Arthas 监控 Java
Java 诊断利器 Arthas使用
Java 诊断利器 Arthas使用
233 0
|
7月前
|
Arthas 监控 Java
Arthas 可以用于监控和诊断在 Windows 系统下部署的 Tomcat 服务
Arthas 可以用于监控和诊断在 Windows 系统下部署的 Tomcat 服务
880 2
|
Arthas 监控 Java
开源Java诊断工具Arthas:开篇之watch实战
还在为排查Java程序线上问题头痛吗,看我们用阿里开源的诊断神器 Arthas 来帮您
571 1