在 Flashduty On-call
您可通过以下两种方式获取集成推送地址,任选其一即可。
使用专属集成
- 进入 Flashduty 控制台,选择 协作空间,打开一个协作空间
- 选择 配置 → 集成数据 → 专属集成,点击 新增一个集成
- 选择 Panther,点击 保存
- 打开生成的集成卡片,复制 推送地址
使用共享集成
- 进入 Flashduty 控制台,选择 集成中心 → 告警事件
- 选择 Panther,填写集成名称
- 配置默认路由并选择协作空间;创建后可在 路由 中增加更多规则
- 点击 保存,复制生成的 推送地址
在 Panther 中配置
1
创建 Custom Webhook 目的地
- 登录 Panther Console,在左侧栏点击 Alert Destinations
- 点击 Create New(首次使用点击 +Add your first Destination),选择 Custom Webhook
- 填写表单:
- Display Name:自定义名称,例如
Flashduty - Custom Webhook URL:粘贴 Flashduty 集成的完整推送地址
- Severity Levels:选择要发送的告警等级
- Default Alert Types:选择要发送的告警类型
- Log Types:默认发送所有日志类型,可按需限定
- Display Name:自定义名称,例如
- 点击 Add Destination
POST 的 JSON 请求,期望返回 2XX;失败时最多重试 10 次。Flashduty 推送地址已包含认证信息,无需添加自定义 HTTP 头。2
发送测试告警
在创建完成页点击 Send Test Alert。Panther 文档没有给出测试请求的内容,Flashduty 把它当作普通告警处理:测试请求会按其
alertId 产生一条告警,不会关联任何真实告警,也没有对应的恢复事件,请确认收到后手动关闭。3
开启超时自动关闭
为接收 Panther 告警的协作空间开启超时自动关闭,建议时长 24 小时,可按团队处置时效调整。
4
验证
等待检测规则命中(或在 Panther 的告警详情页重新分发告警),确认 Flashduty 收到对应告警。
Alert Key
Flashduty 使用请求体中的
alertId 作为 Alert Key。Panther 文档对该字段的说明是 “Identifier of the alert in Panther Backend”。同一个 Panther 告警从告警详情页手动重新发送时,会落在同一条 Flashduty 告警上。
标题、等级、描述等字段的变化不会改变 Alert Key。请求缺少 alertId 时 Flashduty 会返回参数错误。
状态和告警等级
Panther 的 Custom Webhook 没有状态字段,Flashduty 每次收到的都是触发事件。
告警标签包含检测名称、检测 ID(
id)、告警 ID、告警类型、原始等级、告警链接和标签(tags)。alertContext 由检测规则的作者定义,可能包含原始日志字段,不会写入告警;runbook 同样不写入。
排查问题
- Panther 显示投递失败:确认推送地址完整且包含
integration_key,Flashduty 返回非2XX时 Panther 会重试最多 10 次 - 没有收到告警:确认目的地的 Severity Levels、Default Alert Types 与 Log Types 覆盖了该告警,并检查检测规则的目的地路由
- 告警一直不关闭:Panther 不推送解决通知,请开启协作空间的超时自动关闭
- 收到测试告警:这是 Send Test Alert 产生的告警,按普通告警处理,手动关闭即可