Nagios中的标准宏

宏观有效性

尽管宏可以在您定义的所有命令中使用,但并非所有宏在特定类型的命令中都可能是“有效的”。例如,某些宏可能仅在服务通知命令期间有效,而其他宏可能仅在主机检查命令期间有效。Nagios识别和对待的命令有十种类型。它们如下:

  1. 服务检查
  2. 服务通知
  3. 主机检查
  4. 主机通知
  5. 服务事件处理程序和/或全局服务事件处理程序
  6. 主机事件处理程序和/或全局主机事件处理程序
  7. OCSP命令
  8. OCHP命令
  9. 服务性能数据命令
  10. 主机性能数据命令

下表列出了Nagios Core中当前可用的所有宏,以及每个宏的简要说明以及有效的命令类型。如果在无效的命令中使用了宏,则将其替换为空字符串。应当注意,宏由所有大写字符组成,并用$字符括起来。

宏可用性图表

没有宏不可用
该宏可用
宏名服务检查服务通知主机检查主机通知服务事件处理程序和OCSP主机事件处理程序和OCHP服务性能数据主机性能数据
主机宏:3
$ HOSTNAME $
$ HOSTDISPLAYNAME $
$ HOSTALIAS $
$ HOSTADDRESS $
$ HOSTSTATE $是的1
$ HOSTSTATEID $是的1
$ LASTHOSTSTATE $
$ LASTHOSTSTATEID $
$ HOSTSTATETYPE $是的1
$ HOSTATTEMPT $
$ MAXHOSTATTEMPTS $
$ HOSTEVENTID $
$ LASTHOSTEVENTID $
$ HOSTPROBLEMID $
$ LASTHOSTPROBLEMID $
$ HOSTLATENCY $
$ HOSTEXECUTIONTIME $是的1
$ HOSTDURATION $
$ HOSTDURATIONSEC $
$ HOSTDOWNTIME $
$ HOSTPERCENTCHANGE $
$ HOSTGROUPNAME $
$ HOSTGROUPNAMES $
$ HOSTINFOURL $
$ LASTHOSTCHECK $
$ LASTHOSTSTATECHANGE $
$ LASTHOSTUP $
$ LASTHOSTDOWN $
$ LASTHOSTUNREACHABLE $
$ HOSTOUTPUT $是的1
$ LONGHOSTOUTPUT $是的1
$ HOSTPERFDATA $是的1
$ HOSTCHECKCOMMAND $
$ HOSTACKAUTHOR $ 8没有没有没有没有没有没有没有
$ HOSTACKAUTHORNAME $ 8没有没有没有没有没有没有没有
$ HOSTACKAUTHORALIAS $ 8没有没有没有没有没有没有没有
$ HOSTACKCOMMENT $ 8没有没有没有没有没有没有没有
$ HOSTACTIONURL $
$ HOSTNOTESURL $
$ HOSTNOTES $
$ TOTALHOSTSERVICES $
$ TOTALHOSTSERVICESOK $
$ TOTALHOSTSERVICESWARNING $
$ TOTALHOSTSERVICESUNKNOWN $
$ TOTALHOSTSERVICESCRITICAL $
$ HOSTIMPORTANCE $

宏名服务检查服务通知主机检查主机通知服务事件处理程序和OCSP主机事件处理程序和OCHP服务性能数据主机性能数据
主机组宏:
$ HOSTGROUPALIAS $ 5
$ HOSTGROUPMEMBERS $ 5
$ HOSTGROUPTES $ 5
$ HOSTGROUPNOTESURL $ 5
$ HOSTGROUPACTIONURL $ 5

宏名服务检查服务通知主机检查主机通知服务事件处理程序和OCSP主机事件处理程序和OCHP服务性能数据主机性能数据
服务宏:
$ SERVICEDESC $没有没有没有没有
$ SERVICEDISPLAYNAME $没有没有没有没有
$ SERVICESTATE $是的2没有没有没有没有
$ SERVICESTATEID $是的2没有没有没有没有
$ LASTSERVICESTATE $没有没有没有没有
$ LASTSERVICESTATEID $没有没有没有没有
$ SERVICESTATETYPE $没有没有没有没有
$ SERVICEATTEMPT $没有没有没有没有
$ MAXSERVICEATTEMPTS $没有没有没有没有
$ SERVICEISVOLATILE $没有没有没有没有
$ SERVICEEVENTID $没有没有没有没有
$ LASTSERVICEEVENTID $没有没有没有没有
$ SERVICEPROBLEMID $没有没有没有没有
$ LASTSERVICE问题MID $没有没有没有没有
$ SERVICELATENCY $没有没有没有没有
$ SERVICEEXECUTIONTIME $是的2没有没有没有没有
$ SERVICEDURATION $没有没有没有没有
$ SERVICEDURATIONSEC $没有没有没有没有
$ SERVICEDOWNTIME $没有没有没有没有
$ SERVICEPERCENTCHANGE $没有没有没有没有
$ SERVICEGROUPNAME $没有没有没有没有
$ SERVICEGROUPNAMES $没有没有没有没有
$ SERVICEINFOURL $没有没有没有没有
$ LASTSERVICECHECK $没有没有没有没有
$ LASTSERVICESTATECHANGE $没有没有没有没有
$ LASTSERVICEOK $没有没有没有没有
$ LASTSERVICEWARNING $没有没有没有没有
$ LASTSERVICEUNKNWN $没有没有没有没有
$ LASTSERVICECRITICAL $没有没有没有没有
$ SERVICEOUTPUT $是的2没有没有没有没有
$ LONGSERVICEOUTPUT $是的2没有没有没有没有
$ SERVICEPERFDATA $是的2没有没有没有没有
$ SERVICECHECKCOMMAND $没有没有没有没有
$ SERVICEACKAUTHOR $ 8没有没有没有没有没有没有没有
$ SERVICEACKAUTHORNAME $ 8没有没有没有没有没有没有没有
$ SERVICEACKAUTHORALIAS $ 8没有没有没有没有没有没有没有
$ SERVICEACKCOMMENT $ 8没有没有没有没有没有没有没有
$ SERVICEACTIONURL $没有没有没有没有
$ SERVICENOTESURL $没有没有没有没有
$ SERVICENOTES $没有没有没有没有
$ SERVICEIMPORTANCE $没有没有没有没有

宏名服务检查服务通知主机检查主机通知服务事件处理程序和OCSP主机事件处理程序和OCHP服务性能数据主机性能数据
服务组宏:
$ SERVICEGROUPALIAS $ 6
$ SERVICEGROUPMEMBERS $ 6
$ SERVICEGROUPTES $ 6
$ SERVICEGROUPNOTESURL $ 6
$ SERVICEGROUPACTIONURL $ 6

宏名服务检查服务通知主机检查主机通知服务事件处理程序和OCSP主机事件处理程序和OCHP服务性能数据主机性能数据
主机和服务宏:
$ HOSTANDSERVICESIMPORTANCE $

宏名服务检查服务通知主机检查主机通知服务事件处理程序和OCSP主机事件处理程序和OCHP服务性能数据主机性能数据
联系人宏:
$ CONTACTNAME $没有没有没有没有没有没有
$ CONTACTALIAS $没有没有没有没有没有没有
$ CONTACTEMAIL $没有没有没有没有没有没有
$ CONTACTPAGER $没有没有没有没有没有没有
$ CONTACTADDRESSn $没有没有没有没有没有没有

宏名服务检查服务通知主机检查主机通知服务事件处理程序和OCSP主机事件处理程序和OCHP服务性能数据主机性能数据
联系人组宏:
$联系方式$ 7
$联系人小组成员$ 7

宏名服务检查服务通知主机检查主机通知服务事件处理程序和OCSP主机事件处理程序和OCHP服务性能数据主机性能数据
摘要宏:
$ TOTALHOSTSUP $ 1044
$ TOTALHOSTSDOWN $ 1044
$ TOHOSTSUNREACHABLE $ 1044
$ TOHOSTSDOWNDOWNHANDLED $ 1044
$ TOHOSTSUNREACHABLEUNHANDLED $ 1044
$ TOTALHOST问题$ 1044
$ TOHOST问题共 10美元44
$ TOTALSERVICESOK $ 1044
$ TOTALSERVICESWARNING $ 1044
$ TOTALSERVICESCRITICAL $ 1044
$ TOTALSERVICESUNKNOWN $ 1044
$ TOTALSERVICESWARNINGUNHANDLED $ 1044
$ TOTALSERVICESCRITICALUNHANDLED $ 1044
$ TOTALSERVICESUNKNOWNUNHLED $ 1044
$ TOTALSERVICE问题$ 1044
$ TOTALSERVICE问题未解决$ 1044

宏名服务检查服务通知主机检查主机通知服务事件处理程序和OCSP主机事件处理程序和OCHP服务性能数据主机性能数据
通知宏:
$ NOTIFICATIONTYPE $没有没有没有没有没有没有
$ NOTIFICATIONRECIPIENTS $没有没有没有没有没有没有
$ NOTIFICATIONATIONSCALATED $没有没有没有没有没有没有
$ NOTIFICATIONAUTHOR $没有没有没有没有没有没有
$ NOTIFICATIONAUTHORNAME $没有没有没有没有没有没有
$ NOTIFICATIONAUTHORALIAS $没有没有没有没有没有没有
$ NOTIFICATIONCOMMENT $没有没有没有没有没有没有
$ HOSTNOTIFICATIONATION $$没有没有没有没有没有没有
$ HOSTNOTIFICATIONID $没有没有没有没有没有没有
$ HOSTNOTIFICATIONATIONEN $没有没有
$ HOSTNOTIFICATIONATIONPER $没有没有
$ SERVICENOTIFICATIONNUMBER $没有没有没有没有没有没有
$ SERVICENOTIFICATIONID $没有没有没有没有没有没有
$ SERVICENOTIFICATIONATIONEN $没有没有没有没有
$ SERVICENOTIFICATIONATIONPER $没有没有没有没有

宏名服务检查服务通知主机检查主机通知服务事件处理程序和OCSP主机事件处理程序和OCHP服务性能数据主机性能数据
日期/时间宏:
$ LONGDATETIME $
$ SHORTDATETIME $
$ DATE $
$ TIME $
$ TIMET $
$ ISVALIDTIME:$ 9
$ NEXTVALIDTIME:$ 9

宏名服务检查服务通知主机检查主机通知服务事件处理程序和OCSP主机事件处理程序和OCHP服务性能数据主机性能数据
文件宏:
$ MAINCONFIGFILE $
$ STATUSDATAFILE $
$ COMMENTDATAFILE $是的< 5 / td>
$ DOWNTIMEDATAFILE $
$ RETENTIONDATAFILE $
$ OBJECTCACHEFILE $
$ TEMPFILE $
$ TEMPPATH $
$ LOGFILE $
$ RESOURCEFILE $
$ COMMANDFILE $
$ HOSTPERFDATAFILE $
$ SERVICEPERFDATAFILE $

宏名服务检查服务通知主机检查主机通知服务事件处理程序和OCSP主机事件处理程序和OCHP服务性能数据主机性能数据
其他宏:
$ PROCESSSTARTTIME $
$ EVENTSTARTTIME $
$ ADMINEMAIL $
$ ADMINPAGER $
$ CHECKSOURCE $
$ ARGn $
$ USERn $

宏描述

主机宏:3
$ HOSTNAME $主机的简称(即“ biglinuxbox”)。此值来自主机定义中host_name指令。
$ HOSTDISPLAYNAME $主机的备用显示名称。此值来自主机定义中display_name指令。
$ HOSTALIAS $主机的长名称/说明。该值取自主机定义中alias伪指令。
$ HOSTADDRESS $主机地址。该值取自主机定义中address指令。
$ HOSTSTATE $指示主机当前状态的字符串(“ UP”,“ DOWN”或“ UNREACHABLE”)。
$ HOSTSTATEID $对应于主机当前状态的数字:0 = UP,1 = DOWN,2 = UNREACHABLE。
$ LASTHOSTSTATE $一个字符串,指示主机的最后状态(“ UP”,“ DOWN”或“ UNREACHABLE”)。
$ LASTHOSTSTATEID $对应于主机最后状态的数字:0 = UP,1 = DOWN,2 = UNREACHABLE。
$ HOSTSTATETYPE $一个字符串,指示当前主机检查的状态类型(“ HARD”或“ SOFT”)。当主机检查返回非OK(非UP)状态并处于重试过程时,就会出现软状态。当对主机检查进行了指定的最大次数检查时,会产生硬状态。
$ HOSTATTEMPT $当前主机检查重试的次数。例如,如果这是第二次重新检查主机,那么它将是第二位。当前尝试次数实际上仅在为基于主机重试次数采取特定操作的“软”状态编写主机事件处理程序时才有用。
$ MAXHOSTATTEMPTS $为当前主机定义的最大检查尝试次数。在为基于主机重试编号执行特定操作的“软”状态编写主机事件处理程序时很有用。
$ HOSTEVENTID $与主机当前状态关联的全局唯一编号。每当主机(或服务)经历状态更改时,全局事件ID号就会增加一(1)。如果主机未经历任何状态更改,则此宏将设置为零(0)。
$ LASTHOSTEVENTID $先前赋予主机的(全局唯一)事件号。
$ HOSTPROBLEMID $与主机当前问题状态关联的全局唯一编号。每次主机(或服务)从UP或OK状态转换为问题状态时,全局问题ID号就会增加一(1)。如果主机当前处于非UP状态,则此宏将为非零值。非UP状态之间的状态转换(例如DOWN到UNREACHABLE)不会导致此问题ID增加。如果主机当前处于UP状态,则此宏将设置为零(0)。与事件处理程序结合使用时,该宏可用于在主机首次进入问题状态时自动打开故障单。
$ LASTHOSTPROBLEMID $先前给主机的(全局唯一)问题编号。与事件处理程序结合使用时,此宏可用于在主机恢复到UP状态时自动关闭故障单等。
$ HOSTLATENCY $一个(浮点数)数字,表示计划的主机检查落后于其计划的检查时间的秒数。例如,如果检查计划在03:14:15进行,并且直到03:14:17才执行,则检查延迟为2.0秒。按需主机检查的延迟为零秒。
$ HOSTEXECUTIONTIME $一个(浮点数)数字,表示执行主机检查所需的秒数(即检查执行的时间)。
$ HOSTDURATION $一个字符串,指示主机在其当前状态所花费的时间。格式为“ XXh YYm ZZs”,表示小时,分钟和秒。
$ HOSTDURATIONSEC $一个数字,指示主机在当前状态下花费的秒数。
$ HOSTDOWNTIME $一个数字,指示主机的当前“停机时间深度”。如果此主机当前处于计划的停机时间,则该值将大于零。如果主机当前不在停机时间,则该值为零。
$ HOSTPERCENTCHANGE $一个(浮点数)数字,表示主机经历的状态变化百分比。襟翼检测算法使用状态变化百分比。
$ HOSTGROUPNAME $该主机所属主机组的简称。该值取自主机组定义中hostgroup_name指令。如果该主机属于多个主机组,则此宏将仅包含其中一个主机名。
$ HOSTGROUPNAMES $以逗号分隔的列表,列出了该主机所属的所有主机组的简称。
$ HOSTINFOURL $从website_url主配置选项派生的主机信息页面的URL。版本:4.3.3+
$ LASTHOSTCHECK $这是time_t格式的时间戳(自UNIX时代以来的秒数),指示最后一次执行主机检查的时间。
$ LASTHOSTSTATECHANGE $这是time_t格式的时间戳(自UNIX时代以来的秒数),指示主机上次更改状态的时间。
$ LASTHOSTUP $这是time_t格式的时间戳(自UNIX时代以来的秒数),指示最后一次检测到主机处于UP状态的时间。
$ LASTHOSTDOWN $这是time_t格式的时间戳(自UNIX时代以来的秒数),指示最后一次检测到主机处于DOWN状态的时间。
$ LASTHOSTUNREACHABLE $这是time_t格式的时间戳(自UNIX时代以来的秒数),指示最后一次检测到主机处于UNREACHABLE状态的时间。
$ HOSTOUTPUT $最后一个主机检查输出的第一行文本(即“ Ping OK”)。
$ LONGHOSTOUTPUT $上次主机检查的全文输出(除了第一行)。
$ HOSTPERFDATA $该宏包含上次主机检查可能返回的任何性能数据
$ HOSTCHECKCOMMAND $该宏包含用于执行主机检查的命令名称(以及传递给它的所有参数)。
$ HOSTACKAUTHOR $ 8包含确认主机问题的用户名的字符串。该宏仅在$ NOTIFICATIONTYPE $宏设置为“ ACKNOWLEDGEMENT”的通知中有效。
$ HOSTACKAUTHORNAME $ 8包含确认主机问题的联系人(如果适用)的简称的字符串。该宏仅在$ NOTIFICATIONTYPE $宏设置为“ ACKNOWLEDGEMENT”的通知中有效。
$ HOSTACKAUTHORALIAS $ 8包含确认主机问题的联系人(如果适用)的别名的字符串。该宏仅在$ NOTIFICATIONTYPE $宏设置为“ ACKNOWLEDGEMENT”的通知中有效。
$ HOSTACKCOMMENT $ 8包含确认主机问题的用户输入的确认注释的字符串。该宏仅在$ NOTIFICATIONTYPE $宏设置为“ ACKNOWLEDGEMENT”的通知中有效。
$ HOSTACTIONURL $主机的操作URL。该宏可能包含其他宏(例如$ HOSTNAME $),当您要将主机名传递到网页时,这些宏可能很有用。
$ HOSTNOTESURL $主机的注释URL。该宏可能包含其他宏(例如$ HOSTNAME $),当您要将主机名传递到网页时,这些宏可能很有用。
$ HOSTNOTES $主机说明。该宏可能包含其他宏(例如$ HOSTNAME $),当您要在描述中托管特定于状态的信息等时,这些宏可能很有用。
$ TOTALHOSTSERVICES $与主机关联的服务总数。
$ TOTALHOSTSERVICESOK $处于OK状态的与主机关联的服务总数。
$ TOTALHOSTSERVICESWARNING $处于警告状态的与主机关联的服务总数。
$ TOTALHOSTSERVICESUNKNOWN $处于未知状态的与主机关联的服务总数。
$ TOTALHOSTSERVICESCRITICAL $处于严重状态的与主机关联的服务总数。
$ HOSTIMPORTANCE $主机的重要性值。

主机组宏:5
$ HOSTGROUPALIAS $ 5长名称/别名的以下两者之一:1)作为按需宏参数传递的主机组名称,或2)与当前主机关联的主要主机组(如果未在按需宏的上下文中使用)。该值取自主机组定义中alias指令。
$ HOSTGROUPMEMBERS $ 5包含以下所有主机的逗号分隔列表:1)作为按需宏参数传递的主机组名称,或2)与当前主机关联的主要主机组(如果未在按需宏的上下文中使用) 。
$ HOSTGROUPTES $ 5与以下内容相关的注释:1)作为按需宏参数传递的主机组名称,或与2)与当前主机相关联的主要主机组(如果未在按需宏的上下文中使用)。该值取自主机组定义中notes指令。
$ HOSTGROUPNOTESURL $ 5与以下内容关联的注释URL:1)作为按需宏参数传递的主机组名称,或2)与当前主机关联的主要主机组(如果未在按需宏的上下文中使用)。此值来自主机组定义中notes_url指令。
$ HOSTGROUPACTIONURL $ 5与以下操作相关联的操作URL:1)作为按需宏参数传递的主机组名称,或2)与当前主机相关联的主要主机组(如果未在按需宏的上下文中使用)。此值来自主机组定义中action_url指令。

服务宏:
$ SERVICEDESC $服务的全名/描述(即“主网站”)。此值来自服务定义service_description指令。
$ SERVICEDISPLAYNAME $服务的备用显示名称。此值来自服务定义中display_name指令。
$ SERVICESTATE $指示服务当前状态的字符串(“ OK”,“ WARNING”,“ UNKNOWN”或“ CRITICAL”)。
$ SERVICESTATEID $对应于服务当前状态的数字:0 = OK,1 = WARNING,2 = CRITICAL,3 = UNKNOWN。
$ LASTSERVICESTATE $指示服务的最后状态的字符串(“确定”,“警告”,“未知”或“严重”)。
$ LASTSERVICESTATEID $对应于服务的最后状态的数字:0 = OK,1 = WARNING,2 = CRITICAL,3 = UNKNOWN。
$ SERVICESTATETYPE $一个字符串,指示当前服务检查的状态类型(“ HARD”或“ SOFT”)。当服务检查返回非OK状态并处于重试过程中时,就会出现软状态。硬状态是在对服务检查进行了指定的最大次数检查后得出的。
$ SERVICEATTEMPT $当前服务检查重试的次数。例如,如果这是第二次重新检查服务,则将是第二个。当前尝试次数实际上仅在为基于服务重试次数采取特定操作的“软”状态编写服务事件处理程序时才有用。
$ MAXSERVICEATTEMPTS $为当前服务定义的最大检查尝试次数。在为根据服务重试号采取特定操作的“软”状态编写主机事件处理程序时很有用。
$ SERVICEISVOLATILE $指示服务是否被标记为易失性:0 =不易失,1 =易失。
$ SERVICEEVENTID $与服务的当前状态关联的全局唯一编号。每当服务(或主机)经历状态更改时,全局事件ID号就会增加一(1)。如果服务未经历任何状态更改,则此宏将设置为零(0)。
$ LASTSERVICEEVENTID $赋予服务的先前(全局唯一)事件号。
$ SERVICEPROBLEMID $与服务当前问题状态关联的全局唯一编号。每次服务(或主机)从OK或UP状态转换为问题状态时,全局问题ID号都会增加一(1)。如果服务当前处于非正常状态,则此宏将为非零值。非OK状态之间的状态转换(例如,警告为CRITICAL)不会导致此问题ID增大。如果服务当前处于OK状态,则此宏将设置为零(0)。与事件处理程序结合使用时,该宏可用于在服务首次进入问题状态时自动打开故障单。
$ LASTSERVICE问题MID $先前提供给服务的(全球唯一)问题编号。与事件处理程序结合使用时,此宏可用于在服务恢复到OK状态时自动关闭故障单等。
$ SERVICELATENCY $一个(浮点数)数字,表示计划服务检查落后于计划检查时间的秒数。例如,如果检查计划在03:14:15进行,并且直到03:14:17才执行,则检查延迟为2.0秒。
$ SERVICEEXECUTIONTIME $一个(浮点数)数字,表示执行服务检查所需的秒数(即检查执行的时间)。
$ SERVICEDURATION $一个字符串,指示服务在其当前状态所花费的时间。格式为“ XXh YYm ZZs”,表示小时,分钟和秒。
$ SERVICEDURATIONSEC $一个数字,指示服务在其当前状态下花费的秒数。
$ SERVICEDOWNTIME $一个数字,指示服务的当前“停机时间深度”。如果此服务当前处于计划的停机时间,则该值将大于零。如果该服务当前不在停机时间,则该值为零。
$ SERVICEPERCENTCHANGE $一个(浮点数)数字,表示服务已经历的状态变化百分比。襟翼检测算法使用状态变化百分比。
$ SERVICEGROUPNAME $该服务所属的服务组的简称。此值来自服务定义中的servicegroup_name指令。如果该服务属于多个服务组,则此宏将仅包含其中一个的名称。
$ SERVICEGROUPNAMES $以逗号分隔的列表,列出了该服务所属的所有服务组的简称。
$ SERVICEINFOURL $从website_url主配置选项派生的服务信息页面的URL。版本:4.3.3+
$ LASTSERVICECHECK $这是time_t格式的时间戳(自UNIX时代以来的秒数),指示最后一次执行服务检查的时间。
$ LASTSERVICESTATECHANGE $这是time_t格式的时间戳(自UNIX时代以来的秒数),指示服务上次更改状态的时间。
$ LASTSERVICEOK $这是time_t格式的时间戳(自UNIX时代以来的秒数),指示最后一次检测到该服务处于OK状态的时间。
$ LASTSERVICEWARNING $这是time_t格式的时间戳(自UNIX时代以来的秒数),指示最后一次检测到该服务处于WARNING状态的时间。
$ LASTSERVICEUNKNWN $这是time_t格式的时间戳(自UNIX时代以来的秒数),指示上次检测到服务处于UNKNOWN状态的时间。
$ LASTSERVICECRITICAL $这是time_t格式的时间戳(自UNIX时代以来的秒数),指示上次检测到服务处于CRITICAL状态的时间。
$ SERVICEOUTPUT $上次服务检查(即“ Ping OK”)输出的第一行文本。
$ LONGSERVICEOUTPUT $上次服务检查的全文输出(第一行除外)。
$ SERVICEPERFDATA $该宏包含上次服务检查可能返回的任何性能数据
$ SERVICECHECKCOMMAND $该宏包含用于执行服务检查的命令名称(以及传递给它的所有参数)。
$ SERVICEACKAUTHOR $ 8一个字符串,其中包含确认服务问题的用户的名称。该宏仅在$ NOTIFICATIONTYPE $宏设置为“ ACKNOWLEDGEMENT”的通知中有效。
$ SERVICEACKAUTHORNAME $ 8一个字符串,其中包含确认服务问题的联系人的简称(如果适用)。该宏仅在$ NOTIFICATIONTYPE $宏设置为“ ACKNOWLEDGEMENT”的通知中有效。
$ SERVICEACKAUTHORALIAS $ 8一个字符串,其中包含确认服务问题的联系人的别名(如果适用)。该宏仅在$ NOTIFICATIONTYPE $宏设置为“ ACKNOWLEDGEMENT”的通知中有效。
$ SERVICEACKCOMMENT $ 8包含确认服务问题的用户输入的确认注释的字符串。该宏仅在$ NOTIFICATIONTYPE $宏设置为“ ACKNOWLEDGEMENT”的通知中有效。
$ SERVICEACTIONURL $服务的操作URL。该宏可能包含其他宏(例如$ HOSTNAME $或$ SERVICEDESC $),当您要将服务名称传递给网页时,这些宏可能很有用。
$ SERVICENOTESURL $服务的注释URL。该宏可能包含其他宏(例如$ HOSTNAME $或$ SERVICEDESC $),当您要将服务名称传递给网页时,这些宏可能很有用。
$ SERVICENOTES $服务说明。此宏可能包含其他宏(例如,$ HOSTNAME $或$ SERVICESTATE $),当您想在描述中提供特定于服务的状态信息时,这些宏可能很有用。
$ SERVICEIMPORTANCE $服务的重要性值。

服务组宏:6
$ SERVICEGROUPALIAS $ 6长名称/别名的以下两者之一:1)作为按需宏参数传递的服务组名称,或2)与当前服务关联的主要服务组(如果未在按需宏的上下文中使用)。此值取自servicegroup定义中alias指令。
$ SERVICEGROUPMEMBERS $ 6属于以下各项的所有服务的逗号分隔列表:1)作为按需宏参数传递的服务组名称,或2)与当前服务关联的主要服务组(如果未在按需宏的上下文中使用) 。
$ SERVICEGROUPTES $ 6与以下各项相关的注释:1)作为按需宏参数传递的服务组名称,或2)与当前服务相关联的主要服务组(如果未在按需宏的上下文中使用)。此值来自servicegroup定义中notes指令。
$ SERVICEGROUPNOTESURL $ 6与以下各项关联的注释URL:1)作为按需宏参数传递的服务组名称,或2)与当前服务关联的主要服务组(如果未在按需宏的上下文中使用)。此值来自servicegroup定义中notes_url指令。
$ SERVICEGROUPTES $ 6与以下操作相关联的操作URL:1)作为按需宏参数传递的服务组名称,或2)与当前服务相关联的主要服务组(如果未在按需宏的上下文中使用)。此值来自服务组定义中action_url指令。

主机和服务宏:
$ HOSTANDSERVICESIMPORTANCE $主机的重要性值加上所有主机服务的重要性值。

联系人宏:
$ CONTACTNAME $主机或服务问题得到通知的联系人(即“ jdoe”)的简称。此值来自联系人定义中contact_name指令。
$ CONTACTALIAS $通知联系人(即“ John Doe”)的全名/描述。该值取自联系人定义中alias伪指令。
$ CONTACTEMAIL $通知联系人的电子邮件地址。此值来自联系人定义中email指令。
$ CONTACTPAGER $被通知的联系人的寻呼机号码/地址。此值取自联系人定义中pager指令。
$ CONTACTADDRESSn $被通知的联系人的地址。每个联系人可以有六个不同的地址(除了电子邮件地址和传呼机号码)。这些地址的宏是$ CONTACTADDRESS1 $-$ CONTACTADDRESS6 $。此值取自联系人定义中addressx指令。
$ CONTACTGROUPNAME $该联系人所属的联系人组的简称。该值取自contactgroup定义中的contactgroup_name指令。如果该联系人属于多个联系人组,则此宏将仅包含其中一个的名称。
$ CONTACTGROUPNAMES $以逗号分隔的列表,列出了该联系人所属的所有联系人组的简称。

联系人组宏:5
$联系方式$ 7长名称/别名的以下两者之一:1)作为按需宏参数传递的联系人组名称,或2)与当前联系人相关联的主要联系人组(如果未在按需宏的上下文中使用)。该值取自contactgroup定义中alias指令。
$联系人小组成员$ 7以逗号分隔的所有联系人列表,这些联系人属于:1)作为按需宏参数传递的联系人组名称,或2)与当前联系人关联的主要联系人组(如果未在按需宏的上下文中使用) 。

摘要宏:
$ TOTALHOSTSUP $此宏反映当前处于UP状态的主机总数。
$ TOTALHOSTSDOWN $该宏反映当前处于DOWN状态的主机总数。
$ TOHOSTSUNREACHABLE $该宏反映了当前处于UNREACHABLE状态的主机总数。
$ TOHOSTSDOWNUNHANDLED $该宏反映当前未处于“处理”状态的处于DOWN状态的主机总数。未处理的主机问题是未确认的主机问题,当前不在计划的停机时间以及当前启用检查的主机问题。
$ TOHOSTSUNREACHABLEUNHANDLED $该宏反映当前未处于“处理”状态的处于UNREACHABLE状态的主机总数。未处理的主机问题是未确认的主机问题,当前不在计划的停机时间以及当前启用检查的主机问题。
$ TOTALHOST问题$该宏反映了当前处于DOWN或UNREACHABLE状态的主机总数。
$ TOHOST问题无法解决$此宏反映当前未处于“处理”状态的处于DOWN或UNREACHABLE状态的主机总数。未处理的主机问题是未确认的主机问题,当前不在计划的停机时间以及当前启用检查的主机问题。
$ TOTALSERVICESOK $此宏反映当前处于OK状态的服务总数。
$ TOTALSERVICESWARNING $该宏反映当前处于“警告”状态的服务总数。
$ TOTALSERVICESCRITICAL $该宏反映当前处于“关键”状态的服务总数。
$ TOTALSERVICESUNKNOWN $该宏反映了当前处于未知状态的服务总数。
$ TOTALSERVICESWARNINGUNHANDLED $此宏反映当前处于“警告”状态且当前未被“处理”的服务总数。未处理的服务问题是未确认的问题,当前不在计划的停机时间以及当前启用检查的问题。
$ TOTALSERVICESCRITICALUNHANDLED $此宏反映当前处于“关键”状态且当前未被“处理”的服务总数。未处理的服务问题是未确认的问题,当前不在计划的停机时间以及当前启用检查的问题。
$ TOTALSERVICESUNKNOWNUNHLED $此宏反映当前处于“未知”状态且当前未被“处理”的服务总数。未处理的服务问题是未确认的问题,当前不在计划的停机时间以及当前启用检查的问题。
$ TOTALSERVICEPROMSMS $此宏反映当前处于“警告”,“严重”或“未知”状态的服务总数。
$ TOTALSERVICE问题未解决$此宏反映当前处于“警告”,“严重”或“未知”状态且当前未“处理”的服务总数。未处理的服务问题是未确认的问题,当前不在计划的停机时间以及当前启用检查的问题。

通知宏:
$ NOTIFICATIONTYPE $一个字符串,用于标识正在发送的通知的类型(“问题”,“恢复”,“确认”,“ FLAPPINGSTART”,“ FLAPPINGSTOP”,“ FLAPPINGDISABLED”,“ DOWNTIMESTART”,“ DOWNTIMEEND”或“ DOWNTIMECANCELLED”)。
$ NOTIFICATIONRECIPIENTS $以逗号分隔的列表,其中列出了有关主机或服务的所有联系人的短名称。
$ NOTIFICATIONATIONSCALATED $一个整数,指示是否将其发送给主机或服务的常规联系人,或者是否已升级。0 =正常(非升级)通知,1 =升级通知。
$ NOTIFICATIONAUTHOR $一个字符串,其中包含编写通知的用户的名称。如果$ NOTIFICATIONTYPE $宏设置为“ DOWNTIMESTART”或“ DOWNTIMEEND”,则这将是为主机或服务安排停机时间的用户的名称。如果$ NOTIFICATIONTYPE $宏为“ ACKNOWLEDGEMENT”,则这是确认主机或服务问题的用户的名称。如果$ NOTIFICATIONTYPE $宏为“ CUSTOM”,则这将是启动自定义主机或服务通知的用户的名称。
$ NOTIFICATIONAUTHORNAME $一个字符串,其中包含$ NOTIFICATIONAUTHOR $宏中指定的联系人的简称(如果适用)。
$ NOTIFICATIONAUTHORALIAS $一个字符串,包含在$ NOTIFICATIONAUTHOR $宏中指定的联系人的别名(如果适用)。
$ NOTIFICATIONCOMMENT $包含通知作者输入的注释的字符串。如果$ NOTIFICATIONTYPE $宏设置为“ DOWNTIMESTART”或“ DOWNTIMEEND”,则这是为主机或服务安排停机时间的用户输入的注释。如果$ NOTIFICATIONTYPE $宏为“ ACKNOWLEDGEMENT”,则这是确认主机或服务问题的用户输入的注释。如果$ NOTIFICATIONTYPE $宏为“ CUSTOM”,则将由初始化自定义主机或服务通知的用户输入注释。
$ HOSTNOTIFICATIONATION $$主机的当前通知号。每次向主机发出新通知时,通知号将增加一(1)(确认除外)。通知次数重置为0时,主机恢复正常后(恢复通知熄灭)。确认不会导致通知数量增加,也不会导致襟翼检测或计划的停机时间的通知。
$ HOSTNOTIFICATIONID $标识主机通知的唯一编号。通知ID编号在主机和服务通知之间都是唯一的,因此您可能会将此唯一编号用作通知数据库中的主键。只要您启用状态保留,通知ID号在Nagios流程的重新启动期间应保持唯一。每次发出新的主机通知时,无论通知了多少联系人,通知ID号都会增加一(1)。
$ HOSTNOTIFICATIONATIONEN $标识主机对象是否启用了通知的“是”或“否”值。版本:4.4.0+
$ HOSTNOTIFICATIONATIONPER $返回主机对象的notification_period指令。版本:4.4.0+
$ SERVICENOTIFICATIONNUMBER $服务的当前通知号。每次为服务发送新通知时,通知号将增加一(1)(确认除外)。通知次数重置为0时,该服务恢复正常后(恢复通知熄灭)。确认不会导致通知数量增加,也不会导致襟翼检测或计划的停机时间的通知。
$ SERVICENOTIFICATIONID $标识服务通知的唯一编号。通知ID编号在主机和服务通知之间都是唯一的,因此您可能会将此唯一编号用作通知数据库中的主键。只要您启用状态保留,通知ID号在Nagios流程的重新启动期间应保持唯一。每次发出新的服务通知时,无论通知了多少联系人,通知ID号都会增加一(1)。
$ SERVICENOTIFICATIONATIONEN $标识服务对象是否已启用通知的“是”或“否”值。版本:4.4.0+
$ SERVICENOTIFICATIONATIONPER $返回服务对象的notification_period指令。版本:4.4.0+

日期/时间宏:
$ LONGDATETIME $当前日期/时间戳(即2000年10月13日星期五00:30:28 CDT)。日期格式由date_format指令确定。
$ SHORTDATETIME $当前日期/时间戳(即10-13-2000 00:30:28)。日期格式由date_format指令确定。
$ DATE $日期戳(即10-13-2000)。日期格式由date_format指令确定。
$ TIME $当前时间戳(即00:30:28)。
$ TIMET $当前时间戳为time_t格式(自UNIX时代以来的秒数)。
$ ISVALIDTIME:$ 9这是一个特殊的按需宏,它根据特定时间在指定时间内是否有效返回1或0。有两种使用此宏的方法:如果当前时间在“ 24×7”时间内有效,则$ ISVALIDTIME:24×7 $将被设置为“ 1”。如果不是,它将被设置为“ 0”。$ ISVALIDTIME:24×7:如果“ timestamp”参数指定的时间(必须为time_t格式)在“ 24×7”时间段内有效,则时间戳记$将设置为“ 1”。如果不是,它将被设置为“ 0”。
$ NEXTVALIDTIME:$ 9这是一个特殊的按需宏,它按指定时间段返回下一个有效时间(采用time_t格式)。有两种使用此宏的方法:$ NEXTVALIDTIME:24×7 $将在“ 24×7”时间段内返回下一个有效时间-从当前时间开始,包括当前时间。$ NEXTVALIDTIME:24×7:timestamp $将以“ 24×7” timeperiod返回下一个有效时间-从“ timestamp”参数指定的时间(包括该时间,必须以time_t格式指定)。如果在指定的时间段内找不到下一个有效时间,则宏将设置为“ 0”。

文件宏:
$ MAINCONFIGFILE $主配置文件的位置。
$ STATUSDATAFILE $状态数据文件的位置。
$ COMMENTDATAFILE $注释数据文件的位置。
$ DOWNTIMEDATAFILE $停机数据文件的位置。
$ RETENTIONDATAFILE $保留数据文件的位置。
$ OBJECTCACHEFILE $对象高速缓存文件的位置。
$ TEMPFILE $临时文件的位置。
$ TEMPPATH $临时路径变量指定的目录。
$ LOGFILE $日志文件的位置。
$ RESOURCEFILE $资源文件的位置。
$ COMMANDFILE $命令文件的位置。
$ HOSTPERFDATAFILE $主机性能数据文件的位置(如果已定义)。
$ SERVICEPERFDATAFILE $服务性能数据文件的位置(如果已定义)。

其他宏:
$ PROCESSSTARTTIME $time_t格式的时间戳(自UNIX时代以来的秒数),指示Nagios进程的上一次(重新)启动时间。您可以通过从$ TIMET $中减去$ PROCESSSTARTTIME $来确定Nagios已运行的秒数(自上次重新启动以来)。
$ EVENTSTARTTIME $time_t格式的时间戳(自UNIX时代以来的秒数),指示Nagios处理何时开始处理事件(检查等)。您可以通过从$ EVENTSTARTTIME $中减去$ PROCESSSTARTTIME $来确定Nagios启动所用的秒数。
$ ADMINEMAIL $全局管理电子邮件地址。该值来自admin_email指令。
$ ADMINPAGER $全局管理寻呼机号码/地址。该值取自admin_pager指令。
$ CHECKSOURCE $主机或服务检查的源工作者。
$ ARGn $传递给命令的第n个参数(通知,事件处理程序,服务检查等)。Nagios最多支持32个参数宏($ ARG1 $至$ ARG32 $)。
$ USERn $用户定义的第n个宏。可以在一个或多个资源文件中定义用户宏。Nagios支持多达256个用户宏($ USER1 $到$ USER256 $)。

笔记

1当检查该主机时,这些宏对于与其关联的主机无效(即,它们没有意义,因为尚未确定)。

2当检查该服务时,这些宏对于与它们关联的服务无效(即,它们没有意义,因为尚未确定)。

3在与服务相关的命令(例如,服务通知,事件处理程序等)中使用主机宏时,它们指的是与服务相关联的主机。

4在通知命令中使用主机和服务摘要宏时,将对总计进行过滤,以仅反映获得联系授权的主机和服务(即,它们配置为接收通知的主机和服务)。

5这些宏通常与与当前主机关联的第一/主主机组关联。因此,在许多情况下,它们可以被视为主机宏。但是,这些宏不能用作按需主机宏。相反,当您将主机组的名称传递给宏时,它们可以用作按需主机组宏。例如:$ HOSTGROUPMEMBERS:hg1 $将返回主机组hg1的所有(主机)成员的逗号分隔列表。

6这些宏通常与与当前服务关联的第一/主要服务组关联。因此,在许多情况下,它们可以被视为服务宏。但是,这些宏不能作为按需服务宏使用。相反,当您将服务组的名称传递给宏时,它们可以用作按需服务组宏。例如:$ SERVICEGROUPMEMBERS:sg1 $将返回服务组sg1的所有(服务)成员的逗号分隔列表。

7这些宏通常与与当前联系人关联的第一个/主要联系人组关联。因此,在许多情况下,可以将它们视为联系人宏。但是,这些宏不能用作按需联系人宏。而是,当您将联系人组的名称传递给宏时,它们可以用作按需联系人组宏。例如:$ CONTACTGROUPMEMBERS:cg1 $将返回逗号分隔的联系人组cg1的所有(联系人)成员的列表

8不赞成使用这些确认宏。改用更通用的$ NOTIFICATIONAUTHOR $,$ NOTIFICATIONAUTHORNAME $,$ NOTIFICATIONAUTHORALIAS $或$ NOTIFICATIONCOMMENT $宏。

9这些宏仅作为按需宏可用-例如,必须使用它们提供附加参数才能使用它们。这些宏不能用作环境变量。

如果启用了use_large_installation_tweaks选项,则10个摘要宏不能用作环境变量,因为它们的计算量很大。

觉得文章有用?

点个广告表达一下你的爱意吧 !😁