NAGIOS 中的批量确认警报

NAGIOS 中的批量确认警报

大家晚上好!

我一直在寻找解决方案,以便一次性批量确认 Nagios 中 500 多个服务通知的警报。经过长时间的努力,我偶然发现了自己构建以下脚本。请帮助分析其优缺点,或者是否有其他最佳替代方案。

#!/bin/sh

for name in $(cat list.txt)
do
    domainname=$name
    now=`date +%s`
    command="/var/spool/nagios/cmd/nagios.cmd"
    service=blacklist-check

    #The show begins
    /usr/bin/printf "[%lu] ACKNOWLEDGE_SVC_PROBLEM;$domainname;$service;2;1;1;mail_it;Should be de-listed in 1 week till 18 Nov, 2021.\n" $now >> $command
    echo "$name ACKNOWLEDGED! "

done
echo "ALL COMPLETED"

如能尽早答复我们将不胜感激。

感谢您

问候,西

答案1

请提供您正在使用的 Nagios 版本,以及它是否是开源的还是 Nagios X1。

问候,卡马尔

答案2

该脚本将会起作用,因为它基本上与在 Web 界面上单击所有服务并逐一确认它们相同。

但是,有一件事你应该考虑。命令文件 ( nagios.cmd) 是一个命名管道,因此,它具有有限的缓冲区,可以存储命令。根据你一次要发出的命令数量,你可能需要适当地设置external_command_buffer_slots和/或command_check_interval(请参阅Nagios 配置文档了解更多信息)。

相关内容