check_http 目录结果在 "Name or service not known"

check_http with directory results in "Name or service not known"

我有一个 nagios 系统,运行良好,我想用 check_http 检查一个特定的 url。 命令定义:

define command{
    command_name    check_http_with_folder
    command_line    $USER1$/check_http -H $HOSTADRESS$ -u http://$HOSTADRESS$$ARG1$
}

我认为它是正确的......但它给我一个

"Name or service not known"

当我从我的 nagios 机器上从命令行调用它时,它运行良好并且我得到一个状态结果 200,一切正常。 现在的问题是,我希望 nagios 命令正常工作而不抛出错误。

有什么想法吗?

P.S。问题仅出在带有 -u xxx 参数的部分,没有它(在没有 -u 的正常 check_http 命令中)一切正常。

您在命令定义中拼写错误 $HOSTADDRESS$。它需要 2 D。此外,您可能希望确保在传递给 -u 命令参数的值中 $HOSTADDRESS$$ARG1$ 之间有斜杠,或者确保 $ARGS1$ 具有前面的斜杠。

基于 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.phpcheck_http 检查会将其构建到实际的 http 请求中。