什么是 Monitors?
Flashduty Monitors 是一款统一告警引擎,能够对接各类指标、日志数据源,根据您配置的告警规则,周期性查询数据并进行阈值判定,产生告警事件后推送给 Flashduty On-Call 进行聚合发送。核心能力
多数据源支持
支持 Prometheus、VictoriaMetrics、Elasticsearch、ClickHouse 等主流数据源
灵活告警规则
支持阈值告警、同环比告警、无数据告警等多种告警类型
分布式架构
支持多机房部署,自动分片处理,保证高可用
深度集成
与 On-Call 深度集成,告警直达值班人员
架构设计
Flashduty 是 SaaS 服务,无法直接访问用户私有网络内的数据源,因此 Monitors 采用边缘计算架构:1
SaaS 服务端
负责管理告警规则、权限控制和告警事件聚合
2
monitedge 边缘节点
部署在用户私有网络内,从 SaaS 同步告警规则,周期性查询数据源并进行阈值判定
3
告警推送
边缘节点产生告警事件后,推送给 SaaS 端进行后续处理
如果您有多个机房,可以在每个机房部署独立的 monitedge 实例,分别负责各自机房内数据源的告警判定。
高可用部署
Monitors 支持集群部署,保证告警引擎的高可用:单机房集群
单机房集群
在同一机房部署多个 monitedge 实例,通过
--alerter.clusterName 参数设置相同的集群名字,系统会自动分片处理告警规则。多机房部署
多机房部署
不同机房部署独立的 monitedge 集群,每个集群使用不同的集群名字,分别处理各自机房的数据源。
故障转移
故障转移
如果集群中某个实例故障,其他实例会自动接管其负责的告警规则,既保证高可用,又避免告警重复发送。
告警规则类型
| 类型 | 说明 | 适用场景 |
|---|---|---|
| 阈值告警 | 指标超过/低于阈值时触发 | CPU、内存、磁盘等资源监控 |
| 同比告警 | 与历史同期对比,偏差超过阈值时触发 | 业务量、流量异常检测 |
| 环比告警 | 与前一周期对比,偏差超过阈值时触发 | 突增突降检测 |
| 无数据告警 | 指标停止上报时触发 | 服务存活检测 |
| 复合告警 | 多个条件组合判断 | 复杂业务场景 |
支持的数据源
Prometheus
支持 PromQL 查询
VictoriaMetrics
兼容 Prometheus 协议
Elasticsearch
支持日志告警
ClickHouse
支持 SQL 查询
MySQL
支持 SQL 查询
更多...
持续扩展中