监控
基于 Prometheus 的实时基础设施健康和指标监控。
概述
Umoo 的监控系统与 Prometheus 服务器集成,可视化:
- 集群范围的资源使用(CPU、内存、网络)
- 每设备的遥测数据(Agent 运行时间、Ping RTT、磁盘、goroutine)
- 平台指标(数据库连接、入口吞吐量)
数据由每台设备上运行的 telemetry 插件采集,并由 Prometheus 抓取。
仪表盘
导航到监控查看主监控仪表盘。
仪表盘显示关键的集群范围面板:
- 集群资源使用 — 所有设备的聚合 CPU 和内存
- 数据库连接 — 活跃 Postgres 连接
- 入口吞吐量 — 来自设备的 MQTT 载荷流量
点击管理仪表盘 → 打开 Grafana 进行高级仪表盘创建。
设备监控标签
单个设备的遥测数据可在设备详情的监控标签页中查看。
面板按行组织:
健康行
| 面板 | 指标 |
|---|---|
| Agent 运行时间 | umoo-agent 运行了多长时间 |
| Ping RTT | 从后端到设备的往返时间 |
资源行
| 面板 | 指标 |
|---|---|
| CPU 使用率 | 所有核心的使用百分比 |
| 内存 | 堆内存使用量(MB) |
| 磁盘使用率 | 根文件系统使用百分比 |
网络行
| 面板 | 指标 |
|---|---|
| 网络接收 | 每秒接收字节数 |
| 网络发送 | 每秒发送字节数 |
系统行
| 面板 | 指标 |
|---|---|
| 负载均值(1分钟) | Linux 负载均值 |
| 进程数 | 运行中的进程数量 |
| Agent 堆 | Go 堆分配(MB) |
| Agent Goroutine | 活跃 goroutine 数量 |
遥测插件配置
telemetry 插件控制采集哪些指标及采集频率。
在设置 → 插件配置(租户级默认)或设备 → 分组 → [分组] → 插件下按设备组配置。
| 设置 | 描述 |
|---|---|
| 采集间隔 | 指标采集周期的秒数(默认:30) |
| 启用的指标 | 选择要采集的类别 |
指标类别
| 类别 | 指标 |
|---|---|
cpu | 所有核心的 CPU 使用百分比 |
memory | 堆内存使用量(MB) |
disk | 根文件系统磁盘使用百分比 |
network | 网络接口接收/发送字节数 |
runtime | Agent 运行时间、goroutine、内存分配、Go 版本 |
禁用某个类别会停止该数据的抓取并减少 Agent 资源消耗。
Prometheus 集成
Umoo 通过 /api/v1/metrics/ 代理 Prometheus 查询。监控 UI 使用此代理 — 不需要直接访问 Prometheus。
要配置 Prometheus URL,在服务器配置中设置:
yaml
prometheus:
url: http://prometheus:9090告警
告警通过 Alertmanager 单独管理。详见告警。