在 Flashduty On-call
您可通过以下两种方式获取集成推送地址,任选其一即可。
使用专属集成
- 进入 Flashduty 控制台,选择 协作空间,打开一个协作空间
- 选择 配置 → 集成数据 → 专属集成,点击 新增一个集成
- 选择 Formant,点击 保存
- 打开生成的集成卡片,复制 推送地址
使用共享集成
- 进入 Flashduty 控制台,选择 集成中心 → 告警事件
- 选择 Formant,填写集成名称
- 配置默认路由并选择协作空间;创建后可在 路由 中增加更多规则
- 点击 保存,复制生成的 推送地址
在 Formant 中配置
1
创建 Webhook
- 登录 Formant,打开左上角菜单,点击 Settings
- 点击 Integrations,向下找到 Webhooks,点击 Connect
- 填写 Webhook 名称,URL 填 Flashduty 集成的完整推送地址(以
https://开头,包含integration_key) - 附加参数(parameters)可以留空,Flashduty 不读取它们。保存
2
为事件开启 Webhook 转发
- 进入 Settings → Events,打开一个已有事件,或点击 Add Event Trigger 新建事件
- 在 Actions 页签中找到 Webhook forwarding,选择上一步创建的 Webhook
- 在 Notification 中设置事件的严重程度(Info、Warning、Error、Critical),它决定 Flashduty 告警的等级
- 保存。需要转发的每个事件都要单独选择 Webhook
3
验证
让一个已转发的事件触发一次(例如让设备离线,或让数据点超过阈值),确认 Flashduty 出现一条告警,标题为事件消息(例如
Oven temperature high)。告警恢复和自动关闭
Formant 事件一经触发就不可修改,Webhook 对每个事件只发送一次。请求体中没有表示事件结束或恢复的字段,所以 Flashduty 中的告警不会自动恢复。 每个 Formant 事件对应一条独立的 Flashduty 告警,需要手动关闭,或在接收该集成的协作空间中开启 超时自动关闭。建议 2 小时,并按设备问题的处理时效调整。
Alert Key
Alert Key 为 Formant 事件 ID(
payload.id)。同一个事件重复投递会合并到同一条告警;不同事件(即使来自同一个事件触发器和同一台设备)是不同的告警。请求中缺少事件 ID 时,Flashduty 会生成随机 Alert Key,这条告警同样不会被合并。
状态和告警等级
告警的状态等于告警等级,不会恢复。
告警内容
- 标题:事件消息
message;缺失时为Formant event on <数据流名称>,再缺失时为Formant event - 描述:设备 ID、数据流、数据点取值、事件时间和 Formant 中的事件链接
排查问题
- Flashduty 没有收到事件:确认事件的 Actions 中已在 Webhook forwarding 选择了该 Webhook;确认 Webhook 的 URL 是完整的推送地址,包含
integration_key - Flashduty 返回参数错误:请求体不是 JSON,或缺少
payload对象。请使用 Formant 自带的 Webhook 转发,不要改写请求体 - 告警一直不关闭:Formant 不发送恢复通知。请在协作空间中开启超时自动关闭,或手动关闭