我认为以下总结宏不考虑被动服务:$TOTALSERVICESCRITICALUNHANDLED$(这是一个与我直接看到的问题)我认为以下两个有同样的问题:TOTALSERVICESWARNINGUNHANDLED美元TOTALSERVICESUNKNOWNUNHANDLED美元未处于停机时间且未被确认的被动服务将正确地显示在Nagios Core的未处理服务页面中。但是,我使用的一个脚本输出了$TOTALSERVICESCRITICALUNHANDLED$的值,它不考虑非停机、非ack和处于临界状态的被动服务。此宏上的文字指示服务必须"启用检查",但这可能不包括被动检查。:";此宏反映当前处于"临界"状态且当前未被"处理"的服务总数。未处理的服务问题是那些未确认的、当前不在计划停机时间内的、并且当前已启用检查的服务问题。">
我的设置:我有一个命令,由一个定期调度的服务执行。该命令将宏$TOTALSERVICESCRITICALUNHANDLED$的值传递给脚本。脚本只是回显该宏的值。
测试:所有服务都处于停机状态,除了我的被动服务启用了被动服务并且处于临界状态。剧本正在吐出"0"字。未处理的关键警报的数量(这是不正确的!)在被动服务上启用主动检查,脚本现在告诉我"1">
Nagios Core Version 4.3.2请告知这是一个错误,在以后的版本或是否有任何解决方法为我?我已经看到了这个相关的问题,在4.2.2修复,但是一个不同的问题:viewtopic.php?t = 39957
我最终对源代码做了这个修改。我可以假设,如果一个服务处于停机状态或被确认,它将不会被计算在总警报计数中。所以checks_enabled的检查是多余的,并且错误地抛出被动服务(似乎checks_enabled是一个只代表ACTIVE检查的标志)
common/macros.c从1216行开始:注释掉它检查的3个实例,每个2行"if(temp_service->checks_enabled == FALSE) problem = FALSE
(然后重新构建Nagios Core)
我能看到的唯一一种情况是,如果活动服务的活动检查被禁用,并且也不在停机或已确认