Skip to main content
通过 Statuspal 的出站 Webhook,把状态页上的变化同步到 Flashduty On-call:
  • 在 Statuspal 状态页上创建事件(Incident)时触发一条告警,事件结束或被删除时这条告警自动恢复
  • 开启了 Statuspal 内置监控的服务变为 down 时触发一条告警,变回 up 时这条告警自动恢复

在 Flashduty On-call


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

使用专属集成

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

使用共享集成

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

在 Statuspal 中


1

新建 Webhook

  1. 以管理员身份登录 Statuspal,进入要接入的状态页的管理后台
  2. 点击左侧菜单 Webhooks,再点击 New Webhook
2

填写推送地址和事件

  1. URL:粘贴 Flashduty 集成的完整推送地址(包含 integration_key)
  2. Events:勾选以下事件
    • incident.created
    • incident.updated
    • incident.deleted
    • service.monitored_status.updated(仅在服务开启了 Statuspal 内置监控时会推送)
  3. 点击 Create
每个状态页的 Webhook 单独配置。多个状态页可以推送到同一个集成,也可以各建一个集成,方便按集成设置路由。
3

验证

创建后点击 Send test request,Statuspal 会在页面上显示 Flashduty 返回的结果。Statuspal 没有公开测试请求的内容:如果测试请求在 Flashduty 中生成了一条告警,请手动关闭它。也可以用真实事件验证:在状态页上创建一个事件,Flashduty 中出现一条 Warning 告警;把事件标记为已解决(Resolve),这条告警恢复。

推送内容


Statuspal 推送 JSON,event 字段是事件类型,data.object 是对应的事件或服务: 事件(incident.created、incident.updated、incident.deleted) 服务监控状态(service.monitored_status.updated) 服务告警的标题形如 API is down。每条告警还带有标签 source=statuspal 和 event(推送的事件类型)。

Alert Key


  • 事件:事件 ID。同一事件从创建、更新到结束的每次推送落在同一条告警上
  • 服务:服务 ID。同一服务从 down 到 up 的推送落在同一条告警上
事件告警和服务告警互不影响:服务下线后 Statuspal 自动创建事件时,会同时产生一条服务告警和一条事件告警,可以用协作空间的告警聚合把它们合并到同一个故障。修改事件标题或服务名称不会改变 Alert Key。

状态和告警等级


Statuspal 的推送内容不包含事件的类型(major、minor)或严重程度,所以事件告警统一为 Warning。 计划维护(Maintenance)创建时就带有结束时间,Flashduty 把它的推送当作恢复处理;没有对应的触发告警,所以不会生成告警。

常见问题


不会。只有事件被标记为已解决(有了结束时间)或被删除时,告警才会恢复。
Statuspal 的 Webhook 不推送事件类型和严重程度。如需按服务调整等级,可以在集成的告警处理中按标签 service_ids 或告警标题改写等级。
可以不勾选。这个事件只在服务开启了 Statuspal 内置监控时推送,勾选也不会产生多余告警。

排查问题


  • Send test request 显示错误:确认推送地址完整(包含 integration_key),且集成没有被删除
  • Flashduty 返回参数错误:推送内容缺少 data.object.id,或 monitored_status 不是 up、down
  • 事件告警没有恢复:确认事件已在 Statuspal 中标记为已解决,且 Webhook 勾选了 incident.updated
  • 服务告警没有恢复:确认 Webhook 勾选了 service.monitored_status.updated,且服务监控已恢复为 up