第八章 宏:MACRO

简介:

zabbix宏

(1)宏是一种抽象,他根据一系列预定义的规则替换一定的文本模式,而解释器或编译器在遇到宏时会自动进行这一模式替换,可以理解为变量。 
(2)zabbix有许多内置的宏,如{HOST.NAME}、{HOST.IP}、{TRIGGER.DESCRIPTION}、{TRIGGER.NAME}、{TRIGGER.EVENTS.ACK}等 
(3)为了更强的灵活性,zabbix支持全局、模版或主机级别自定义宏,用户自定义宏要使用”{$MACRO}”这种特殊的语法格式,宏的名称只能使用大写字母、数字及下划线 
(4)宏可以应用在item keys和descriptions、trigger名称和表达 式、主机接口IP/DNS及端口、discovery机制的SNMP协议 的相关信息中等

优先级:主机 –> 模版 –> 全局 
在某级别找到后将直接使用;

宏的类型 
内建:{MACRO_NAME} 
自定义:{$MARCRO_NAME} #自建的宏加$

三个宏在zabbix的web界面里面地方

全局宏

wKioL1gcho_y3ZNMAACwHetZh38473.png

主机宏

wKioL1gchp_T659MAACGmy9nrT4704.png

模板宏

wKiom1gchq2SRx5kAAB_chmqduI443.png

实例:定义一个全局宏在管理,应用web监听的80端口

1、创建全局宏

wKioL1gchrzx70FFAABaCjJWe_I183.png

2、在监控项里面加入定义的宏

wKiom1gchsqhnUfoAADCfOI3wnc176.png

3、宏已经生效成功,(你可以关下httpd服务,看下监听是否正常,我的是正常的)

wKioL1gchtiwVbJkAADCXF6lZhI002.png




本文转自 好笔记运维 51CTO博客,原文链接:http://blog.51cto.com/zhang789/1869626,如需转载请自行联系原作者

相关文章
|
7月前
|
自然语言处理 编译器 Linux
C语言进阶⑳(程序环境和预处理)(#define定义宏+编译+文件包含)(下)
C语言进阶⑳(程序环境和预处理)(#define定义宏+编译+文件包含)
71 0
|
7月前
|
存储 程序员 编译器
C语言进阶⑳(程序环境和预处理)(#define定义宏+编译+文件包含)(上)
C语言进阶⑳(程序环境和预处理)(#define定义宏+编译+文件包含)
58 0
|
7月前
|
程序员 编译器 C语言
C语言进阶⑳(程序环境和预处理)(#define定义宏+编译+文件包含)(中)
C语言进阶⑳(程序环境和预处理)(#define定义宏+编译+文件包含)
46 0
|
7月前
|
算法 Serverless C语言
CMake函数和宏(function和macro):使用函数和宏提高代码可读性
CMake函数和宏(function和macro):使用函数和宏提高代码可读性
144 1
|
7月前
|
Rust 编译器 开发者
Rust中的进阶宏:派生宏与属性宏
本文将深入探讨Rust编程语言中的派生宏(Derive Macros)和属性宏(Attribute Macros)这两种进阶宏的用法。派生宏用于自动生成实现特定trait的代码,而属性宏则允许我们为模块、函数、结构体等添加自定义属性。我们将通过实例展示如何在Rust项目中使用这些高级宏来增强代码的可读性和可维护性。
|
C++
C++宏 #与##的区别
C++宏 #与##的区别
56 0
|
存储 安全 编译器
【为什么】C++中的宏
【为什么】C++中的宏
138 0
|
C语言
c语言分层理解(#define定义宏)
c语言已经完结,有兴趣的可以收藏一下我的c语言专栏,感谢各位大佬支持! 1.宏是什么? #define 机制包括了一个规定,允许把参数替换到文本中,这种实现通常称为宏(macro)或定义 宏(define macro)。
172 0
|
安全 编译器 Linux
【C/C++】你了解预处理吗?带你深度剖析#define定义宏
【C/C++】你了解预处理吗?带你深度剖析#define定义宏
226 0
#define 定义宏 概念和函数的优缺点,使用条件 #undef 宏的副作用 宏使用时的“潜规则“
#define 定义宏 概念和函数的优缺点,使用条件 #undef 宏的副作用 宏使用时的“潜规则“
159 0