Zabbix预处理功能简介


Zabbix预处理功能详解_grafana

作者简介

Zabbix认证工程师

Zabbix社区讲师

多年Linux运维经验,3年Zabbix使用经验。精通Zabbix开源监控系统的架构、部署、使用和维护,善于Shell和Python开发。




Zabbix预处理功能概述


自Zabbix 3.4版本更新了许多新功能,其中一个监控项功能Preprocessing,即在监控项收集数据存储到数据库前,预先对数据进行处理,使用效果超过预期。这个功能存放位置在创建item后多了一个Preprocessing选项卡,截图如下:


Zabbix预处理功能详解_zabbix_02

点击查看大图




预处理数据类型


简单解析下Preprocessing类型:


Zabbix预处理功能详解_python_03Zabbix预处理功能详解_python_04Zabbix预处理功能详解_python_05

点击查看大图


PS:更多详细数据类型,请点击查阅。




实际操作案例分享


案例1 常规预处理:单位转换


以服务器的Swap监控为例


1. 自定义一个监控项Item

自定义关于“free -m”的信息的监控项


UserParameter=free.swap.info,free -m


Zabbix预处理功能详解_grafana_06

点击查看大图


2. 配置含依赖项的Item(类型为Dependent item)


Zabbix预处理功能详解_python_07

点击查看大图


3. 配置预处理Preprocessing规则


即可实现Zabbix对Swap Free大小的监控。其中,^Swap:.*(\b[0-9]+\b).*(\b[0-9]+\b).*(\b[0-9]+\b)匹配Swap信息,\3取的是Swap Free的值,然后再单位换算,兆转化为字节。


Zabbix预处理功能详解_python_08

点击查看大图


案例2 以XML格式配置预处理


1. 自定义一个监控项Item


Zabbix预处理功能详解_linux_09Zabbix预处理功能详解_grafana_10

点击查看大图


2. 配置含依赖项的Item(类型为Dependent item)


选中“Dependent item”即“相关项目”,自定义键值,再添加对应的依赖项(”Master item”),完成依赖项Item的创建。


Zabbix预处理功能详解_linux_11

点击查看大图


3. 配置预处理Preprocessing规则


Zabbix预处理功能详解_预处理_12

点击查看大图



注:详细的XML过滤规则,详情请自行找度娘。也可以点击参考学习。



预处理新功能:自Zabbix4.2开始,预处理Preprocessing有测试test功能,可选中“测试”,附上对应的XML文件,进行“应用”,此处统计note.xml的body为几个部分,得出测试结果与最新数据的结果一致。


Zabbix预处理功能详解_预处理_13Zabbix预处理功能详解_python_14Zabbix预处理功能详解_python_15Zabbix预处理功能详解_zabbix_16

点击查看大图




总    结


Zabbix  Preprocessing功能较人性化,非常实用。而较Zabbix3.4之前版本来说,省却使用外部检查预先编写字符串处理脚本,减少了配置繁琐的监控项,降低了Zabbix外部检查的性能消耗,Preprocessing的出现使得问题能更快地解决,便于大家灵活的处理Zabbix监控数据。Zabbix4.2之后新增很多实用的功能,大家可以在实际操作中慢慢了解更多操作技巧。


Zabbix预处理功能详解_python_17

更多精彩,即将到来!


Zabbix预处理功能详解_linux_18

2019年09月11日    《Problem Checks:Zabbix中如何定义问题、检查问题、展示问题、有效响应问题》

2019年09月26日    《Zabbix中的硬件监控》

2019年10月16日    《Zabbix整合Grafana》

​​​​