我正在尝试为具有以下 webroot 的主机设置 nagios:www.example.com/ui/html/,但 nagios 不会接受这种主机路径 check_ping 作为主机:无效的主机名/地址。
有解决这个问题的方法吗?
# Define a host for the local machine
define host{
use linux-server ; Name of host template to use
; This host definition will inherit all variables that are defined
; in (or inherited by) the linux-server host template definition.
host_name example.com/ui/html
alias example.com/ui/html
address www.example.com/ui/html/
}
###############################################################################
###############################################################################
#
# SERVICE DEFINITIONS
#
###############################################################################
###############################################################################
# Define a service to check HTTP on the local machine.
# Disable notifications for this service by default, as not all users may have HTTP enabled.
define service{
use generic-service
name http-service
service_description HTTP
is_volatile 0
check_period 24x7
max_check_attempts 3
normal_check_interval 5
retry_check_interval 1
notifications_enabled 1
notification_interval 0
notification_period 24x7
notification_options c,r
check_command check_http!$HOSTADDRESS$
register 0
}
谢谢
答案1
你确定check_ping
这是你应该使用的吗?该check_ping
命令只是通过 ICMP ping 数据包验证系统的可用性。有关其用法的详细信息,请参阅此页面:http://nagiosplugins.org/man/check_ping
相反,我认为您需要使用该check_http
命令来验证 Web 服务器是否响应。以下是其用法的链接:http://nagiosplugins.org/man/check_http
从最近添加的配置文件中,您可以获得以下内容:
define host{
use linux-server
host_name example.com/ui/html
alias example.com/ui/html
address www.example.com/ui/html/
}
和address
行host_name
不正确。
- 应该
host_name
是www.example.com
,假设这是您希望监控的系统名称。 - 应该
address
是同一台机器的 IP 地址,而不是 URL 的名称和部分。
这两份说明均基于http://nagios.manubulon.com/traduction/docs25en/macros.html