我需要在警报邮件正文中显示服务阈值(-w ARG1 和 -c ARG2)WARNING
和状态。CRITICAL
随着邮件的发送SERVICESTATE
,SERVICEOUTPUT
收件人将更好地理解该服务的门槛到底是什么。
尝试了以下行,位于命令.conf 文件的邮件正文中。"Service threshold for WARNING at $ARG1$ and CRITICAL at $ARG$"
没有用。请帮忙提供任何方法来获取阈值。
注意:所有主机和服务均通过 NRPE 主机代理进行监控,使用本地 nrpe.conf 文件中提到的命令和阈值。Nagios 版本:4.3 核心
答案1
这些值$ARG1$
等被传递给 check 命令。我认为,notify 命令没有办法访问它们。notify 命令接收的参数来自service_notification_command
或host_notification_command
值。
实现目标的一种方法是在主机/服务中定义自定义变量,例如
define service {
service_description MyCheck
...
_CWARN 5
_CCRITICAL 10
}
请注意前面的下划线。
然后可以使用宏$_SERVICECWARN$
和$_SERVICECCRITICAL$
(或对于主机对象为$_HOSTCWARN$
和)访问该变量。$_HOSTCCRITICAL$
您还可以在检查命令中引用这些宏而不是$ARG1$
等等,这样您就不需要在两个地方更新值。