使用InfluxDB和Telegraf监测空气质量
作者:Anais Dotis-Georgiou / 产品
2022年11月07日
导航到
本文最初发布在The New Stack,此处转载已获得许可。
如果你生活在北半球,你可能很高兴地经历着夏日。然而,随着夏天的到来,也带来了火灾季节,因此,记得你可以做些什么来降低野火的风险是很重要的。如果你生活在一个容易发生野火的地区,监测空气质量以保护自己免受烟雾危害是明智的。
今天,我们将使用时间序列平台InfluxDB来监测空气质量,并设置一个警报,以便在烟雾达到危险水平时得到通知。具体来说,我们将使用空气质量模板来轻松开始使用InfluxDB。
InfluxDB模板是预打包的配置,可在平台上设置大量资源。空气质量模板包括一个仪表盘,可以轻松可视化您的空气质量数据,以及一个Telegraf配置,用于将空气质量数据写入您的InfluxDB实例。 Telegraf是一个开源的指标和事件收集代理。我们的Telegraf配置将使用http输入插件从AirNow API写入数据。
先决条件
本文假设您已完成了以下步骤
安装空气质量模板
要安装空气质量模板,请导航到左侧导航栏下方的 设置 中的 模板 页面。
复制以下 URL 并点击 查找模板
https://github.com/influxdata/community-templates/blob/master/airquality/airquality.yml
接下来,点击 安装模板 以添加所有相关资源。
设置 AirNow
按照 Readme 中的说明,首先,访问 https://docs.airnowapi.org/account/request/ 请求 AirNow API 的账户访问权限。接下来,访问 https://docs.airnowapi.org/forecastsbyzip/query,并按以下方式构建您的 URL
- 输入感兴趣的 ZIP 代码。
- 从 格式 下拉菜单中选择 application/json。
- 点击 构建。
- 复制 URL 字符串。
- 编辑 URL 字符串,删除日期(例如,“&date=2022-06-14”)。
从 AirNow 复制生成的 URL,并在将其添加到 Telegraf 配置文件之前删除“&date=2022-06-14”。
删除日期后,您的 URL 应该如下所示。
设置 Telegraf
接下来,您需要编辑 Telegraf 配置文件。通过安装后点击 airquality 模板,展开资源下拉菜单,然后点击 airquality-telegraf 配置,可以轻松导航到正确的 Telegraf 配置文件。
这会带您到加载数据页面。在此,您可以点击配置名称进行编辑。
现在我们可以将编辑后的 AirNow URL 粘贴到第 17 行,并点击 保存更改。
现在点击配置名称旁边的 设置说明,以运行此配置的 Telegraf 代理并将空气质量指标写入 InfluxDB。
空气质量仪表板
空气质量仪表板是包含在空气质量模板中的另一个资源。
让 Telegraf 运行一段时间后,然后访问仪表板页面下的预建仪表板。从左侧导航栏导航到仪表板页面。请确保选择我们想要创建可视化的适当桶,即 airquality。它包括两个仪表可视化
- 当前 PM2.5:此仪表显示最近的一次细颗粒物(PM2.5)水平。
- 当前臭氧质量:此仪表显示最近的臭氧水平。
图表显示根据严重程度级别分离的空气质量指数(AQI)。
向空气质量模板添加警报
我们可以轻松地将警报添加到空气质量模板中,以便在空气质量指数(AQI)达到危险水平时收到通知。您可以使用InfluxDB将警报发送到多种不同的端点,包括Slack。转到 警报 页面并点击 + 创建 以创建一个新的检查。接下来,使用 查询构建器 查询您的数据。设置一个间隔以确定您希望多久检查一次数据,以查看是否超过阈值。最后,设置您的通知端点。要了解如何配置Slack通知端点,请参阅这篇帖子。
使用InfluxDB UI设置阈值检查以在空气质量指数(AQI)不安全时收到通知的示例。
最后的想法
我希望这篇帖子能激发您利用InfluxDB在这个夏天保持健康。我也鼓励您查看Enviro+ Raspberry Pi空气质量模板,以构建您自己的空气质量传感器。