Nagios状态转换和事件处理程序问题

我们正在使用Nagios来检查重复的进程。

define service { use local-service host_name xxx service_description xxx Duplicate Processes check_interval 1 max_check_attempts 1 contact_groups admins event_handler restart-dependent-processes check_command check_procs_duplicate!2!3!2!2!2 } 

check_procs_duplicate检查是否有任何重复的进程并返回状态 – 例如CRITICAL。

事件处理程序杀死重复进程及其依赖进程,并启动进程和依赖进程的一个实例。 在这个结尾,Nagios检查是否有任何重复的进程并相应地设置状态 – OK / WARNING / CRITICAL。

事件处理程序需要更多的时间来启动进程,在此期间,如果有人手动启动进程,状态将保持在CRITICAL本身。

在下一个时间间隔内,Nagios将再次检查重复的进程,它将再次发现它关键。

事件处理程序现在不会执行,因为前面的和当前的两个状态都是关键的。

任何关于如何解决这个问题的指针?

你可能要考虑把它变成一个不稳定的服务。 请参阅“ 易失性服务”的文档页面。

你所处理的并不是一个不稳定的服务,但是1和1的max_check_attempts的check_interval几乎是一样的。

如果你使服务变得不稳定,那么它应该在任何时候运行事件处理程序,而不仅仅是当状态“变化”时。