我已经让所有环境正常运行。我已经使用 check_nt 来监控进程,如下所示:
define service{
use generic-service
host_name netserver
contact_groups admins, analysts
service_description DBAccess
check_command check_nt!PROCSTATE!-d SHOWALL -l dbaccess.exe
}
这有效。但现在我需要监视具有相同 .exe 但具有不同参数的各种进程。
像这样:
appserver.exe -pf 实例1.ini appserver.exe -pf 实例2.ini appserver.exe -pf 测试.ini
我该如何让它工作?我不知道如何将它与 check_nt 一起使用
谢谢
答案1
在您的问题中,您没有指出要监视什么,我假设您想检查进程状态。 如果进程未运行,NSClient++ 将通过 NRPE 向 Nagios 发送通知。
假设您使用 NSClient++ 通过 Nagios 监控 Windows。
首先,您需要在 Windows 计算机的 nsclient.ini 下定义适当的别名(默认情况下:C:\program files\NSClient++\nsclient.ini)
alias_check_appserver = check_process "process=appserver.exe -pf $ARG1$" "crit=state != 'started'"
然后,您只需在 Nagios 服务器下相应地更改以下行即可定义服务:
例如1:
define service{
use generic-service
host_name netserver
contact_groups admins, analysts
service_description DBAccess
check_command check_nrpe!alias_check_appserver -a "instance1.ini"
}
它应该能起到作用。