还在一个个连接 Arthas?这个开源平台支持批量诊断 JVM

相信大家一定遇到过这种非常蛋疼的情况:

服务是集群部署,想用 arthas,就得一个一个连接上去,然后命令也是一条一条的执行。每次看个结果还得好几个命令行来回跳,非常难受有没有。

为了应对这个问题,在这里给大家推荐一款开源软件:

让 alibaba/arthas 从手动运维走向自动化:零侵入一键 attach JVM,无需手动上传与连接,作为命令执行网关提供安全的细粒度权限控制,支持 Docker / Kubernetes 接入,并集成 AI 实现自动化排障与智能诊断

废话不多说,直接上图:

在这里,我们连接了两个 MathGame 并且执行了一条 stack 命令,在左侧可以看到我们执行的命令列表,点击后就可以在右边看到每个 JVM 的 arthas 响应。

点击眼睛图标后,会弹出一个悬浮框查看具体的 arthas 响应。

平常由于负载均衡的存在,每次可能只会只有一个 JVM 有响应,当只有一个响应时,也可以清晰的看到结果:


你这个执行命令这么方便,但是 JVM 连接起来估计也很麻烦吧?

错,你只需要在页面上点几下,然后就可以交给后台自动连接了:

它会自动上传所需要的工具包(例如 arthas、jattach等),然后执行命令连接,我们只需要等着它自己连接完就可以了!

软件介绍

时序图:

特点:

  • 无需 jdk 环境也可以连接
  • 无需容器额外暴露端口
  • 对服务零侵入,全程自动化,拥有 arthas 的全生命周期管理
  • 支持 java8、java11、java17、java25(理论支持所有 8+ 版本,但只有这四个 LTS 版本进行了测试)
  • 具备权限管理,支持限制用户可以执行的命令
  • 支持 SSH + 本地JVM / SSH + Docker / Kubernetes
  • 服务零中间件依赖,支持开箱即用(数据库默认使用 SQLite,多人使用时推荐切换到 PostgreSQL)

可以直接在线体验已有演示环境:

spectreproject.click/

用户名密码:public / P@ssw0rd

其它特性

热更新

支持在页面上传 class 文件进行热更新,再也不用手动一个一个传了!

大模型诊断

服务已接入 AI,支持通过大模型诊断/询问

反编译

获取近似代码编译器的体验,帮我我们更好的观察代码。

Dashboard

更直观的 dashboard,帮助你快速定位系统问题。

快速启动

shell 复制代码
# No stdout under prod profiles. 
docker run -t --rm -p 8080:8080 vudsen/spectre:latest java -Dspring.profiles.active=dev -jar spectre.jar

启动后访问 http://localhost:8080,默认用户名和密码是 admin / P@ssw0rd

项目地址

vudsen/spectre

欢迎大家提意见,能点个 star 就是对我最大的支持了!

相关推荐
SL_staff1 小时前
《如何用规则引擎替代if-else?JVS-Rules可视化编排比硬编码强在哪里?》
java·低代码·架构
Sam_Deep_Thinking1 小时前
java中的class到底是个什么东西?
java·开发语言·面试
swordbob1 小时前
Spring 3 级缓存解决循环依赖
java·spring
摇滚侠1 小时前
SpringMVC 入门到实战 获取请求参数 25-32
java·spring·intellij-idea
咖啡八杯1 小时前
【无标题】
java·后端·设计模式
mqiqe1 小时前
面试题-MyBatis 面试篇
java·面试·mybatis
摇滚侠1 小时前
SpringMVC 入门到实战 @RequestMapping 14-24
java·spring
云烟成雨TD2 小时前
Spring AI Alibaba 1.x 系列【80】可观测集成
java·人工智能·spring
Filwaod2 小时前
MCP 接入模式对比:Agent - Gateway - 业务项目 vs Agent - Adapter - 业务项目
java·agent·mcp