在 Flashduty On-call
您可通过以下2种方式,获取一个集成推送地址,任选其一即可。
使用专属集成
当您不需要将告警事件路由到不同的协作空间,优先选择此方式,更简单。展开
展开
- 进入 Flashduty 控制台,选择 协作空间,进入某个空间的详情页面
- 选择 集成数据 tab,点击 添加一个集成,进入添加集成页面
- 选择 日志易 集成,点击 保存,生成卡片。
- 点击生成的卡片,可以查看到 推送地址,复制备用,完成。
使用共享集成
当您需要根据告警事件的 Payload 信息,将告警路由到不同的协作空间,优先选择此方式。展开
展开
- 进入 Flashduty 控制台,选择 集成中心=>告警事件,进入集成选择页面。
- 选择 日志易 集成:
- 集成名称:为当前集成定义一个名称。
- 配置默认路由,并选择对应的协作空间(集成创建后可以前往
路由进行更多路由规则的配置)。 - 点击 保存 后,复制当前页面的新生成的 推送地址 备用。
- 完成。
在日志易
日志易告警支持邮件、syslog、告警转发和自定义告警插件等通知方式。其中「告警转发」推送的 JSON 结构是日志易的固定格式,与 Flashduty 要求的事件格式不一致,因此请通过 自定义告警插件(Python 脚本)将告警转换为标准格式后推送到 Flashduty。
步骤 1:编写告警插件脚本新建一个 Python 文件(如 步骤 2:上传插件进入日志易【监控】页面,在【其他】→【告警插件】中上传脚本文件。步骤 3:在监控项中引用插件编辑需要对接 Flashduty 的监控项,在【添加告警方式】中选择刚上传的插件并保存。日志易还支持平台自身监控(Manager)和剧本(Soar)两类插件,编写方式与上述示例一致,可按需扩展。
FlashdutyWebhook.py),内容如下,并将脚本开头的 push_url 替换为您的 Flashduty 集成推送地址:插件推送的事件需遵循 Flashduty 标准告警事件格式:
event_status 必填(Critical、Warning、Info、Ok 之一),title_rule 为告警标题,alert_key 用于告警的更新与自动恢复,labels 为告警标签。完整字段说明请参考 标准告警事件。严重程度映射关系
日志易到 Flashduty 的告警等级映射由插件脚本中的
LEVEL_MAP 决定,上述示例的映射关系如下,您可以按需调整:常见问题
为什么在 Flashduty 没有收到告警?
为什么在 Flashduty 没有收到告警?
在 Flashduty On-call
- 查看集成是否展示了 最新事件时间?如果没有,代表 Flashduty 没有收到推送,请优先排查日志易侧配置。
- 如果您使用的是 共享集成,优先确认您是否配置了 路由规则。不设置路由规则,系统会直接拒绝新的推送,因为没有协作空间可以承接您的告警。这种情况下,直接配置路由规则到您期望的空间即可。
- 查看插件运行日志(默认位于
/data/rizhiyi/logs/cruxee/plugins目录,文件名与上传时显示的名称一致),确认脚本执行无报错、推送请求返回成功。 - 确认脚本中的推送地址与 Flashduty 集成详情中的地址完全一致,且
event_status取值为Critical、Warning、Info、Ok之一,否则 Flashduty 会拒绝该请求。 - 确认日志易主机可以访问外网
api.flashcat.cloud域名,如无法直连,请在脚本的proxies中配置 HTTP 正向代理。