宏:macro,预设的文本替换模式:

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

 

内置{MACRO}    不需要加$就可以引用:

zabbix有许多内置的宏,如{HOST.NAME}、{HOST.IP}、{TRIGGER.DESCRIPTION}、{TRIGGER.NAME}、{TRIGGER.EVENTS.ACK}等。

关于系统内建宏可参照zabbix官方文档:

https://www.zabbix.com/documentation/3.0/manual/appendix/macros/supported_by_location

1 Macros supported by location部分

 

自定义{$MACRO}  需要加$才能引用:

注意:在调用和定义时都需要加$

为了更强的灵活性,zabbix还支持在全局、模板或主机级别使用用户自定义宏(user macro)

用户自定义宏使用"{$MACRO}"这种特殊的语法格式

宏可以应用在item keys和descriptions、trigger名称和表达式、主机接口IP/DNS及端口、discovery机制的SNMP协议的相关信息中等。

宏的名称只能使用大写字母、数字及下划线

用户自定义宏,有以下两种途径:

全局宏:"Administrator-->General-->Macros"

主机或模板级别的宏:编辑相应主机或模板的属性即可

关于用户自定义宏可参考zabbix官方文档:

https://www.zabbix.com/documentation/3.0/manual/appendix/macros/supported_by_location

Additional support for user macros部分

 

宏的级别:

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

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

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

 

宏的替换次序:

主机在使用宏上:

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

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

首先是主机级别的宏;

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

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

最后检查的是全局宏;

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

Macros使用示例:

在主机级别定义一个名为{$CPUMAXSWITCHES}的宏,以定义当前主机所接受的CPU上下文切换的合理次数

在trigger中使用该宏变量:

zabbix上的宏(macro)介绍的更多相关文章

  1. [易学易懂系列|rustlang语言|零基础|快速入门|(22)|宏Macro]

    [易学易懂系列|rustlang语言|零基础|快速入门|(22)|宏Macro] 实用知识 宏Macro 我们今天来讲讲Rust中强大的宏Macro. Rust的宏macro是实现元编程的强大工具. ...

  2. 关于宏MACRO,我们需要知道的事

    一.先从最宏观的角度来了解宏,这里的宏观角度是指程序的运行流程: 1,提交代码后,SAS先把代码读取储存到堆栈中: 2,用文本扫描插件来扫描堆栈中的代码,从上到下,从左到右: 3,扫描到一个分号,则编 ...

  3. 如何在Zabbix上安装MySQL监控插件PMP

    PMP,全称是Percona Monitoring Plugins,是Percona公司为MySQL监控写的插件.支持Nagios,Cacti.从PMP 1.1开始,支持Zabbix. 下面,看看如何 ...

  4. 25 Zabbix系统数据表结构介绍

    点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 25 Zabbix系统数据表结构介绍 自学Zabbix之路15.1 Zabbix数据库表结构简单解 ...

  5. flask第30篇——宏macro和import标签

    宏是Jinja2特有的,像Django则没有这个. 先新建一个项目macroDemo: 然后在templates文件夹中新建index.html文件,并在代码中返回渲染后的文件: 然后回到index. ...

  6. Flask基础(15)-->模板代码的复用【宏(Macro)、继承(Block)、包含(include)】

    宏 对宏(macro)的理解: 把它看作 Jinja2 中的一个函数,它会返回一个模板或者 HTML 字符串 为了避免反复地编写同样的模板代码,出现代码冗余,可以把他们写成函数以进行重用 需要在多处重 ...

  7. 获取zabbix上所有主机的IP和主机名

    #coding:utf-8 #获取zabbix上所有主机的IP和主机名 import requests import json import csv import time def get_token ...

  8. zabbix上添加交换机监控记事

    ​ zabbix上添加交换机监控记事 ​ 第一次使用zabbix来添加监控华为s5720交换机,根本找不到头绪,像个无头的苍蝇一样的百度来处理,结果都没有任何效果,给自己增加了很多痛苦和心烦,增加不少 ...

  9. C语言的宏macro的使用

    C's Macro Introduction 1.The Connect Macros: ## 这是一个预处理连接符,这个操作符主要用来将两个符号连接成为一个完整的宏符号.通过下面的代码,可以看到其具 ...

随机推荐

  1. 支持鼠标拖拽滑动的jQuery焦点图

    在线演示 本地下载

  2. Centos7.4 Nginx反向代理+负载均衡配置

    Ningx是一款高性能的HTTP和反向代理服务器,配置起来也比较简单. 测试环境: 172.16.65.190 Nginx-反向代理 172.16.65.191 Ningx-Web 172.16.65 ...

  3. 定时任务 Linux cron job 初步使用

     查看定时任务的命令为:crontab -l   编辑定时任务的命令为:crontab -e   (编辑后立即生效 若注释可在行首加#  同vi)         定时任务说明       每一行为一 ...

  4. Linux系统LVM分区减容扩容

    Linux系统LVM分区减容扩容 目标:将VolGroup-lv_home缩小到20G,并将剩余的空间添加给VolGroup-lv_root 1.首先查看磁盘使用情况 [root@localhost ...

  5. 16个tomcat面试题

    1)解释什么是Jasper? Jasper是Tomcat的JSP引擎 它解析JSP文件,将它们编译成JAVA代码作为servlet 在运行时,Jasper允许自动检测JSP文件的更改并重新编译它们 2 ...

  6. Linux查看文件编码格式及文件编码转换<转>

    如果你需要在Linux 中操作windows下的文件 ,那么你可能会经常遇到文件 编码 转换的问题.Windows中默认的文件 格式是GBK(gb2312),而Linux 一般都是UTF-8.下面介绍 ...

  7. HBase-过滤器(各种过滤器及代码实现)

    过滤器简介 HBase过滤器提供了非常强大的特性来帮助用户提高其处理表中数据的效率. HBase中两种主要的数据读取函数是get和scan,它们都支持直接访问数据和通过指定起止行键访问数据的功能.可以 ...

  8. poj 1061 青蛙的约会 扩展欧几里德

    青蛙的约会 Time Limit: 1000MS   Memory Limit: 10000K       Description 两 只青蛙在网上相识了,它们聊得很开心,于是觉得很有必要见一面.它们 ...

  9. AOP理解,待细看

    http://jinnianshilongnian.iteye.com/blog/1474325

  10. js:for循环ul/li,获取当前被点击元素的id,以及给其他li设置属性

    js:for循环ul/li,获取当前被点击元素的id,以及给其他li设置属性 <!doctype html> <html> <head> <meta char ...