![nagiosgraph 需要我的插件提供什么数据?](https://linux22.com/image/647537/nagiosgraph%20%E9%9C%80%E8%A6%81%E6%88%91%E7%9A%84%E6%8F%92%E4%BB%B6%E6%8F%90%E4%BE%9B%E4%BB%80%E4%B9%88%E6%95%B0%E6%8D%AE%EF%BC%9F.png)
我一直在寻找一个很好的解释,关于我应该如何从我的自定义 Nagios 插件返回数据,以确保 Nagiosgraph 能够解析它。
一个地方建议使用“CPU 使用率 98%|c[cpu]=98%;80;95;0;100”格式,而其他地方则建议使用这种格式的变体。但是,我的 Nagios 似乎无法理解上述格式或我尝试过的任何其他格式。
我只是想绘制一个图表,将数据点(例如,0 到 100 之间的值)绘制到图表上。有没有这方面的好资源,或者有没有人有这方面的基本示例?
假设我有两部分数据:一个标签(连接)和一个值(250)。如何以 Nagios 能够将其绘制成图表的格式将其返回给 Nagios?
注意:我问的是“nagiosgraph”而不是“nagiosgrapher”。
答案1
就 Nagios 而言,管道后面的所有内容都无关紧要。它只是存储它或将其传递给您的 perfdata 命令。也许您的问题实际上是关于如何让 nagiosgraph 工作?
假设您已经让 nagiosgraph 正常运行,您的自定义插件需要遵循 perfdata 规范。
查看Nagios 插件开发指南概览,以及Nagios 插件 API有关 perfdata 规格的详细信息。
答案2
虽然我不熟悉 nagiosgrapher,但一般来说,您的插件应该以 nagios 期望的格式返回性能数据,如 nagios 文档中所定义:
插件可以通过发送通常情况下的普通、人性化文本字符串,后跟竖线字符 (|),然后是包含一个或多个性能数据指标的字符串,在输出中返回可选的性能数据。让我们以 check_ping 插件为例,假设它已得到增强,可以返回数据包丢失百分比和平均往返时间作为性能数据指标。插件的示例输出可能如下所示:
PING 正常 - 数据包丢失 = 0%,RTA = 0.80 毫秒 | percent_packet_loss=0,rta=0.80