第一次Nagios

试图让纳吉斯运行起来,一直呆在这里,不完全确定我在做什么错误..任何帮助将是伟大的=)

/usr/local/nagios/bin/nagios -v /etc/nagios/nagios.cfg Checking contacts... Error: Contact 'nagios' has no service notification commands defined! Error: Contact 'nagios' has no host notification commands defined! 

所以我认为这是我的contacts.cfg问题?

 define contact contact_name nagios alias Nagios Admin host_notification_period24x7 service_notification_period 24x7 service_notification_options w,u,c,r host_notification_options d,u,r email nagios-admin@localhost can_submit_commands 1 

或者,也许我的contactgroups.cfg?

 define contactgroup contactgroup_name localadmins alias Local Site Administrators members nagios 

谢谢您的帮助!

你是否复制了所有的示例cfg文件?

您的联系人或联系人组中应该包含以下两行代码:

 service_notification_commands notify-service-by-email host_notification_commands notify-host-by-email 

另外,它们需要被定义为命令,默认情况下应该是命令commands.cfg

它显示你缺less几件事情。

首先,确保当你定义一个联系人,它被定义propery ie ..

 define contact { contact_name INSERT_NAME_HERE; alias SOME_ALIAS_HERE; email EMAIL@EXAMPLE; service_notification_period 24x7; host_notification_period 24x7; service_notification_options w,u,c,r,f,s; host_notification_options d,u,r,f,s; service_notification_commands notify-service-by-email; send service notifications via email host_notification_commands notify-host-by-email; send host notifications via email } 

从您的post看来,您似乎错过了定义联系人开头和结尾的{}。 看起来你也错过了什么错误信息。 在我的部署中,我使用模板,实际上模板文件中的通用模板是一个很好的起点。 创build联系人时,可以通过在您的define语句中调用它来引用这些通用模板,如下所示:

 define contact { contact_name INSERT_NAME_HERE; use generic-contact; alias SOME_ALLIAS_HERE; email EMAIL@EXAMPLE; } 

然后,您的联系人定义将inheritance通用模板的所有默认值。

希望这可以帮助。

您缺less选项service_notification_commandshost_notification_commands notify-host-by-email因此nagios在得到警报时不知道该怎么做。

您也在电子邮件地址之前缺lessemail关键字

我的nagios联系人看起来像这样:

 define contact { contact_name george alias george service_notification_period 24x7 host_notification_period 24x7 service_notification_options w,u,c,r host_notification_options d,r service_notification_commands notify-service-by-email <-- Missing host_notification_commands notify-host-by-email <-- Missing email george@stackoverflow.com } 

这告诉nagios发送一个电子邮件到email选项中指定的帐户。 在这种情况下,george@stackoverflow.com

这是一个旧的post,但如果有人遇到问题,请分享我的意见。
您可以在UI下添加命令
CoreConfigManager->联系人 – >(select联系人) – >警报设置

之后不要忘记应用configuration 。 🙂