本集成对接 Splunk Observability Cloud(原 SignalFx)的指标、APM、RUM、Synthetics 等探测器告警。Splunk Enterprise 或 Splunk Cloud Platform 的搜索告警请使用 Splunk 告警事件 集成。
在 Flashduty On-call
您可通过以下两种方式获取集成推送地址,任选其一即可。
使用专属集成
- 进入 Flashduty 控制台,选择 协作空间,打开一个协作空间
- 选择 配置 → 集成数据 → 专属集成,点击 新增一个集成
- 选择 Splunk Observability Cloud,点击 保存
- 打开生成的集成卡片,复制 推送地址
使用共享集成
- 进入 Flashduty 控制台,选择 集成中心 → 告警事件
- 选择 Splunk Observability Cloud,填写集成名称
- 配置默认路由并选择协作空间;创建后可在 路由 中增加更多规则
- 点击 保存,复制生成的 推送地址
在 Splunk Observability Cloud 中配置
1
创建 Webhook 集成
创建 Webhook 集成需要 Splunk Observability Cloud 管理员权限。
- 登录 Splunk Observability Cloud,在左侧导航选择 Data Management
- 进入 Available integrations 标签页(或在 Deployed integrations 标签页点击 Add Integration),筛选条件选 All,搜索并选择 Webhook
- 进入创建向导的 Summary 页(如果先看到的是已有集成列表,点击 New Integration),点击 Next
- 在 Configure connection 页填写:
- Name:例如
Flashduty,之后在探测器中按此名称选择 - URL:粘贴 Flashduty 集成的完整推送地址
- Method:选择
POST - Shared secret:选填,可留空。Flashduty 通过推送地址中的
integration_key认证,不校验X-SFX-Signature签名 - Headers:无需填写
- Name:例如
- 点击 Next,在 Customize message 页保留默认模板
- 点击 Next,确认信息后点击 Save
eventType 为 WEBHOOK_TEST)。Flashduty 返回成功,不创建告警。2
将 Webhook 添加为探测器的告警接收方
- 创建或编辑需要推送的探测器
- 在 Alert recipients 步骤点击 Add Recipient,选择 Webhook,再选择上一步创建的集成(如
Flashduty) - 激活并保存探测器
3
验证生命周期
为测试探测器设置一个当前就会满足的阈值,确认 Flashduty 收到活动告警;再把阈值改回,或等待条件不再满足,确认原告警恢复。
Alert Key
Flashduty 使用
incidentId 作为 Alert Key。Splunk 文档说明,同一个告警的触发通知和清除通知携带相同的 incidentId,因此两者会落在同一条 Flashduty 告警上。
规则名称、严重程度、状态、时间、消息内容和维度取值的变化都不会改变 Alert Key。
状态和告警等级
Flashduty 读取
statusExtended;该字段为空时读取 status:
空值或其他状态会被拒绝。
告警被静音规则(Muting rule)覆盖期间,Splunk Observability Cloud 不发送通知;静音结束时如果告警仍在持续,会补发一条
anomalous 通知。
告警等级来自规则的严重程度 severity:
恢复事件保留原告警等级。
告警内容
- 标题:规则名称
rule,为空时使用探测器名称detector - 描述:
messageBody,为空时使用description - 标签:
incident_id、detector_id、detector、detector_url、rule、severity、originating_metric、detect_on_condition、runbook_url、tipcheck(同标题)、resource(告警来源src,例如主机名或 Pod 名)、source(固定为splunk-observability)dimensions中的每个维度;键名中的.、-等字符替换为_,例如k8s.pod.name变为k8s_pod_name。以数字开头的键名会被丢弃。标签总数上限为 50 个,维度较多时按键名排序保留靠前的维度
orgId、imageUrl、inputs 不会写入标签。
排查问题
- Splunk 显示通知发送失败:确认 URL 是完整推送地址且包含
integration_key。Splunk 在未收到200响应时会重试,最长 24 小时 - Flashduty 返回参数错误:确认模板中保留了
incidentId和statusExtended - 告警没有恢复:确认探测器的规则仍添加了该 Webhook 接收方;若模板被修改,确认清除通知中的
incidentId与触发时一致 - 静默期间的告警:Splunk 静默规则(Muting rule)生效期间不发送触发通知,但静默开始前已触发的告警在清除时仍会发送清除通知。静默结束后,Splunk 会为仍处于活动状态的告警重新发送通知