菜单
开源

Grafana OnCall 的 Grafana 警报集成

注意

⚠️ 旧版 集成 ⚠️ 在版本 1.3.21 之前创建的集成被标记为 (旧版) 并最近已迁移。这些集成正在接收和升级警报,但可能需要进行一些手动调整。

可以使用两种方法设置 Grafana OnCall 的 Grafana 警报

  • Grafana OnCall 连接到与用于管理 Grafana OnCall 的同一 Grafana 实例。
  • Grafana OnCall 连接到一个或多个 Grafana 实例,这些实例与用于管理 Grafana OnCall 的实例不同。

在同一个 Grafana 实例中配置 Grafana 警报

如果您将 Grafana OnCall 与来自同一 Grafana 实例的警报连接,请使用以下方法。

  1. 在Grafana OnCall中,导航到集成选项卡,并选择新建集成以接收警报

  2. Grafana警报面板中点击快速连接。这将打开一个新的新建Grafana警报集成配置窗口。

  3. 在打开的窗口中,为集成输入名称和描述,并选择现有或创建新的联系点。此联系点将向创建的集成发送警报。

    注意:您必须将联系点与Grafana警报中的通知策略连接,才能在Grafana OnCall中接收警报。有关更多信息,请参阅Grafana警报中的联系点

  4. 通过选择现有的一项或创建新的,确定新集成的事态升级链。

  5. 在Grafana Cloud警报中,导航到警报 > 联系点,找到名称与在Grafana OnCall中创建的集成匹配的联系点。

  6. 点击编辑(铅笔)图标,然后点击测试。这将向Grafana OnCall发送测试警报。

配置来自其他Grafana实例的外部Grafana警报

将Grafana OnCall与来自不同于Grafana OnCall管理实例的Grafana实例的警报连接

  1. 在Grafana OnCall中,导航到集成选项卡,并选择新建集成以接收警报

  2. 选择Alertmanager面板。

  3. 为集成输入名称和描述,然后点击创建

  4. 将打开一个新页面,显示集成详细信息。从HTTP端点部分复制OnCall集成URL。

  5. 转到其他Grafana实例以连接到Grafana OnCall,并导航到警报 > 联系点

  6. 选择新建联系点

  7. 选择联系点类型webhook,然后将步骤3中生成的URL粘贴到URL字段。

    注意:您必须将联系点与Grafana警报中的通知策略连接,才能在Grafana OnCall中接收警报。有关更多信息,请参阅Grafana警报中的联系点

  8. 点击编辑(铅笔)图标,然后点击测试。这将向Grafana OnCall发送测试警报。

关于分组和自动解决说明

Grafana OnCall依赖于Grafana警报的分组和自动解决机制,以确保OnCall和AlertManager中警报状态的一致性。建议在Grafana警报侧配置分组,并在OnCall侧使用默认的分组和自动解决模板。更改这些模板可能导致分组和自动解决行为不正确。

关于旧集成说明

在之前,我们将Grafana警报组中的每个警报作为单独的有效负载使用

json
{
  "labels": {
    "severity": "critical",
    "alertname": "InstanceDown"
  },
  "annotations": {
    "title": "Instance localhost:8081 down",
    "description": "Node has been down for more than 1 minute"
  },
  ...
}

这种行为导致OnCall和Grafana警报之间警报状态不匹配,以及速率限制的耗尽,因为每个Grafana警报都单独计数。

我们决定将此行为更改为通过使用AlertManager组作为单个有效负载来尊重Grafana警报的分组。

json
{
  "alerts": [...],
  "groupLabels": {
    "alertname": "InstanceDown"
  },
  "commonLabels": {
    "job": "node", 
    "alertname": "InstanceDown"
  },
  "commonAnnotations": {
    "description": "Node has been down for more than 1 minute"
  },
  "groupKey": "{}:{alertname=\"InstanceDown\"}",
  ...
}

您可以在这里阅读更多关于AlertManager数据模型的信息。

迁移后检查清单

集成URL将保持不变,因此无需更改AlertManager或Grafana警报配置。集成模板将重置以适应新的有效负载。需要手动调整路由和出站webhook以适应新的有效负载。

  1. 向迁移的集成发送新的演示警报。
  2. 调整路由以适应有效负载的新形状。您可以使用前一步骤中演示警报的负载作为示例。
  3. 如果出站Web钩子使用了迁移集成中的警报负载,无论是触发触发还是数据模板,都需要相应地进行调整。