Arthas 4.1.5 宣布:新增堆内存分析功能,watch/trace 等敕令支撑 ClassLoader 精确匹配
本次版本主要新增堆内存分析功能、MCP viewfile 工具、watch/trace 等命令支持 ClassLoader 精确匹配等特性。 🚀 新特性 (Features) 1. vmtool 新增堆内存分析功能 (#1915, #3122) 感谢 @yuankong11 新增两个强...
应用介绍
本次版本重要新增堆内存分析功能、MCP viewfile 对象、watch/trace 等敕令支撑 ClassLoader 精确匹配等特点。
🚀 新特点 (Features)
1. vmtool 新增堆内存分析功能 (#1915, #3122)
感激 @yuankong11
新增两个强大年夜的堆内存分析 action:
heapAnalyze - 分析堆内存占用
vmtool --action heapAnalyze --classNum 5 --objectNum 3
-
从 GC Root 可达对象出发,统计各个类的实例数量与占用字节数
-
支撑
--classNum指定展示的类数量,--objectNum指定展示的对象数量
referenceAnalyze - 分析对象引用链
vmtool --action referenceAnalyze --className java.lang.String --objectNum 5 --backtraceNum 3
-
分析某个类的实例对象,输出占用最大年夜的若干对象及其引用回溯链(从对象回溯到 GC Root)
-
支撑
--backtraceNum参数指定回溯层数(-1 表示一向回溯到 root,0 表示不输出引用链)
$ vmtool --action referenceAnalyze --className demo.MathGameid #bytes class_name & references----------------------------------------------------1 16 demo.MathGame <-- root(local variable in method: main)
2. watch/trace/stack/tt/monitor 支撑 ClassLoader Hash (#3120)
所有加强类敕令新增 -c/--classloader 参数,支撑指定 ClassLoader 精确加强:
sc -d com.example.Foowatch -c 3d4eac69 com.example.Foo bar '{params,returnObj}'trace -c 3d4eac69 com.example.Foo barstack -c 3d4eac69 com.example.Foo bar
-
解决同名类被多个 classloader 加载时的加强歧义问题
-
可先用
sc -d查看 classloader hash,再用-c指定
3. MCP 新增 viewfile 对象 (#3121)
支撑 cursor/offset 分段读取,避免一次性返回大年夜量内容
支撑目次白名单设备(情况变量 ARTHAS_MCP_VIEWFILE_ALLOWED_DIRS)
默认许可目次:arthas-output、~/logs/
4. AnsiLog 可设备输出流 (#3128)
-
AnsiLog 支撑自定义输出流设备,不再硬编码应用 System.out
-
便于日记输出的灵活控制和重定向
5. as-package.sh 支撑 --fast 模式
打包脚本新增 --fast 参数,支撑快速打包模式,晋升开辟效力。
🐛 Bug 修复 (Bug Fixes)
1. 修复 MCP 禁用时拜访 arthas-output 的空指针异常 (#3127)
输出占用最大年夜的若干对象与类
修复当 MCP 功能禁用时,拜访 arthas-output 目次会抛出 NullPointerException 的问题。
📦 依附更新 (Dependencies)
-
修复 EnhancerTest 测试用例
-
MCP Server 新增文件查看对象,支撑分段读取大年夜文件:
-
进级 byte-buddy 依附至 1.18.3 版本
🔧 工程改进 (Engineering)
1. 新增 Telnet 停止泄漏集成测试 (#3125)
-
新增 telnet-stop-leak 测试目次
-
包含主动化测试脚本和 expect 脚本
-
新增 GitHub Actions 工作流支撑
2. MCP 集成测试加强
-
$ vmtool --action heapAnalyze --classNum 5 --objectNum 5class_number: 5367object_number: 140379id #bytes class_name----------------------------------------------------1 65552 byte[]2 65552 byte[]3 63024 byte[]4 61032 byte[]5 55736 byte[]id #instances #bytes class_name----------------------------------------------------1 9052 7573224 byte[]2 26045 1721600 char[]3 3204 770376 java.lang.Object[]4 25810 619440 java.lang.String5 5376 605216 java.lang.Class新增 profiler 和 viewfile 对象的集成测试
-
新增 ViewFileToolTest 单位测试
3. EnhancerTest 修复与加强
-
新增 ClassLoader hash 加强相干测试
-
©软件著作权归作者所有。本站所有软件均来源于网络,仅供学习使用,请支持正版!
转载请注明出处: FQPY » Arthas 4.1.5 宣布:新增堆内存分析功能,watch/trace 等敕令支撑 ClassLoader 精确匹配

发表评论 取消回复