超轻量级+无侵入!一款开源一站式问题定位平台,支持各种指标企业级监控
- 💂 个人网站: IT知识小屋
- 🤟 版权: 本文由【IT学习日记】原创、在CSDN首发、需要转载请联系博主
- 💬 如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连)和订阅专栏哦
简介
Cubic是一款可开箱即用的开源一站式问题定位平台,可用于微服务架构中各类生产环境的性能分析与问题定位。系统能够支持无侵入式接入,全面记录服务调用链路、线程状态、资源指标等信息,使用者可借助它快速排查问题和解决性能瓶颈。项目支持多语言、多框架环境,并提供可视化界面展示追踪数据,确保复杂的分布式系统运维变得轻松可控。
同时,系统具备良好的横向扩展能力,支持集群化部署和高并发场景,完整集成arthas功能模块,是企业构建高可用、高性能的应用级监控不可或缺的工具。
系统亮点
-
高兼容性: 无论部署在IDC、ECS还是Docker环境,均能稳定兼容,轻松适配各种基础架构
-
简洁易用: 开箱即用,无需任何配置,基于agent无侵入接入,升级应用端无感知,运维轻松
-
功能全面: 全面覆盖应用监控需求,包括基础指标、堆栈信息、线程池状态等多维度监控
-
高扩展: 提供良好的扩展接口,支持灵活定制和二次开发,满足多样化业务场景
项目模块
-
cubic-agent:负责采集应用运行数据的Agent
-
config:存放Agent配置文件,用于定制采集行为
-
cubic-proxy:数据代理应用,接收并转发来自Agent的数据
-
cubic-proxy-common:提供代理应用的公共基础参数
-
cubic-proxy-websocket:代理应用的WebSocket模块,用于页面与proxy之间的实时数据通信
-
cubic-ui:前端界面,展示各类功能和数据,打包完成后将dist目录内容拷贝到cubic-proxy使用
-
docs:项目文档,包含使用说明和开发指南
-
scripts:打包及启动脚本,支持快速构建和部署
-
agent-dist:打包后的完整 Agent 组件,可直接部署使用
-
agent-proxy-dist:打包后的 proxy 部署包(JAR 文件)
-
arthas-dist:集成Arthas命令集,用于应用诊断与调试
技术栈
后端:SpringBoot
认证模块:SpringBoot Security JWT技术
WebShell:基于Vue Xterm 、Websocket、Netty
Proxy与agent通信:基于Netty 、GRPC
功能模块
-
权限认证:提供用户身份验证和访问控制,确保系统安全可靠
-
实例列表:展示所有已注册的应用实例,方便查看和管理
-
实例心跳监测:实时跟踪实例状态,及时发现异常或宕机
-
实例基础信息采集:收集实例的基本运行信息,如名称、状态和启动时间
-
服务器信息采集:获取服务器硬件和操作系统信息,包括CPU、内存和磁盘使用情况
-
JVM 基础信息采集:采集JVM的运行状态,包括堆内存、非堆内存和垃圾回收情况
-
启动参数采集:记录应用启动时的JVM参数和系统配置,方便排查问题
-
依赖包检测:扫描应用依赖,了解所使用的库和版本,便于管理和升级
-
Arthas 动态命令集支持:集成Arthas命令,随时在线诊断和调试应用
-
历史线程栈获取(分钟级):按分钟记录线程栈,方便事后分析问题
-
实时线程栈获取:支持实时查看线程栈,快速定位线程异常
-
线程池监控:监控线程池的运行情况,包括活跃线程数、队列长度和拒绝策略
功能界面
实例中心(展示当前实例信息)

基础信息(点击实例-》展示当前实例的基础信息)

依赖监控(点击实例-》展示当前实例的依赖包信息)

Arthas命令操作


线程池监控

实时线程栈

历史线程栈

快速开始
1、执行cubic-proxy -> resources -> db -> init.sql 创建表
2、执行运行脚本 build-start.sh 打包部署应用
开源地址&使用手册
点击下方的【IT学习日记】回复【资源】领取!
如果这篇文章对您有帮助,请一定帮我点个 “关注” 和 “点赞”,这对我非常重要。我将会继续推荐更多优质项目和新闻。

写在最后
1000+优质开源项目更新进度:202/1000。如需更多类型优质项目推荐,请在文章后留言。

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐

所有评论(0)