1
安装 monitedge
部署告警引擎到私有网络
2
创建数据源
配置要监控的数据来源
3
创建告警规则
定义告警条件和通知方式
安装 monitedge
monitedge 需要部署在用户私有网络内,负责从 SaaS 同步告警规则,周期性查询数据源并进行阈值判定,产生告警事件并推送给 SaaS 端。
菜单入口:告警引擎 → 引擎安装/升级
支持 Linux、Docker、Kubernetes 三种安装方式。
告警引擎状态
monitedge 安装完成后,会自动连接 SaaS 端并周期性同步告警规则。您可以在告警引擎状态页面查看当前状态信息。
长期没有心跳的引擎实例会展示删除按钮,可点击移除以避免引擎失联告警。
引擎失联告警
monitedge 挂掉影响很大,因此提供引擎失联告警。
多个实例组成的引擎集群,只要集群中有一个实例存活,就不会触发引擎失联告警。
创建数据源
菜单入口:数据源 → 新建
创建告警规则
菜单入口:告警规则 告警规则可能会很多,Monitors 提供树形分组结构进行分类管理。每个告警规则都要属于某个分组,您可以先创建分组,再在分组下创建告警规则。 创建/编辑告警规则的页面是一个单页表单,按编号分为五个区块:基础配置、数据源、查询检测方式、检测频率 & 生效时间、事件配置,自上而下排列,在一个页面内滚动填写即可,不再使用分步骤向导。基础配置
数据源选择
先选择 数据源类型。这里只会列出已经配置过至少一个数据源的类型——没有配置过的类型不会出现,避免你选中一个查不到任何数据源的类型。编辑一条已有规则时,它当前使用的类型始终可见,即使该类型下的数据源后来被删光了。
如果列表为空(提示「暂无可用数据源」),说明当前账户还没有配置任何数据源,可以点击 前往数据源管理页面 先创建;如果只是当前选中的类型没有可用数据源,页面会提示「当前数据源类型暂无可用数据源,请先创建数据源或切换类型」。类型列表加载失败时会显示 重新加载 按钮。
选定类型后,Monitors 支持一个规则生效到多个数据源,提供两种绑定方式:
- 名称通配:通过通配符匹配数据源名称。
*匹配任意长度的字符串(*匹配所有数据源,db-*匹配所有以db-开头的数据源),?匹配任意单个字符;还支持字符类,例如db-[0-9]匹配db-0到db-9、svc-[a-z]匹配svc-a到svc-z(字符范围按 Unicode 码点判断),[!0-9]表示匹配非数字字符。存储的是名称字符串,数据源改名会影响匹配。 - 精确匹配:从下拉列表中按 ID 选择具体数据源,不受数据源改名影响。
查询检测方式
配置如何查询数据源及如何判定告警条件。请阅读页面上 查询检测方式 右侧的使用说明。
检测频率与生效时间
该区块默认折叠,只显示一行摘要,格式为「检测频率 · 规则时区 · 生效时间」,例如@every 15s · Asia/Shanghai · 全天生效;点击右侧的「展开」按钮可修改配置,修改完再点「收起」重新折叠。点击保存时,如果检测频率、规则时区、生效时间或查询时间偏移存在校验错误,该区块会自动展开,并滚动定位到第一个错误项。
规则保存时还会校验运行时配置:重复通知的最大次数(
repeat_total)和重复间隔(repeat_interval),以及各检测模式(阈值、数据存在、数据缺失)的连续命中次数和连续恢复次数都必须 ≥ 1。校验失败的规则不会被调度执行,告警引擎会将失败原因上报为 alert-rule-schedule-invalid 问题,请根据错误信息修正规则配置。事件配置
最大通知次数并不代表终端用户收到的消息提醒次数。因为 Monitors 产生的告警事件会投递到 On-call,可能会被聚合降噪,最终发送次数取决于 On-call 配置。
查看效果
完成配置后,如果告警条件触发,告警规则前的状态会变成Triggered。
规则状态由 Flashmonit 当前活跃告警决定:Triggered 表示该规则至少有一个活跃告警,Healthy 表示当前没有活跃告警。
点击状态徽章(Triggered 或 Healthy),页面会切换到「活跃告警」标签页,并按该规则自动过滤(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 内容复制到剪贴板