开源诊断工具Arthas

说明:

1、需要先要安装配置好jdk。

2、你的虚拟机得有网,没有网就按照压缩包上传解压。然后直接看三

一、官网

https://arthas.aliyun.com/doc/quick-start.html#_1-启动-math-game

二、下载和卸载

powershell 复制代码
# 下载
curl -O https://arthas.aliyun.com/arthas-boot.jar

# 卸载
rm -rf ~/.arthas/
rm -rf ~/logs/arthas

三、启动

powershell 复制代码
# 这个命令在要在有java进程的时候执行,作用是启动Arthas
java -jar arthas-boot.jar

这样就启动成功了

启动成功后,会生成两个文件夹

powershell 复制代码
~/.arthas/
~/logs/arthas


在.arthas里面,还可以找到官方演示用的例子,java -jar启动这个,后面用这个做说明

powershell 复制代码
ls ~/.arthas/lib/4.0.4/arthas//

4、快速启动跟进一个进程

启动一个进程,如官方的演示进程后,在启动arthas,选择需要跟进的进程,这块选演示进程了

注意:如果保存,可以杀死那个占用端口的进程,或者换一个端口

powershell 复制代码
# 这里 --telnet-port 9998 指定了一个新的 Telnet 端口号,
# 而 --http-port -1 表示禁用 HTTP 服务(如果不需要的话)。
# 你可以选择任何未被使用的端口号。
java -jar arthas-boot.jar --telnet-port 9998 --http-port -1

5、常用命令

  1. dashboard 仪表盘
    作用是展示一个仪表盘,按q退出
powershell 复制代码
dashboard
  1. cls

清屏

powershell 复制代码
cls
  1. thread
    查看所有线程,后面可以跟一个数字,表示要看哪一个线程
powershell 复制代码
thread
# 比如这里要看主线程相关状态可以写
thread 1


  1. jad

可以进行反编译你需要的类

powershell 复制代码
# 这里是反编译demo包下的MathGame类
jad demo.MathGame

5.watch

监视方法

powershell 复制代码
# 监视demo包下,MathGame类 primeFactors方法的返回值
watch demo.MathGame primeFactors returnObj
# 观察函数调用返回时的参数、this 对象和返回值
watch demo.MathGame primeFactors -x 2
# 观察函数调用入口的参数和返回值
$ watch demo.MathGame primeFactors "{params,returnObj}" -x 2 -b
# 同时观察函数调用前和函数返回后 
# 参数里-n 2,表示只执行两次-n 2
watch demo.MathGame primeFactors "{params,target,returnObj}" -x 2 -b -s -n 2
  1. 退出
powershell 复制代码
# 退了但是没有完全退,下次用可以直接连上
quit
# 这个是真退了,下次就是重现链接
stop
相关推荐
OasisPioneer4 小时前
现代 C++ 全栈教程 - Modern-CPP-Full-Stack-Tutorial
开发语言·c++·开源·github
冬奇Lab5 小时前
一天一个开源项目(第57篇):Unsloth - 2x 更快、70% 更省显存的 LLM 微调库
开源·aigc·资讯
lakernote6 小时前
EasyPostman 重大更新:正式支持插件模式,当前已上线 5 个官方插件
java·测试工具·开源·postman
奥升新能源平台9 小时前
奥升充电最小化高可用机房部署方案
运维·安全·开源·能源·springcloud
机器觉醒时代9 小时前
智元机器人赛事官方解读:双赛道升级,以开源生态共推具身智能落地
机器人·开源·具身智能·智元机器人
love530love10 小时前
Windows 开源项目部署评估与决策清单(完整版)
人工智能·windows·python·开源·github
梦梦代码精10 小时前
开源即商用,预期产出、风险与优化建议
人工智能·gitee·前端框架·开源·github
启山智软10 小时前
【智能商城系统技术架构优势】
java·spring·开源·商城开发
AI成长日志12 小时前
【GitHub开源项目专栏】扩散模型开源项目深度解析:Stable Diffusion与ControlNet架构全景
stable diffusion·开源·github
FreeBuf_12 小时前
新型开源供应链攻击:虚假 npm 安装日志暗藏 RAT 木马
前端·npm·开源