Arthas

Arthas 官方版 v3.6.7

软件大小:5.23MB
软件类型:国产软件
软件语言:简体
软件授权:免费软件
软件分类: java相关
支持系统:

Arthas官方版是一款功能强大、实用出色的开源 Java 问题诊断工具,可精准诊断 Java 代码相关问题,支持自动替换 class 文件。其最新版能够分析类的 jar 包加载来源,实时监控 JVM 运行状态,支持线上线下重现用户数据处理问题,助力开发者高效排查定位线上故障,是 Java 开发与运维场景中专业可靠的问题诊断利器,大幅提升问题排查效率。

截图
软件亮点

定位性能瓶颈:通过 dashboard 命令实时查看应用的 CPU、内存使用情况,结合 trace 命令追踪方法调用链路,快速定位性能瓶颈。

分析内存泄漏:使用 heapdump 命令生成堆内存快照,结合 MAT 等工具分析内存泄漏源头。

诊断业务问题:通过 watch 命令监控方法的调用情况,查看入参、返回值和异常信息,帮助诊断业务问题。

紧急 bug 修复:在不需要重启应用的情况下,使用 redefine 命令动态修改类的字节码,实现热更新,快速修复紧急 bug。

线程问题排查:使用 thread 命令查看线程堆栈信息,分析线程阻塞、死锁等问题。

软件特色

无侵入性:无需修改应用代码或重启应用,即可进行监控和诊断,降低了对生产环境的影响。

功能全面:覆盖类查询、方法监控、性能分析、JVM 诊断、热更新等全场景,满足开发者多样化的需求。

操作简单:提供丰富的命令行工具和友好的交互界面,支持 Tab 键自动补全命令,降低了使用门槛。

高性能:基于 Java Instrumentation 与 ASM 技术实现,对应用性能影响小,适合在生产环境中使用。

可扩展性强:支持自定义命令插件,开发者可以根据需要扩展 Arthas 的功能。

截图

软件功能


实时诊断:Arthas 能够在不重启 Java 应用的情况下,实时查看应用的线程状态、JVM 信息、内存使用情况等,帮助开发者快速定位问题。

动态追踪:支持实时动态追踪方法调用和线程堆栈信息,方便定位性能瓶颈和复杂错误调用流。

内存分析:提供 Heap Dump、Histogram、Classloader Stats 等命令,帮助开发者分析内存泄漏、优化内存使用。

热更新代码:允许开发者在运行时动态修改类的字节码,实现热更新,无需重启应用即可修复紧急 bug。

条件表达式断点:支持设置条件表达式,当条件满足时暂停应用执行,类似于调试器的断点功能,但更加灵活。

火焰图生成:集成 async-profiler,支持生成 CPU 和内存分配的火焰图,直观展示性能热点。

截图

常见问题


Arthas 启动时内存溢出

可能原因:目标 Java 进程的堆内存不足,Arthas 尝试加载时引发 java.lang.OutOfMemoryError: Java heap space 错误。

解决方案:

检查目标 Java 进程的实际内存使用情况,确认是否确实存在内存紧张的情况。可以使用 jmap、jstat 等 JDK 自带工具,或是通过 Arthas(如果能成功启动的话)的 dashboard 命令来观察。

调整 Java 虚拟机内存设置,增加 -Xms(初始堆大小)和 -Xmx(最大堆大小)的值。例如,如果原来设置为 -Xms1g -Xmx1g,可以尝试增大到 -Xms2g -Xmx2g 或根据实际需求和服务器资源进行调整。

重启目标 Java 应用以使内存设置生效,随后再次尝试启动 Arthas。

Arthas下载地址

Windows版下载
普通下载:
Arthas

Arthas