Skip to main content
华为云应用运维管理(Application Operations Management,AOM)可以通过 SMN 消息通知或 Webhook 数据订阅,将告警与恢复事件发送到 Flashduty On-call。两种方式使用同一个 AOM 集成推送地址。
推荐使用 SMN 消息通知,该方式适用于常规账号。AOM Webhook 数据订阅目前受限开放,仅在您的账号已开通该能力时使用。

在 Flashduty On-call 创建集成

您可通过以下两种方式获取集成推送地址,任选其一。

使用专属集成

如果您只需将告警发往一个协作空间,选择此方式,配置更简单。
  1. 进入 Flashduty 控制台,选择 协作空间,进入目标协作空间。
  2. 选择 配置 → 集成数据 → 专属集成,点击 新增一个集成。
  3. 选择 华为云 AOM 集成,单击 保存。
  4. 打开生成的集成卡片,复制 推送地址。

使用共享集成

当您需要根据告警 Payload 将事件路由到不同的协作空间时,选择此方式。
  1. 进入 Flashduty 控制台,选择 集成中心 → 告警事件。
  2. 选择 华为云 AOM 集成并填写集成名称。
  3. 配置默认路由并选择协作空间。创建后可在 路由 中继续配置路由规则。
  4. 单击 保存,复制生成的 推送地址。

接入前准备

  • 已在 Flashduty 创建 华为云 AOM 集成并取得 HTTPS 推送地址。
  • 已在华为云创建或准备好 AOM 告警规则。
  • 使用 SMN 时,当前账号需要具备创建主题、订阅主题以及查看主题的权限。
  • 告警规则需要同时发送 告警触发 和 告警恢复 通知。

方式一:通过 SMN 接入

创建 SMN 主题与订阅

1

创建 SMN 主题

  1. 登录华为云控制台,进入 消息通知服务 SMN。
  2. 选择 主题管理 → 主题,单击 创建主题。
  3. 将主题名称设置为 Flashduty,然后保存。
    在华为云 SMN 中创建 Flashduty 主题
2

添加 HTTPS 订阅

  1. 在 Flashduty 主题中单击 添加订阅。
  2. 协议选择 HTTPS。
  3. 在订阅终端中填写 Flashduty AOM 集成的 推送地址,然后保存。
    为 SMN 主题添加 Flashduty HTTPS 订阅
    Flashduty 会验证 SMN 的订阅确认请求并自动访问华为云确认地址。订阅状态变为 已确认 后,SMN 才会发送告警。

配置 AOM 消息模板

在 AOM 2.0 控制台进入 告警中心 → 告警通知 → 消息模板。部分控制台版本中的入口名称为 告警 → 告警行动规则 → 消息模板。 创建消息模板时,通知方式选择 HTTP/HTTPS。Flashduty 支持以下两种正文格式:
HTML 模板支持中文和英文。建议在正文第一行增加上报类型,Flashduty 将优先使用该字段识别告警与恢复。中文模板
英文模板
每个字段单独占一行并保留结尾分号。资源标识可以跨多行,Flashduty 会解析其中的键值对并生成标签。

创建告警通知规则

1

关联 SMN 主题与消息模板

  1. 在 AOM 2.0 控制台进入 告警中心 → 告警通知。
  2. 在 通知规则管理 中创建告警通知规则。
  3. 选择前面创建的 Flashduty SMN 主题和 AOM 消息模板。
2

发送触发与恢复通知

在 AOM 告警规则中启用通知,并确保通知场景同时包含 告警触发 和 告警恢复。
3

验证接入

触发一条测试告警,然后恢复该告警。回到 Flashduty 集成页面,确认最新事件时间已更新,并在告警详情中检查等级、资源和恢复状态。

方式二:通过 AOM Webhook 数据订阅

AOM Webhook 数据订阅目前受限开放。如果控制台没有 Webhook 告警订阅选项,请提交华为云工单申请开通,或使用上面的 SMN 方式。
账号已开通该能力时,可在 AOM 2.0 控制台进入 设置 → 全局设置 → 数据订阅,创建 Webhook 告警订阅规则,并将目标地址设置为同一个 Flashduty AOM 集成推送地址。 Webhook 请求需要使用 AOM 官方的结构化事件格式:
单次请求最多包含 100 个事件。结构化数据中的 id、starts_at 以及六个核心 metadata 字段必须有有效值。

告警与恢复关联

Flashduty 按以下优先级识别恢复: 华为云中文模板的 clear_type 枚举值为 触发 和 恢复;英文模板的枚举值为 generated 和 cleared。Flashduty 优先使用这些值判断告警与恢复。
SMN HTML 没有可用的上报类型时,主题中包含“恢复”、_resolved、_recovered 或 _clear 也会被识别为恢复。
告警与恢复必须保持以下字段一致:
  • metadata.event_type
  • metadata.event_name
  • metadata.resource_provider
  • metadata.resource_type
  • metadata.resource_id
Flashduty 使用这些字段生成告警指纹。id 会保存为标签,但不参与告警与恢复关联,因此告警通知和恢复通知的 ID 可以不同。 如果两个独立告警的上述五个字段完全相同,Flashduty 会将其视为同一告警。请确保 metadata.event_name 或 metadata.resource_id 能区分需要独立处理的告警。

字段与等级映射

常用 AOM 字段会转换为 Flashduty 标签: 告警等级映射如下:

常见问题

确认订阅终端使用完整的 HTTPS 集成推送地址,并且地址中的 integration_key 未被修改。Flashduty 仅会自动访问合法的华为云 HTTPS 确认地址。
SMN 的 signature 与消息正文、消息 ID、subject、主题、时间和消息类型绑定。修改任一字段后,原签名都会失效。请通过 AOM 和 SMN 发送真实测试通知,不要复制并修改历史请求。
确认告警规则发送了恢复通知。HTML 模板建议加入 ${clear_type};SMN JSON 优先读取大于 0 的 ends_at,缺失、空值或 0 时需要确保 subject 能表明恢复;Webhook 数据订阅必须提供大于 0 的 ends_at。同时检查告警和恢复的五个关联字段是否一致。
SMN JSON 是 SMN 通知报文中的 message 字段,外层仍包含签名和主题。Webhook 数据订阅直接发送 {“events”:[…]} 结构,不包含 SMN 外层字段。不要把两种外层结构混合在同一个请求中。

华为云相关文档