Nagios仅为http服务创build警告

我也想监视non-critical服务,例如我们的GitLab-server或phpMyAdmin实例。 有什么办法可以为某些服务创build警告而不是重要的错误?

目前我正在使用以下内容:

define service { host_name localhost use generic-service service_description HTTP GitLab check_command check_www!git.example.com!'/users/sign_in' } define command { command_name check_www command_line /usr/lib/nagios/plugins/check_http -H '$ARG1$' -I '$HOSTADDRESS$' -e 'HTTP/1.1 200 OK' -u '$ARG2$' } 

正因为这个原因,存在否定插件 。

使用-c选项,可以将CRITICAL更改为WARNING。 例如,你可以这样做:

 define command { command_name check_www_no_crit command_line /usr/lib/nagios/plugins/negate -s -c WARNING /usr/lib/nagios/plugins/check_http -H '$ARG1$' -I '$HOSTADDRESS$' -e 'HTTP/1.1 200 OK' -u '$ARG2$' } 

这个问题似乎是你用-e标志使用check_http来检查一个返回码。 如果-e检查失败,该插件似乎没有提供返回WARNING(而不是CRITICAL)错误的选项。

你需要在check_http上编写一个小的shell脚本封装器,通过不变的方式传递输出,但是检查插件的返回码,如果插件的返回码是2,则返回1,否则返回代码。