Nagios插件的输出是对应到stdout,不会获取stderr上的内容。
输出的格式为:
SERVICE STATUS: Information text
这是在stdout上输出的内容,判断状态是根据返回值!
返回值有如下:
0-OK
1-Warning
2-Critical
3-Unknown
常见的输出示例:
shell>/usr/local/nagios/libexec/check_load -w 15,10,5 -c 30,25,20
OK – load average: 0.00, 0.07, 0.08|load1=0.000;15.000;30.000;0; load5=0.070;10.000;25.000;0; load15=0.080;5.000;20.000;0;
shell>/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /dev/sda3
DISK OK – free space: / 139759 MB (68% inode=99%);| /=63509MB;171465;192898;0;214332
除了常规的输出内容以外,|后面的输出往往令人疑惑,其含义和作用是什么呢?
|符号后面的内容是Nagios的性能数据,即perfdata!这样就可以收集不同时间点的性能信息,便于利用第三方工具进行基于时间的图表绘制,以便对数据进行进一步分析。
|后面的内容的格式为:
‘label’=value[UOM];[warn];[crit];[min];[max]
说明:
1)label=value配对 如果有多个,用空格拆分,如上述check_load的输出
2)[warn],[crit]指的是指定的两个阈值
3)[warn];[crit];[min];[max]可以为空
4)UOM, unit of measurement指的是如下一种:
* 没有单位。如load
* s,秒。或者其他时间单位
* %,百分比。
* B,比特。或者KB,MB等
* c,一个连续的计数。
5)如果UOM=%,那么min,max不需要
示例剖析:
shell>/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /
DISK OK – free space: / 139759 MB (68% inode=99%);| /=63509MB;171465;192898;0;214332
该命令的含义是:当路径/下可用容量只有20%时报警,只有10%时报错。
/=63509MB; 当前已用63509M
171465; 报警时已用空间达到的值171465M。这个值就是对应可用空间20%。
192898; 报错时已用空间达到的值192898M。这个值就是对应可用空间10%。
0; /空间最小值为0。
214332 /空间最大值214332M。214332M*(1-20%)=171465M;214332M*(1-10%)=192898M
The post Nagios插件的输出 appeared first on SQLParty.