跳转到主要内容
通过 Hosted Graphite 的 Webhook 通知渠道(Notification Channel),把指标告警的触发(alerting)和恢复(recovered)通知同步到 Flashduty On-call。同一条告警规则在同一个指标上越过阈值时触发,恢复时关闭对应的 Flashduty 告警。

在 Flashduty On-call

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

使用专属集成

  1. 进入 Flashduty 控制台,选择 协作空间,打开一个协作空间
  2. 选择 配置 → 集成数据 → 专属集成,点击 新增集成
  3. 选择 Hosted Graphite,点击 保存
  4. 打开生成的集成卡片,复制 推送地址

使用共享集成

  1. 进入 Flashduty 控制台,选择 集成中心 → 告警事件
  2. 选择 Hosted Graphite,填写集成名称
  3. 配置默认路由并选择协作空间;创建后可在 路由 中增加更多规则
  4. 点击 保存,复制生成的 推送地址

在 Hosted Graphite 中配置

1

在 Hosted Graphite 中创建 Webhook 通知渠道

操作路径:Hosted Graphite › Alerts › Notification Channels › + Add Channel填写后点击 Save。
2

在 Hosted Graphite 告警中选择该渠道

操作路径:Hosted Graphite › Alerts › Notification Panel保存告警。
3

让指标越过阈值并确认

操作路径:Hosted Graphite › Alerts请用真实指标验证:让指标越过告警阈值,确认 Flashduty 收到活动告警,集成显示 最新事件时间;再让指标回到阈值以内,确认原告警恢复。
Hosted Graphite 的通知里没有告警 ID,Flashduty 用「告警名称 + 指标名」区分告警。名称和指标都相同的两条告警会合并成同一条 Flashduty 告警,请给每条告警起不同的名称。

推送内容

Hosted Graphite 以 application/json POST 以下字段,Flashduty 直接解析,无需配置模板:

Alert Key

Flashduty 用告警名称和指标名计算 Alert Key(两者以分隔符拼接后取 MD5)。同一条告警在同一个指标上的触发和恢复通知携带相同的名称和指标,因此落在同一条告警上;名称不同或指标不同的告警互不影响。修改判定条件、当前值不会改变 Alert Key。 Hosted Graphite 未提供告警 ID,这一组合是推断得出的标识:如果两条告警的名称和指标都相同,它们会合并。请求中缺少 name 时,Flashduty 返回参数错误。

状态和告警等级

Hosted Graphite 的通知不带告警等级,Flashduty 统一按 Warning 处理。 status 为空或为其他值的请求会被拒绝,避免把无法判断状态的请求写入错误的告警生命周期。

常见问题

不会。请求失败时 Hosted Graphite 会在几秒内重试若干次,这些重试携带相同的名称和指标,会合并到同一条告警中。
本集成未观察到 Webhook 渠道的测试按钮。请用第三步的方式让指标真实越过阈值来验证。

排查问题

  • Hosted Graphite 推送失败:确认 URL 是完整的推送地址,且包含 integration_key
  • Flashduty 返回参数错误:确认请求体是 JSON,且 name 非空、status 为 alerting 或 recovered
  • 告警没有恢复:确认恢复通知与触发通知的告警名称和指标一致;改过告警名称会得到新的 Alert Key
  • 两条告警被合并:给它们设置不同的名称