我有一个nagios系统,运行良好,我想用check_http检查一个特定的URL。 该命令已定义:
define command{
command_name check_http_with_folder
command_line $USER1$/check_http -H $HOSTADRESS$ -u http://$HOSTADRESS$$ARG1$
}
我认为它是正确的......但是它让我失望了
“名称或服务未知”
当我从命令行从我的nagios机器调用它时,它运行良好,我得到状态结果200,所以一切都好。 现在问题是,我希望nagios命令工作而不是抛出错误。
任何想法?
P.S。问题只出在带有-u xxx param的部分,如果没有它(在没有-u的普通check_http命令中)它一切运行良好。
答案 0 :(得分:2)
您的命令定义中拼错了$HOSTADDRESS$
。它需要2 D
秒。此外,您可能希望确保在传递给$HOSTADDRESS$
命令参数的值中$ARG1$
和-u
之间存在斜杠,或确保$ARGS1$
具有前面的斜线。
答案 1 :(得分:1)
以Joe的观察为基础......
请注意更正:
define command{
command_name check_http_with_folder
command_line $USER1$/check_http -H $HOSTADDRESS$ -u $ARG1$
}
那么$HOSTADDRESS$
应该就是这样。例如,www.example.com
。并且$ARG1$
应该只是主持人的位置。例如,/blog/index.php
。 check_http
检查会将其构建为实际的http
请求。