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 个事件。结构化数据中的 idstarts_at 以及六个核心 metadata 字段必须有有效值。

告警与恢复关联

Flashduty 按以下优先级识别恢复: 华为云中文模板的 clear_type 枚举值为 触发恢复;英文模板的枚举值为 generatedcleared。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_namemetadata.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 外层字段。不要把两种外层结构混合在同一个请求中。

华为云相关文档