我所有 Linux 主机的联系人都是admins
Nagios contact_group
。但对于这台 Linux 主机,我希望contact_group
被叫方sandradebug
也能收到通知。
问题是,当我添加时,contact_groups sandradebug
仍然只会admins
收到通知,而不会收到sandradebug
。
问题
我怎样才能将sandradebug
这一主机包括在内,以便通知也发送到那里?
主机模板
define host {
name linux-host
use generic-host
check_command check-host-alive
notification_interval 4320
notification_options d,u,r
contact_groups admins
register 0
}
主机定义
define host {
use linux-host
host_name example
alias example
address 10.10.10.10
hostgroups default-linux-services
contact_groups sandradebug
}
答案1
问题是,当我添加时,
contact_groups sandradebug
仍然只会admins
收到通知,而不会收到sandradebug
。
您重启过 Nagios 吗?您的上述配置将覆盖模板值,并且只有sandradebug
组会收到这些警报。
我怎样才能将
sandradebug
这一主机包括在内,以便通知也发送到那里?
对象继承是您正在寻找的:
define host {
use linux-host
host_name example
alias example
address 10.10.10.10
hostgroups default-linux-services
contact_groups +sandradebug
}
使用+
标志,主机定义使用模板中的数据并将其添加sandradebug
到警报中。
答案2
为此,我只需将模板与定义结合起来,因为您只使用一次:
define host {
use generic-host
host_name example
alias example
address 10.10.10.10
hostgroups default-linux-services
check_command check-host-alive
notification_interval 4320
notification_options d,u,r
contact_groups sandradebug,admins
}
可能发生的情况是您的模板正在覆盖指定的联系人组。