Skip to main content
要体验 Monitors 功能,核心包含三个步骤:
1

安装 monitedge

部署告警引擎到私有网络
2

创建数据源

配置要监控的数据来源
3

创建告警规则

定义告警条件和通知方式

安装 monitedge

monitedge 需要部署在用户私有网络内,负责从 SaaS 同步告警规则,周期性查询数据源并进行阈值判定,产生告警事件并推送给 SaaS 端。 菜单入口:告警引擎 → 引擎安装/升级 支持 Linux、Docker、Kubernetes 三种安装方式。
引擎集群名字非常重要:相同名字的 monitedge 会组成一个集群,共同分片处理告警规则,避免单点故障。
  • 单套集群:保持默认的 default 即可
  • 多套集群(如美东机房、华南机房各一套):请为每套集群指定不同的名字
告警引擎安装

告警引擎状态

monitedge 安装完成后,会自动连接 SaaS 端并周期性同步告警规则。您可以在告警引擎状态页面查看当前状态信息。 长期没有心跳的引擎实例会展示删除按钮,可点击移除以避免引擎失联告警。

引擎失联告警

monitedge 挂掉影响很大,因此提供引擎失联告警。
多个实例组成的引擎集群,只要集群中有一个实例存活,就不会触发引擎失联告警。

创建数据源

菜单入口:数据源 → 新建 创建数据源

创建告警规则

菜单入口:告警规则 告警规则可能会很多,Monitors 提供树形分组结构进行分类管理。每个告警规则都要属于某个分组,您可以先创建分组,再在分组下创建告警规则。 创建/编辑告警规则的页面是一个单页表单,按编号分为五个区块:基础配置数据源查询检测方式检测频率 & 生效时间事件配置,自上而下排列,在一个页面内滚动填写即可,不再使用分步骤向导。

基础配置

基础配置

数据源选择

数据源选择 先选择 数据源类型。这里只会列出已经配置过至少一个数据源的类型——没有配置过的类型不会出现,避免你选中一个查不到任何数据源的类型。编辑一条已有规则时,它当前使用的类型始终可见,即使该类型下的数据源后来被删光了。 如果列表为空(提示「暂无可用数据源」),说明当前账户还没有配置任何数据源,可以点击 前往数据源管理页面 先创建;如果只是当前选中的类型没有可用数据源,页面会提示「当前数据源类型暂无可用数据源,请先创建数据源或切换类型」。类型列表加载失败时会显示 重新加载 按钮。 选定类型后,Monitors 支持一个规则生效到多个数据源,提供两种绑定方式:
  • 名称通配:通过通配符匹配数据源名称。* 匹配任意长度的字符串(* 匹配所有数据源,db-* 匹配所有以 db- 开头的数据源),? 匹配任意单个字符;还支持字符类,例如 db-[0-9] 匹配 db-0db-9svc-[a-z] 匹配 svc-asvc-z(字符范围按 Unicode 码点判断),[!0-9] 表示匹配非数字字符。存储的是名称字符串,数据源改名会影响匹配。
  • 精确匹配:从下拉列表中按 ID 选择具体数据源,不受数据源改名影响。
两种方式可以同时使用,至少需要填写一种。规则会生效到两种方式匹配到的所有数据源。
如果对规则绑定的稳定性要求高(避免数据源改名导致规则失效),建议使用精确匹配。详情参见数据源管理

查询检测方式

查询检测方式 配置如何查询数据源及如何判定告警条件。请阅读页面上 查询检测方式 右侧的使用说明。

检测频率与生效时间

该区块默认折叠,只显示一行摘要,格式为「检测频率 · 规则时区 · 生效时间」,例如 @every 15s · Asia/Shanghai · 全天生效;点击右侧的「展开」按钮可修改配置,修改完再点「收起」重新折叠。点击保存时,如果检测频率、规则时区、生效时间或查询时间偏移存在校验错误,该区块会自动展开,并滚动定位到第一个错误项。 检测频率 & 生效时间
时区填写规则
  • 规则时区只接受 IANA 标准时区名。LocalUTC+8CSTGMT+8 等简写或偏移量写法会被拒绝
  • cron 表达式不能以 CRON_TZ=TZ= 开头。如果您从开源 cron 系统迁移过来并习惯把时区内嵌在 cron 字符串里(例如 CRON_TZ=Asia/Shanghai 0 0 * * *),请去掉前缀,把时区填到规则时区字段中
cron 表达式格式规则
  • cron 表达式必须是 6 段秒级表达式,顺序为秒、分、时、日、月、周。5 段写法(例如 */5 * * * *)会被拒绝,需要补充秒字段(例如 0 */5 * * * *
  • 支持 @every 快捷写法,例如 @every 30s,表示每 30 秒检测一次。时长必须是不小于 1 秒的整数秒,支持 @every 1m30s 这类组合时长;@every 0s@every 1500ms 等亚秒或不满足整秒的写法会被拒绝
  • 修改已有规则时同样会校验检测频率,历史上保存的不合规表达式需要先修正才能保存
规则保存时还会校验运行时配置:重复通知的最大次数repeat_total)和重复间隔repeat_interval),以及各检测模式(阈值、数据存在、数据缺失)的连续命中次数连续恢复次数都必须 ≥ 1。校验失败的规则不会被调度执行,告警引擎会将失败原因上报为 alert-rule-schedule-invalid 问题,请根据错误信息修正规则配置。

事件配置

最大通知次数并不代表终端用户收到的消息提醒次数。因为 Monitors 产生的告警事件会投递到 On-call,可能会被聚合降噪,最终发送次数取决于 On-call 配置。

查看效果

完成配置后,如果告警条件触发,告警规则前的状态会变成 Triggered 告警规则列表页面
告警规则列表的搜索框支持按规则名称、规则 ID 或标签进行搜索过滤,方便快速定位规则。也可以通过 URL 参数 ?rule_id=<ID> 直接跳转到指定规则。
规则状态由 Flashmonit 当前活跃告警决定:Triggered 表示该规则至少有一个活跃告警,Healthy 表示当前没有活跃告警。 点击状态徽章(TriggeredHealthy),页面会切换到「活跃告警」标签页,并按该规则自动过滤(URL 参数 active_alert_rule_id),方便直接查看该规则当前产生的活跃告警。历史告警事件可到 On-call 中查看。详见活跃告警

规则运行详情

告警规则列表的每一行都提供运行时自省能力。点击行操作菜单(行尾 )中的运行详情,打开规则运行详情抽屉,帮助你判断规则的执行健康度并快速排障。 抽屉顶部可以选择要查看的数据源(规则可能绑定多个数据源),下方分为两个标签页:

当前状态

  • 状态徽章运行正常(normal)、执行异常(abnormal)、等待首次执行(waiting)、状态已过期(stale)。当中心配置已保存但 Edge 尚未上报新版本时,额外显示 配置待生效 标识;规则被禁用时显示 规则已停用 标识
  • 最近执行:执行时间、执行耗时、执行结果、查询结果数、最近成功、连续失败、运行阶段、状态更新时间
  • 告警实例:活跃实例总数,并按检测模式拆分为 Threshold(阈值判定)、AnyData(数据存在)、NoData(数据缺失),以及最近产生的事件类型(告警触发、重复通知、告警恢复、告警关闭)
  • Edge 与配置:负责该规则的 Edge 集群、Edge 实例、版本、在线状态和最近心跳
当状态为 等待首次执行状态已过期 时页面会给出原因提示;负责该规则的 Edge 不在线,或执行出现错误时,会以醒目横幅展示错误类型和错误摘要。

执行历史

按时间范围查询该规则的历史执行记录(支持最近 15 分钟、1 小时、4 小时、1 天,最长 24 小时)。每条记录带执行摘要徽章:执行失败产生事件告警恢复定期采样;展开后可查看日志入库时间、Edge 实例与集群、运行阶段、连续失败次数、各检测模式活跃实例数、产生的事件以及错误摘要。
执行历史依赖服务端 VictoriaLogs 查询:服务端未配置查询地址或查询服务不可用时会提示「执行历史暂不可用」。记录只包含关键执行摘要(异常、事件、恢复和定期采样),不保证每轮评估都生成记录;匹配记录超过 200 条时仅展示最近 200 条,请缩小时间范围。

批量操作

告警规则列表支持多选后进行批量操作,提升规则管理效率。

批量启用/禁用/删除

在列表中勾选多条规则后,可以一键批量启用、批量禁用或批量删除。

批量编辑字段

勾选多条规则后点击批量更新,可以统一修改以下 10 个字段: 操作方式:在批量更新面板中先选择要修改的字段,然后设置新值,点击确定即可批量应用到所有选中规则。 批量更新附加标签自定义字段时,使用专用的元数据编辑器,支持两种更新方式:
修改附加标签可能影响告警路由、聚合或降噪,请谨慎操作。
批量更新失败时,会提示失败条数和首个失败原因(例如「2 / 10 条规则更新失败,首个错误:…」),便于逐条排查。

批量移动

勾选多条规则后,可以将它们批量移动到其他文件夹中。

导入告警规则

菜单入口:告警规则 → 导入 导入采用文件上传方式,一次上传一个规则文件(.yaml.yml.json,不超过 1 MB)。系统会自动识别文件格式,并在导入前展示预检结果,支持以下四种来源:

导入配置

文件上传后可以配置:
  • 同名规则处理方式跳过同名规则(默认,目标分组中已有同名规则时不导入)或 创建副本(为同名规则创建副本)
  • 导入后启用规则:仅对 Flashduty Rules YAML 来源显示。关闭时,导入的 Flashduty 规则保持停用
  • 协作空间:指定告警事件投递的协作空间

预检结果

系统解析文件后展示预检结果表格,逐条列出规则的导入名称、状态(可导入 / 跳过 / 无效)和说明。你可以在表格中勾选要导入的规则(默认选中所有可导入规则),然后点击底部「导入 N 条规则」提交。
Nightingale 规则导入后统一保持停用,需检查数据源匹配和转换警告后再手动启用。常见的转换说明包括:Doris 数据源映射为 MySQL、仅保留最高级别告警条件、级别抑制/查询关联/通知目标等配置未保留、恢复语义按 Flashduty 规则能力近似转换、Local 时区转换为 Asia/Shanghai、全天生效时间转换为 00:00-23:59、缺少评估间隔时持续时间按 15 秒间隔换算等。

导入结果

提交后系统展示导入结果:成功、跳过和无效的条数。全部成功时提示导入成功;如果一条都没有导入成功,弹窗会保留,方便你查看跳过/无效的原因后重新选择。

导出告警规则

在列表中勾选需要导出的规则,点击导出按钮。系统以 YAML 格式(Flashduty Rules YAML bundle)展示所选规则的完整配置,你可以:
  • 下载:将 YAML 保存为 alert-rules.yaml 文件
  • 复制:将 YAML 内容复制到剪贴板
导出的 YAML 可用于备份,也可以通过文件上传方式导入到其他环境,详见导入告警规则

规则变更记录

每条告警规则都有完整的变更审计记录。你可以在规则详情中查看变更记录,了解规则的历史修改情况。

查看变更记录

变更记录列表展示每次操作的以下信息:

版本对比

在变更记录列表中勾选两条记录,点击对比按钮,系统会以 JSON diff 的方式展示两个版本之间的差异,帮助你快速了解具体修改了哪些配置项。