使用Grafana和InfluxDB Cloud Serverless进行警报

导航至

本文最初发表在The New Stack,经许可在此重发。

结合这两个平台,提供了一种高效、可扩展且可定制的实时数据监控和警报工具。

在数据分析和可视化领域,拥有一个不仅能够有效监控您的数据,还能够提醒您任何可能出现的不一致或异常的系统至关重要。Grafana和InfluxDB Cloud Serverless是一套强大的工具集,可以监控并警报时间序列数据。Grafana是一个流行的开源数据可视化平台,而InfluxDB Cloud是一个基于Apache生态系统的时序平台。

结合这两个平台,提供了一种高效、可扩展且可定制的实时数据监控和警报工具。本文将指导您使用Grafana与InfluxDB Cloud Serverless平台创建有洞察力的警报,为您提供一套强大的系统,在数据出现异常行为时,让您及时了解并采取行动。

要求

以下教程假设您满足以下要求

  • 在您的机器上安装了Telegraf
  • InfluxDB Cloud Serverless账户
  • 本地Grafana或Grafana Cloud实例

对于这个示例,我们将使用Telegraf将CPU指标写入InfluxDB Cloud。我选择这个数据集仅用于演示如何使用Grafana进行警报,但您可以使用任何Telegraf插件或数据集。通过以下文档配置Telegraf代理。或者,您也可以按照这篇博客文章中的说明使用InfluxDB UI配置Telegraf。(请注意,虽然文章引用了InfluxDB 2.x,但在InfluxDB Cloud 3.0中配置Telegraf的用户界面是相同的)。

create-telegraf-configuration

您也可以按照以下步骤从UI配置Telegraf代理

  • 从主页点击添加数据
  • Telegraf Reporting Agent下,选择配置代理
  • 点击+ 创建配置
  • 选择一个要写入数据的桶(我已经创建了一个名为“cpu”的桶)。
  • 搜索并选择CPU插件。
  • 遵循弹出指令。

接下来,我验证了使用 数据探索器 成功从 InfluxDB Cloud 3.0 查询数据。

使用 Grafana 查询和可视化数据

在我们可以用 Grafana 发出警报之前,我们必须先查询和可视化我们的数据。请遵循此文档了解如何

  • 开始使用 Grafana。
  • 创建和配置 Flight SQL 数据源。
  • 使用 Grafana 查询 InfluxDB。

configure the Flight SQL plugin

如何配置 Flight SQL 插件以连接到 InfluxDB Cloud 3.0 的示例

对于这个教程,我使用了 Grafana Cloud 的免费试用。如果您导航到 探索 页面,您可以在 Grafana 中创建一个查询来验证您是否已成功配置了 Flight SQL 插件。请确保选择 Flight SQL 作为您的数据源。

querying InfluxDB Cloud 3-0 with Grafana

使用 Grafana 查询 InfluxDB Cloud 3.0 的示例。

设置 Grafana 警报

本篇文章介绍了如何使用 Grafana 设置最基础的警报。然而,Grafana 具有高级警报功能。若要了解更多有关 Grafana 中这些高级警报功能的信息,请参阅以下 文档。尽管 UI 有所改变,我还是遵循了这个教程开始。

首先,从 主页 > 警报 & IRM > 警报 进入警报页面。然后,转到 管理警报规则

Set up Grafana Alert

添加一个新规则。

Add a new rule

查询您的数据以选择警报的条件。

select condition for alert

对于这个警报,我仅选择了 total CPU 的 usage_system 数据。请确保您在查询构建器下方图表中获得了正确的数据。然后选择您希望将数据简化到的函数以及您希望为警报标准创建的任何阈值。在这个例子中,我选择了最后一个值,并将阈值设置为高于 0 以测试警报。

graph

设置警报评估行为,即您希望警报运行的频率。同时,确保将警报分配到评估组。

alert evaluation behavior

要向电子邮件或 Slack 等联系点发送警报,请转到 警报 & IRM 下的 联系点 页面。点击 + 添加联系点

Contact Points

测试警报的最简单方式可能是通过电子邮件。然而,您也可以加入我们的 InfluxDB 社区 Slack 频道。有一个 这个 webhook URL 的 #notifications-testing 频道,如果您想测试 Slack 通知,可以使用。

create contact point

点击 测试 以测试警报并验证您是否在 InfluxDB 社区 Slack 频道或您的电子邮件中收到消息。

最终想法

Grafana 是一款强大的可视化和警报工具。虽然这个教程只是触及了 Grafana 和 InfluxDB 可能性的表面,但探索它们以了解它们如何改进您的工作流程和业务运营是值得的。