Zabbix5.0版本 宏(macro)概念详解

Posted 我的紫霞辣辣

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Zabbix5.0版本 宏(macro)概念详解相关的知识,希望对你有一定的参考价值。

宏(macro)的概念:

macro,预设的文本替换模式:宏是一种抽象概念(Abstraction),它根据一些列预定义的规则替换一定的文本模式,而解释或编译器在遇到宏时会自动进行这一模式替换。类似地,zabbix基于宏保存预设文本模式,并且在调用时将其替换为其中的文本。

内置{MACRO} 不需要加$就可以引用: zabbix有许多内置的宏,如 {HOST.NAME}、{HOST.IP}、{TRIGGER.DESCRIPTION}、{TRIGGER.NAME}、{TRIGGER.EVENTS.ACK}等。 系统内置{macro}官网

自定义{$MACRO} 需要加$才可以引用: 为了更强的灵活性,zabbix还支持在 全局模板主机级别 使用用户自定义宏(user macro)。

用户自定义宏使用 “{$MACRO}” 这种特殊的语法格式。 注意:在调用和定义时都需要加$,宏的名称只能使用大写字母、数字及下划线!!!

宏(macro)的级别:

全局:定义全局宏,全局定义

模板:定义模板宏,在模板上定义

主机:定义主机宏,在主机上定义

宏(macro)的优先级:

主机在使用宏上:

主机==>模板==>全局(查找顺序,优先级顺序:主机==>模板==>全局)

先在主机上查找,如果主机没有定义,然后在模板上查找,如果仍然没有定义,在全局查找

首先是主机级别的宏;

其次是当前主机上一级模板中(直接链接至主机的模板)的宏,多个一级模板按其ID号排序;

在接着是二级模板(模板链接的模板)中的宏;而后依次类推;

最后检查的是全局宏;

zabbix如果无法查找到某主机定义使用的宏,则不会对其进行替换操作。

自定义宏(macros)使用示例:



zabbix宏(macro)使用:自定义监控阈值

监控服务器登陆人数模板配置




测试

根据我们的配置,使用同一个模板的情况下,

client01登陆的人数>2个人,触发器会发出告警。

client02登陆的人数>3个人,触发器会发出告警。



以上是关于Zabbix5.0版本 宏(macro)概念详解的主要内容,如果未能解决你的问题,请参考以下文章

自定义print macro,两对括号,单参数macro指定参数macro可变参数宏

Rust 1.7.0的macro宏-语法分析和使用举例

Zabbix5.0监控系统安装详解

zabbix上的宏(macro)介绍

zabbix上的宏(macro)介绍

Zabbix5.0版本 分布式监控