我有 hostgroups.cfg 文件,其中我有不同的主机,不同的端口号。我想将每个主机的端口号传递给我放置 check_http 命令的 services.cfg 文件。
由于我的不同主机有不同端口号的不同http进程,所以我想直接从hosts.cfg文件传递端口号。可能吗?
以下是我在 hosts 和 services.cfg 文件中的示例条目
主机文件:
define host{
use abc
host_name test
alias /test/
address 192.168.0.24
hostgroups testgroup
}
services.cfg 文件
define service{
use critical-service
hostgroup_name test
service_description HTTP
check_command check_http!8080!7!5
}
commands.cfg 文件
define command{
command_name check_http
command_line $USER1$/check_http -H $HOSTADDRESS$ -p
$ARG1$ --url $HOSTALIAS$ -c $ARG2$ -w $ARG3$
}
在您的主机配置中,添加一个自定义变量,如下所示:
然后在您的 services.cfg 中,将端口换成您设置的变量(您需要为所有主机设置它):