我可以使用 USEDDISKSPACE 手动运行 check_nt,但是我得到了check_nt:无法解析参数从配置中调用时。另一个不起作用的是 SERVICESTATE。MEMUSE、CPULOAD 和 UPTIME 工作正常。有人有什么想法吗?我尝试对命令 .cfg 中的所有参数进行硬编码,但无济于事。
命令配置文件
define command {
command_name check_nt_DISK_C
command_line $USER1$/check_nt -H $HOSTADDRESS$ -p 12489 -l C -w $ARG1$ -c $ARG2$ -v USEDDISKSPACE
}
服务配置文件
define service {
use generic-service
host_name <server>
service_description USED DISK SPACE
check_command check_nt!DISK_C!-w 80 -c 90
check_interval 1
retry_interval 1
max_check_attempts 3
notification_options w,u,c,r
contact_groups toneman
notification_interval 0
}
答案1
按照commands.cfg 应该是这样的:
check_command check_nt_DISK_C!80 90
答案2
我对参数进行了硬编码,并为每个驱动器创建了新的命令定义。虽然代码有点多,但至少可以正常工作。
命令行 $USER1$/check_nt -H $HOSTADDRESS$ -p 12489 -w 80 -c 90 -l F -v USEDDISKSPACE