开源诊断工具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
相关推荐
冬奇Lab3 小时前
一天一个开源项目(第25篇):Clawra - 为 OpenClaw 赋予「自拍」能力的 Skill
人工智能·开源·资讯
说私域4 小时前
流量思维向长效思维转型:开源链动2+1模式AI智能名片小程序赋能私域电商品牌建设
人工智能·小程序·开源·产品运营·私域运营
无巧不成书02185 小时前
【RN鸿蒙教学|第11课时】应用打包与部署实战:完成从开发到落地的全闭环
react native·华为·开源·交互·harmonyos
caol6417 小时前
「文颜」家族迎来大幅更新
开源
无巧不成书021821 小时前
【RN鸿蒙教学|第7课时】表单开发实战:TextInput输入+表单验证+鸿蒙多终端适配
react native·华为·开源·交互·harmonyos
紫微AI1 天前
OpenClaw:从周末实验到现象级开源 AI 代理
人工智能·开源
冬奇Lab1 天前
一天一个开源项目(第24篇):OpenClawInstaller - 一键部署私人 AI 助手 OpenClaw
人工智能·开源·资讯
正宗咸豆花1 天前
开源大模型涨价策略分析:Llama 3.5 与 GLM-5 的商业化博弈
开源·llama
名字太难起了QAQ1 天前
基于AT89S52单片机的“流水灯与蜂鸣器配合”实验
开源
御坂10101号1 天前
Total Recall:让 Claude 学会忘记,优化记忆管理
经验分享·vscode·开源·软件工程·ai编程