01-Arthas安装与快速入门

Arthas是一款由Alibaba开源的Java诊断工具,适用于解决类加载、代码修改等问题。本文介绍了Arthas的安装过程,包括arthas-boot.jar和as.sh的使用方法,并详细讲解了快速入门,包括dashboard仪表板、thread命令、jad反编译、watch监视等常用命令的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

0 学习目录

  1. 01-Arthas安装与快速入门
  2. 02-Arthas中JVM相关命令
  3. 03-Arthas中class或classloader相关命令
  4. 04-Arthas中方法相关命令
  5. 05-Arthas常用实战积累

1. Arthas(阿尔萨斯)概述

Arthas 是Alibaba开源的Java诊断工具,深受开发者喜爱。

_images/arthas.png

当你遇到以下类似问题而束手无策时,arthas可以帮助你解决:

  1. 这个类是从哪个jar包加载的?为什么会报各种类相关的Exception?
  2. 我改的代码为什么没有执行到?难道是我没Commit?分支搞错了?
  3. 遇到问题无法在线上debug,难道只能通过加日志再重新发布?
  4. 线上遇到某个用户的数据处理有问题,单线上同样无法debug,线下无法再现。
  5. 是否有一个全局视角来查看系统的运行状况?
  6. 有什么办法可以监控到JVM的实时运行状态?
  7. 怎么快速定位应用的热点,生成火焰图?

2. 安装Arthas

2.1 运行环境要求

Arthas 支持 JDK6+, 支持Linux/Mac/Windows,采用命令行交互模式,同事提供丰富的Tab自动补全功能,进一步方便进行问题的定位和诊断。

2.2 快速安装

2.2.1 使用arthas-boot.jar

  1. 下载arthas-boot.jar,然后用java -jar的方式启动:

    curl -O https://arthas.aliyun.com/arthas-boot.jar
    java -jar arthas-boot.jar
    
    # 启动arthas-boot.jar时需要后台有正在运行的java进程,否则会无法启动,错误信息如下
    [ligen@center_server ~]$ java -jar arthas-boot.jar 
    [INFO] arthas-boot version: 3.4.6
    [INFO] Can not find java process. Try to pass <pid> in command line.
    Please select an available pid.
    
  2. 启动并选中java进程,成功安装并启动arthas

    [ligen@center_server ~]$ java -jar arthas-boot.jar
    [INFO] arthas-boot version: 3.4.6
    [INFO] Found existing java process, please choose one and input the serial number of the process, eg : 1. Then hit ENTER.
    * [1]: 32416 docker-demo.jar
    1
    [INFO] Start download arthas from remote server: https://arthas.aliyun.com/download/3.4.6?mirror=aliyun
    [INFO] File size: 11.99 MB, downloaded size: 3.38 MB, downloading ...
    [INFO] File size: 11.99 MB, downloaded size: 6.47 MB, downloading ...
    [INFO] File size: 11.99 MB, downloaded size: 10.08 MB, downloading ...
    [INFO] Download arthas success.
    [INFO] arthas home: /home/ligen/.arthas/lib/3.4.6/arthas
    [INFO] Try to attach process 32416
    [INFO] Attach process 32416 success.
    [INFO] arthas-client connect 127.0.0.1 3658
      ,---.  ,------. ,--------.,--.  ,--.  ,---.   ,---.                           
     /  O  \ |  .--. ''--.  .--'|  '--'  | /  O  \ '   .-'                          
    |  .-.  ||  '--'.'   |  |   |  .--.  ||  .-.  |`.  `-.                          
    |  | |  ||  |\  \    |  |   |  |  |  ||  | |  |.-'    |                         
    `--' `--'`--' '--'   `--'   `--'  `--'`--' `--'`-----'                          
                                                                                    
    
    wiki      https://arthas.aliyun.com/doc                                         
    tutorials https://arthas.aliyun.com/doc/arthas-tutorials.html                   
    version   3.4.6                                                                 
    pid       32416                                                                 
    time      2021-01-30 15:14:01     
    
  3. 启动时打印帮助信息

    java -jar arthas-boot.jar -h
    
  4. 下载较慢使用阿里云镜像:

    java -jar arthas-boot.jar --repo-mirror aliyun --use-http
    

2.2.2 使用as.sh

Arthas 支持在 Linux/Unix/Mac 等平台上一键安装,请复制以下内容,并粘贴到命令行中,敲 回车 执行即可:

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

上述命令会下载启动脚本文件 as.sh 到当前目录,你可以放在任何地方或将其加入到 $PATH 中。

直接在shell下面执行./as.sh,就会进入交互界面。

也可以执行./as.sh -h来获取更多参数信息。

2.3 全量安装

最新版本,点击下载:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Xy2e9kso-1616728542970)(img/arthas-packaging.svg)]

解压后,在文件夹里有arthas-boot.jar,直接用java -jar的方式启动:

java -jar arthas-boot.jar

打印帮助信息:

java -jar arthas-boot.jar -h

3. 快速入门

  1. 启动arthas-demo.jar文件

    arthas-demo是一个简单的程序,每隔一秒生成一个随机数,再执行质因数分解,并打印出分解结果。

    arthas-demo源代码:查看

    [ligen@center_server ~]$ cd ./.arthas/lib/3.4.6/arthas/
    [ligen@center_server arthas]$ ls -alrt
    总用量 13216
    drwxr-xr-x. 3 ligen wheel       20 1月  30 15:13 ..
    -rw-r--r--. 1 ligen wheel     8889 1月  30 15:13 arthas-spy.jar
    -rw-r--r--. 1 ligen wheel 12866578 1月  30 15:14 arthas-core.jar
    -rw-r--r--. 1 ligen wheel     2020 1月  30 15:14 logback.xml
    -rw-r--r--. 1 ligen wheel      311 1月  30 15:14 arthas.properties
    -rw-r--r--. 1 ligen wheel     8438 1月  30 15:14 arthas-agent.jar
    -rw-r--r--. 1 ligen wheel   428578 1月  30 15:14 arthas-client.jar
    -rw-r--r--. 1 ligen wheel      635 1月  30 15:14 install-local.sh
    -rw-r--r--. 1 ligen wheel    32131 1月  30 15:14 as.sh
    -rw-r--r--. 1 ligen wheel     3091 1月  30 15:14 as.bat
    -rw-r--r--. 1 ligen wheel     4484 1月  30 15:14 arthas-demo.jar
    -rw-r--r--. 1 ligen wheel   138993 1月  30 15:14 arthas-boot.jar
    -rw-r--r--. 1 ligen whee
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值