Grafana Alerting 入门 - 第 1 部分

Grafana Alerting 入门 - 第 1 部分

在本指南中,我们将引导您在几分钟内设置您的第一个告警。您将亲眼看到您的告警如何使用实时数据工作,以及发送告警通知。

在本教程中,您将学习

  • 创建联系点。
  • 设置告警规则。
  • 在公共 Webhook 中接收触发和解决的告警通知。

提示

完成第 1 部分后,别忘了在第 2 部分(告警实例和通知路由)中探索高级但重要的告警主题。

开始之前

您可以通过多种方式学习本教程。

设置 Grafana Stack (OSS 用户)

为了演示如何使用 Grafana Stack 观测数据,请下载并运行以下文件。

  1. 克隆教程环境存储库

    git clone https://github.com/grafana/tutorial-environment.git
  2. 切换到您克隆存储库的目录

    cd tutorial-environment
  3. 运行 Grafana Stack

    docker compose up -d

    首次运行 docker compose up -d 时,Docker 将下载本教程所需的所有资源。这可能需要几分钟,具体取决于您的网络连接。

    注意

    如果您的系统上已运行 Grafana、Loki 或 Prometheus,您可能会看到错误,因为 Docker 镜像尝试使用您本地安装已占用的端口。如果是这种情况,请停止这些服务,然后再次运行该命令。

创建联系点

除了是一款开源可观测性工具外,Grafana 还拥有自己的内置告警服务。这意味着您可以在数据中出现感兴趣的事件时接收通知,甚至可以在可视化中看到这些事件的图表。

在此步骤中,我们设置一个新的联系点。此联系点使用Webhook 集成。为了使其正常工作,我们还需要一个端点供 Webhook 集成接收告警。我们可以使用Webhook.site 快速设置测试端点。这样可以确保我们的告警实际发送了通知。

  1. 在您的浏览器中,登录您的 Grafana Cloud 账号。

    OSS 用户:要登录,请导航至 https://:3000,这是 Grafana 的运行地址。

  2. 在新标签页中,前往 Webhook.site

  3. 复制您的唯一 URL。

您的 Webhook 端点现在正在等待第一个请求。

接下来,让我们在 Grafana 的告警 UI 中配置一个联系点,以将通知发送到我们的 Webhook 端点。

  1. 返回 Grafana。在 Grafana 的侧边栏中,将鼠标悬停在告警 (铃铛) 图标上,然后点击联系点

  2. 点击+ 创建联系点

  3. 名称中,输入 Webhook

  4. 集成中,选择 Webhook

  5. URL中,粘贴您的 Webhook 端点地址。

  6. 点击测试,然后点击发送测试通知向您的 Webhook 端点发送测试告警。

  7. 导航回 Webhook.site。在左侧,现在有一个 POST / 条目。点击它查看 Grafana 发送的信息。

    A POST entry in Webhook.site
    Webhook.site 中的 POST 条目
  8. 返回 Grafana 并点击保存联系点

我们已经创建了一个虚拟的 Webhook 端点并在 Grafana 中创建了一个新的告警联系点。现在,我们可以创建一个告警规则并将其链接到此新集成。

创建告警

接下来,我们在 Grafana Alerting 中建立一个告警规则,以便在告警规则触发和解决时通知我们。

  1. 在 Grafana 中,导航至告警与 IRM > 告警 > 告警规则。点击新建告警规则

  2. 输入您的告警规则名称。使其简短且具有描述性,因为此名称将出现在您的告警通知中。例如:database-metrics

定义查询和告警条件

在本节中,我们使用 Grafana 管理的告警规则创建的默认选项。默认选项允许我们定义查询、一个表达式(用于处理数据 – UI 中的 WHEN 字段)以及触发告警必须满足的条件(在默认模式下是阈值)。

Grafana 包含一个测试数据源,用于生成模拟时间序列数据。本教程的演示环境中已包含此数据源。如果您在 Grafana Cloud 或您自己的本地 Grafana 实例中工作,可以通过“连接”菜单添加数据源。

  1. 从下拉菜单中选择 TestData 数据源。

  2. 告警条件部分

    • Last 保留为缩减器函数(WHEN)的值,并将 0 保留为阈值。这是告警规则应触发的上限值。
  3. 点击预览告警规则条件以运行查询。

    它应该返回随机时间序列数据。告警规则状态应为 Firing(触发中)。

    A preview of a firing alert
    触发中告警的预览

添加文件夹和标签

  1. 文件夹中,点击+ 新建文件夹并输入名称。例如:metric-alerts。此文件夹将包含我们的告警规则。

设置评估行为

告警规则评估根据以下设置定义了告警规则触发的条件

  • 评估组:每个告警规则都分配给一个评估组。您可以将告警规则分配给现有评估组或创建新的评估组。
  • 评估间隔:决定告警规则检查的频率。例如,评估可能每 10 秒、30 秒、1 分钟、10 分钟等执行一次。
  • 等待期:条件必须持续满足多久才能触发告警规则。

设置评估

  1. 评估组和间隔中,重复上述步骤创建新的评估组。将其命名为 1m-evaluation
  2. 选择一个评估间隔(告警评估的频率)。例如,每 1m(1 分钟)。
  3. 等待期设置为 0s(零秒),以便在满足条件时立即触发告警规则。

配置通知

选择您希望接收告警通知的联系点。

  1. 联系点下,从下拉菜单中选择 Webhook。
  2. 点击右上角的保存规则并退出

触发和解决告警

告警规则配置完成后,当告警触发和解决时,您应该会在联系点收到告警通知

触发告警

由于您创建的告警规则已配置为始终触发,评估间隔结束后,您应该会在 Webhook 端点收到告警通知。

Firing alert notification details
触发中告警通知详情

告警通知详情显示告警规则状态为 Firing(触发中),并包含因超出告警规则条件阈值而导致规则触发的值。通知还包含查看告警规则详情的链接,以及添加静默的链接。

解决告警

要查看解决的告警通知是什么样子的,您可以修改当前告警规则的阈值。

编辑告警规则

  1. 导航至告警 > 告警规则
  2. 点击 metric-alerts 文件夹以显示您之前创建的告警
  3. 点击屏幕右侧的编辑按钮
  4. 将阈值表达式增加到 1。
  5. 点击保存规则并退出

通过增加阈值,条件不再满足,并且在评估间隔结束后(大约 1 分钟),您应该会收到状态为“Resolved”(已解决)的告警通知。

Grafana Alerting 第 2 部分中了解更多

提示

Grafana Alerting 入门 - 第 2 部分中,您可以通过探索告警实例和通知路由来提升您的技能。