这个项目能做什么

ServiceRadar 是一个分布式网络监控系统,专为难以到达的地点或受限环境中的基础设施和服务而设计。它提供对内部服务的实时监控,并具备基于云的告警功能,确保即使在网络或电力中断期间也能及时获知情况。 ## 功能特性 - **分布式架构**:多组件设计(Agent、Gateway、Core),支持灵活的边缘部署。 - **WASM 插件系统**:使用 Go 或 Rust 编写的自定义检查安全地扩展监控能力。运行于硬件级沙箱中,零本地依赖,网络访问经由代理。 - **拓扑**:GPU 原生拓扑引擎,可通过 deck.gl 以 60fps 渲染数百万个交互式节点和边,使用 Apache Arrow 实现零拷贝流式传输,并具备 WASM 原生逻辑层。 - **自定义 React 仪表板**:使用 Dashboard SDK 构建强大的数据驱动仪表板,支持 SRQL 支撑的数据帧和热模块重载。 - **因果引擎**:通过 DeepCausality(Rust)实现实时分诊与隔离,在微秒级内识别根本原因并可视化隔离事件的影响范围。 - **异常引擎**:在边缘和核心对数值时间序列进行评分,提供持久化告警,而非嘈杂的逐样本报警。 - **SRQL**:直观的 key:value 语法,用于查询时间序列和关系型数据。 - **统一数据层**:由 CloudNativePG、TimescaleDB、PGVector 和 Dgraph 提供支持。 - **监控与可观测性**:支持 ICMP/TCP 检查、OTEL、GELF、Syslog、SNMP、BGP 和 NetFlow。 - **通知**:通过路由、升级策略和渠道(Slack、Discord、电子邮件、Webhook)发送告警。 - **Ansible 自动化**:针对清单设备运行 AWX/AAP playbook,并提供实时逐主机运行遥测。 - **安全性**:通过 mTLS、RBAC、SSO 集成、签名二进制文件和 WASM 插件以及附带的 SBOM 进行加固。 ## 架构 1. **Agent**:运行在被监控主机上的轻量级 Go 服务;管理 WASM 执行和本地采集。 2. **Agent-Gateway**:接收来自边缘 Agent 的 gRPC 流的摄取点。 3. **Core(core-elx)**:控制平面(Elixir/Phoenix/Ash),用于编排、ERTS 和作业调度。 4. **Web UI(web-ng)**:实时 LiveView 仪表板以及用于配置和可视化的 API。 5. **NATS**:NATS JetStream 消息代理,用于批量摄取流。 6. **Collectors**:采集 NetFlow、日志和 SNMP 等批量数据。