当监视服务器的健康状况时,一些故障或警告立即是紧急的,但是其他故障或警告只在持续时才重要。 我正在考虑这样的事情:
如果没有得到解决,这些问题可能会成为真正的问题,但已经有后台服务来照顾他们 – 无人看pipe的升级,NTP客户端服务等等。问题产生和这些后台进程之间总是有一个短暂的延迟来解决它们,我们的监视器正在发送一系列电子邮件,然后在一分钟后问题得到解决。 我通常会醒来发现一大堆“问题”电子邮件,每封邮件都有一分钟后发送的相应“解决scheme”电子邮件。 危险的是,在驳斥一百个不相干的警告的时候,我可能会错过那个真实的。
那么有什么方法可以指示Icinga或Nagios只报告一个问题,如果持续超过一定的时间,比如5分钟?
SvW在写什么的时候没有错,但是你也应该调查variablesmax_check_attempts ,它定义了在发生HARD错误和通知之前,一个服务必须失败多less次检查。
对于我的一些发型服务,我有
max_check_attempts 2 check_interval 2 retry_interval 1
这意味着NAGIOS会比平常更频繁地检查,一旦发现有问题,等待1分钟,再检查一次,然后通知。 对于其他的服务,我不在乎,直到有一段时间了,我有
max_check_attempts 12 check_interval 5 retry_interval 5
这意味着一旦NAGIOS注意到一些事情发生了,它会像往常一样每隔5分钟进行一次检查,直到一小时后才告诉我。
调整你的NAGIOS是绝对值得的,直到它告诉你关心的事情,当你关心它们的时候,别的什么都不去做。 一个发出误报云的监控系统(即发送给你的并不真正关心的通知)几乎与有错误的否定(即没有注意到真正的问题)一样无用。
您可以定义详细的configuration来告诉Nagios有关服务检查的每个细节。
查找check_interval和retry_intervalconfiguration选项,并且在进行时,通常了解时间段。