从“会敲 Arthas 命令”到“会做线上诊断”:我做了一个 Arthas Agent 工具

线上 Java 故障排查这件事,很多团队都经历过同一个痛点:

  • Arthas 很强,但学习成本高;
  • 排障不是"会几条命令"就行,而是要有完整路径;
  • 最耗时间的不是敲命令,而是每一步怎么收敛、怎么控风险、怎么给出结论。

正好最近看到了阿里写的这个 《我们做了比你更懂 Java 的 AI-Agent -- Arthas Agent》 正好我们项目也经常用 Arthas 排查问题,但是这个项目没开源。但是查阅Arthas 的开源项目发现除了这个可视化页面,其实阿里已经把所有的步骤都开源了。还是很感谢阿里的开源大佬。

如果我们的项目如果出现了问题比如CPU 升高,我们可能需要在机器上 使用dashboard 查看CPU/线程/GC 概况,使用 thread 找出最忙的前 N 个线程并打印堆栈,找到可疑的方法优先使用 stack / trace 针对该方法观察,最后得出结论在不断的验证自己的排查方法。但是如果是一个经验不足的人可能会走很多的弯路。

但是现在有了这个Agent 就可以大大降低我们开发人员的门槛。我们只需要通过自然语言询问这个 Agent 让Agent 来帮我们做这件事就好。

来兄弟们咱们看一下调用的大致链路

在介绍一下这个项目都使用什么技术:

  • Spring Boot 3.5.11
  • Java 17
  • AgentScope 1.0.10(阿里开源的 Agent 框架)
  • MCP (AI 和项目桥梁)
  • Skill (AI 的技能包大佬沉淀的经验)

来上场景

  • 查询当前服务的环境变量是什么
  • 代码反编译
    有时候需要看第三方库的源码,或者线上代码和本地不一致:
    用户:查看 com.example.Service 的源码
    AI:正在执行 jad 命令...返回反编译后的代码

当然很多案例就不一一在这里描述。

最后在简单介绍一下 MCP 、Arthas、Skill

  • MCP(Model Context Protocol)
    可以理解为 AI 和外部工具之间的"标准接口协议"。
    有了 MCP,Agent 就能安全、规范地调用外部能力(比如执行 Arthas 命令、查系统信息、读日志等),而不只是纯聊天。
  • Skill(技能)
    Skill 是一套"可复用的处理剧本/能力包"。
    它把某类问题的排查步骤、约束和最佳实践固化下来。比如"CPU 飙高排查"就是一个 Skill,Agent 会按预定义路径一步步诊断,而不是每次临时发挥。
  • Arthas
    Arthas 是阿里开源的 Java 在线诊断工具。
    最大特点是 不重启应用 就能排查问题:看线程、看 CPU、trace 方法耗时、watch 入参返回值、查类加载等,常用于线上故障定位。

一句话串起来这个项目就是 大模型是大脑, Arthas 负责"诊断能力",Skill 负责"诊断方法论",MCP 负责"让 Agent 稳定调用这些能力"。

最后最后把这个demo 放到了这个 github 上。项目地址: https://github.com/liuee123/arthas-agent-util

如果大家有兴趣,欢迎一起交流讨论!👋

本文基于个人学习经历整理,如有错误欢迎指正。

相关推荐
終不似少年遊*4 小时前
【Skill】为中型研发团队制作的敏捷迭代AI副驾Skill
人工智能·python·华为云·agent·ai编程·skill
QianhangQianping4 小时前
撤销重做不是「存快照」:一个可视化编辑器的Operation 设计
java·前端·数据库·typescript·编辑器·前端架构·撤销重做
海绵宝宝转agent4 小时前
LeetCodehot100题解
java·笔记·学习·算法·leetcode·深度优先
SunnyDays10114 小时前
Java 操作 Word 脚注和尾注:添加、读取与删除
java·word
SunnyDays10114 小时前
Java 为 Word 添加页码:隐藏封面页码、从指定页开始编号、奇偶页页码设置等
java·word·页码
开源推荐官4 小时前
多门店 O2O 商城选型复盘:从开发视角对比主流开源系统
java·架构·开源·php
吴名氏.4 小时前
Java转AI Agent教程(第二周)超时重试与错误分类
java·人工智能·python·分类·ai agent
lee_curry5 小时前
第十周完整学习笔记:继续升级为“检索更准、权限安全、索引可维护、失败可恢复、长期可运行”的企业级 RAG 系统
python·ai·langchain·agent·langgraph
从琳开始9895 小时前
从Socket到UDP回显服务器:Java网络编程完整指南
java·网络·网络协议·udp·java-ee
软件技术NINI5 小时前
基于SpringBoot和Vue的摇滚乐鉴赏网站
vue.js·spring boot·后端·spring·html·毕业设计·毕设