Skip to main content
通过配置一个 HTTP 端点,Flashduty 会按照您设定的周期主动发起请求,将响应解析为符合 标准告警事件 协议的事件并写入告警通道。整个过程不需要您的系统具备推送能力,只要能对外暴露一个可读的告警查询接口即可。
HTTP 拉取适合 无法主动 webhook接口本身就是查询型不希望对告警源做改造 的场景。如果您的系统已经支持 webhook 推送,优先使用对应的推送式集成(Prometheus、Zabbix 等),延迟更低、资源开销更小。

操作步骤


在 Flashduty

当您不需要根据告警内容路由到不同的协作空间时,优先选择此方式,更简单。
  1. 进入 Flashduty 控制台,选择 协作空间,进入某个空间的详情页面。
  2. 选择 集成数据 tab,点击 添加一个集成,进入添加集成页面。
  3. 选择 HTTP Pull 集成。
  4. 按下文「配置项」说明填写表单,点击 保存
当您需要根据告警事件的 Payload 信息,将告警路由到不同协作空间时,优先选择此方式。
  1. 进入 Flashduty 控制台,选择 集成中心 ⇒ 告警事件,进入集成选择页面。
  2. 选择 HTTP Pull 集成,并填写 集成名称
  3. 配置 默认路由,选择对应的协作空间(集成创建后可前往 路由 配置更多路由规则)。
  4. 按下文「配置项」说明填写表单,点击 保存 完成。

配置项


HTTP 请求

分页配置

很多查询型接口在单次返回时会做条数限制,需要按游标分页才能拿到完整数据。Flashduty 支持基于游标的分页:每次响应中提取下一页游标,注入到下一次请求里,直到响应中不再返回游标或达到上限。

严重程度映射

外部系统的告警级别字段名称、取值往往不一致,Flashduty 通过 严重程度映射 将外部值翻译为标准的 Critical / Warning / Info
  • 系统读取响应中的 event_status 字段值(标准告警事件协议中的告警级别字段),按映射表查找对应的 Flashduty 严重程度。
  • 默认映射P1 → CriticalP2 → WarningP3 → Info。您可以删除默认项、新增任意条目。
  • 未命中兜底:如果响应中的 event_status 没有命中映射表中的任何 Key,将统一降级为 Warning

响应格式

接口响应必须符合 Flashduty 的 标准告警事件 协议(response_mode = standard),核心字段包括 event_statustitle_rulealert_keydescriptionlabels 等。请直接参考标准告警事件文档了解每个字段的语义与长度限制。 启用分页时,您的响应需要在标准事件载荷之外,额外暴露一个用于提取下一页游标的字段,路径由 游标路径 指定。常见的形态如下:

默认路由


新增「共享集成」(即在 集成中心 ⇒ 告警事件 中创建)时,必须配置默认路由,否则新拉取到的事件将被丢弃。集成创建后可在 路由 中追加更细粒度的规则。 「专属集成」(在某个协作空间的 集成数据 中创建)会自动绑定到所在空间,不需要单独配置默认路由。

模板变量


URL 与请求体支持 Go 模板语法。当前仅有 一个 内置变量: 使用规则:
  • 启用游标分页时,必须在 URL(注入位置为 URL Query)或 Body(注入位置为 Body)中至少出现一次 {{.PageValue}},否则下一页游标无法生效。
  • GET 请求自动将注入位置锁定为 URL Query,但仍需您自行决定把变量写在 URL 的哪个查询参数上,或直接使用 参数名 让系统拼接。
  • 不启用分页(无分页 模式)时,该变量始终渲染为空字符串。