我最近在 Debian 9 上安装了 nagios,不知道如何定义状态。
我有一个 shellscript,它确定某个进程是否正在运行,如果为真则输出“1”,如果为假则输出“0”
Nagios 确实会处理信息并在“状态信息”中显示 1 或 0,但无论是 0 还是 1,Nagios 都会显示 OK。
我如何定义 Nagios 以在 0 时表示关键,在 1 时表示正常?
答案1
Nagios 使用插件的退出状态来确定显示什么状态:
- 0 = 正常
- 1 = 警告
- 2 = 严重
- 3 = 未知
因此,如果你有一个 shell 脚本作为插件,请确保最后执行的是
exit 0
表示 OK,并0
根据检测到的状态将 替换为 1、2 或 3。如您希望 表示 OK1
和 表示 critical 0
:
#!/bin/sh
# do whatever tests here, and set variable X to 0 or 1
if [ "$X" = 0 ]; then exit 2; fi
if [ "$X" = 1 ]; then echo 0; fi
exit 3
输出文本确实用于显示“状态信息”中的详细信息。您还可以在输出中获得性能数据。
看https://assets.nagios.com/downloads/nagioscore/docs/nagioscore/3/en/pluginapi.html了解更多信息。