Skip to content

关于本页

本页介绍更夫所基于的开源内核 Keep 的通用能力。更夫在其上提供国内化增强:钉钉/企业微信/飞书通知、国产大模型接入、LDAP 认证与值班管理。部署与上手请看快速上手。

提供者是 Keep 工作流的重要组成部分。它们使工作流能够与外部系统交互、获取数据并执行操作。每个提供者旨在处理特定集成,如 Datadog、Slack、ServiceNow 或自定义 API。

提供者的主要特点 ​

  • 可扩展性: 提供者可以轻松扩展以支持新系统或自定义用例。

  • 参数化: with 下的参数直接传递给提供者。这允许您为每个步骤或动作配置提供者特定的设置。

  • 配置: 提供者可以通过 CI/CD 管道或通过 Keep UI 进行配置,为自动化和手动设置提供灵活性。


定义提供者 ​

要在工作流文件中定义提供者,请将其配置包含在 providers 部分下。例如:

yaml
providers:
  slack:
    description: "Slack provider for sending messages"
    authentication:
      webhook_url: "{{ env.SLACK_WEBHOOK_URL }}"

在工作流中使用提供者 ​

一旦定义了提供者,就可以通过指定其类型和配置在工作流步骤或动作中使用它。

例如:

yaml
actions:
  - name: trigger-slack
    provider:
      type: slack
      config: "{{ providers.slack }}"
      with:
        channel: "#alerts"
        message: "Alert triggered: {{ alert.name }}"
  • config 字段将动作链接到提供者。
  • with 部分包含传递给提供者的参数。

示例 ​

使用提供者获取数据 ​

yaml
steps:
  - name: get-alerts
    provider:
      type: datadog
      config: "{{ providers.datadog }}"
      with:
        query: "avg:cpu.usage{*}"
        timeframe: "1h"

使用提供者发送通知 ​

yaml
actions:
  - name: notify-slack
    provider:
      type: slack
      config: "{{ providers.slack }}"
      with:
        channel: "#alerts"
        message: "Critical alert: {{ alert.name }}"

基于 MIT 协议开源的 Keep · 由更夫社区维护