从 Icinga2 读取 Graphite 事件
Reading Graphite events from Icinga2
在我们的实验室中,我们目前使用两个系统来远程监控敏感数量等。:
Icinga2,作为一个监控系统,从名为 Watchdog 的日志记录 DAQ 读取数据,并在测量值超过用户定义的阈值时创建警报;
Graphite 将通过网络或其他方式(保存在磁盘上)接收并存储的来自 Carbon 的数据绘制到网页上,以便远程访问。
到目前为止,我们只能让 Icinga2 写入 它在 Graphite 上收到的任何内容,以便我们可以看到它。
是否可以从 Graphite 获得 Icinga2 read?
还有其他程序直接向 Graphite 写入内容,无法通过 DAQ 看门狗从 Icinga 读取(缺少端口)。
理想情况下,我们希望在任何到达 Graphite 的地方创建警报(Icinga2 可以做到)。
有几个 check_graphite 插件实现可以让您查询 Graphite web 提供的 API。不幸的是,我在这里没有推荐,请尝试 Google 最适合您需求的匹配项。
他们都连接到 Graphite web API:
http://graphite.readthedocs.io/en/latest/render_api.html
Graphite 本身已经非常强大,您可以让它聚合数据点并减少插件中的逻辑以仅评估给定的阈值和 return 输出和状态。
如果您使用的是 Grafana,您还可以查看他们的警报和通知条件,例如Web 挂钩将检查结果传回 Icinga 2 的 REST API.
http://docs.grafana.org/alerting/rules/
http://docs.grafana.org/alerting/notifications/
我想我最终找到了解决方案:作为 Graphite
软件包安装的一部分,有 Whisper
数据库。这包括许多有用的脚本,例如 whisper-fetch.py
,它允许从 .wsp
文件(存储绘制的 graphite-web
的位置)中提取我们想要的任何格式的数据。
只需要检查整个 Whisper
包是否已经安装,只需检查 python 终端上的 import whisper
是否没有 return 一个错误。如果未完全安装,请检查 GitHub 上的 whisper
。
在我们的实验室中,我们目前使用两个系统来远程监控敏感数量等。:
Icinga2,作为一个监控系统,从名为 Watchdog 的日志记录 DAQ 读取数据,并在测量值超过用户定义的阈值时创建警报;
Graphite 将通过网络或其他方式(保存在磁盘上)接收并存储的来自 Carbon 的数据绘制到网页上,以便远程访问。
到目前为止,我们只能让 Icinga2 写入 它在 Graphite 上收到的任何内容,以便我们可以看到它。
是否可以从 Graphite 获得 Icinga2 read?
还有其他程序直接向 Graphite 写入内容,无法通过 DAQ 看门狗从 Icinga 读取(缺少端口)。
理想情况下,我们希望在任何到达 Graphite 的地方创建警报(Icinga2 可以做到)。
有几个 check_graphite 插件实现可以让您查询 Graphite web 提供的 API。不幸的是,我在这里没有推荐,请尝试 Google 最适合您需求的匹配项。
他们都连接到 Graphite web API:
http://graphite.readthedocs.io/en/latest/render_api.html
Graphite 本身已经非常强大,您可以让它聚合数据点并减少插件中的逻辑以仅评估给定的阈值和 return 输出和状态。
如果您使用的是 Grafana,您还可以查看他们的警报和通知条件,例如Web 挂钩将检查结果传回 Icinga 2 的 REST API.
http://docs.grafana.org/alerting/rules/ http://docs.grafana.org/alerting/notifications/
我想我最终找到了解决方案:作为 Graphite
软件包安装的一部分,有 Whisper
数据库。这包括许多有用的脚本,例如 whisper-fetch.py
,它允许从 .wsp
文件(存储绘制的 graphite-web
的位置)中提取我们想要的任何格式的数据。
只需要检查整个 Whisper
包是否已经安装,只需检查 python 终端上的 import whisper
是否没有 return 一个错误。如果未完全安装,请检查 GitHub 上的 whisper
。