Nagios超时配置

use*_*154 7 unix nagios

如何为每个服务检查设置单独的超时设置。根据主要配置,所有超时默认为60秒,但由于执行时间的缘故,我要求一项特殊检查的超时时间更长。

如何才能做到这一点?请帮忙。

谢谢

Jim*_*ack 6

解决此问题的最佳方法是将检查从“主动”执行转移到“被动”执行。被动检查根本不受Nagios系统的任何时间限制。您将必须根据需要将任何超时合并到被动检查脚本/程序本身中。这将使您可以完全控制检查应运行的时间-甚至还可以将需要继续运行的守护程序守护程序化。

全局超时的主要目的是防止出现我称为“检查堆栈”的情况。如果全局超时时间较长(尤其是大于最小检查间隔的超时时间),则有可能在旧检查完成之前触发新检查。这些可能导致从Nagios系统上的资源用尽到导致目标计算机和/或应用程序受压的一切。因此,增加这些全局超时通常不是一个好主意。这些超时一旦到达,将终止分叉的检查过程。


sho*_*app 2

编辑:我刚刚意识到你并不是在谈论远程服务检查,所以不幸的是,我需要将我的答案更改为“你不能”。如果要更改服务检查的超时设置,则必须将其应用于主配置文件中的所有服务检查。

您需要定义第二个命令参数,该参数使用您的特殊超时设置。

例如,这可能是您在commands.cfg中的原始检查:

define command{
    command_name    check_nrpe
    command_line    $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}
Run Code Online (Sandbox Code Playgroud)

这将是具有更长超时值的相同命令(也在commands.cfg中):

define command{
    command_name    check_nrpe_slow
    command_line    $USER1$/check_nrpe -H $HOSTADDRESS$ -t 120 -c $ARG1$
}
Run Code Online (Sandbox Code Playgroud)

如果有更好的方法来完成此 nagios-wizards 请告诉我!这将为我自己的配置文件节省大量空间。