Zabbix触发器源代码分析
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,Zabbix的trigger就是用来设置监控报警条件的,如果监控项目是基于模板的,那么直接在创建模板的时候设置相应item的trigger即可,如果监控项目不是基于模板的而是单独添加的,那么对于多台服
千家信息网最后更新 2026年10月31日Zabbix触发器源代码分析
Zabbix的trigger就是用来设置监控报警条件的,如果监控项目是基于模板的,那么直接在创建模板的时候设置相应item的trigger即可,如果监控项目不是基于模板的而是单独添加的,那么对于多台服务器添加相应的trigger就得使用程序处理了。
创建trigger相关的源代码
frontends/php/include/triggers.inc.php
frontends/php/triggers.php
triggers表用于记录每个trigger的详细信息
mysql> desc triggers;+-------------+---------------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+-------------+---------------------+------+-----+---------+-------+| triggerid | bigint(20) unsigned | NO | PRI | NULL | || expression | varchar(2048) | NO | | | || description | varchar(255) | NO | | | || url | varchar(255) | NO | | | || status | int(11) | NO | MUL | 0 | || value | int(11) | NO | MUL | 0 | || priority | int(11) | NO | | 0 | || lastchange | int(11) | NO | | 0 | || comments | text | NO | | NULL | || error | varchar(128) | NO | | | || templateid | bigint(20) unsigned | YES | MUL | NULL | || type | int(11) | NO | | 0 | || state | int(11) | NO | | 0 | || flags | int(11) | NO | | 0 | |+-------------+---------------------+------+-----+---------+-------+14 rows in set (0.12 sec)
functions表记录每个trigger相关的函数
mysql> desc functions;+------------+---------------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+------------+---------------------+------+-----+---------+-------+| functionid | bigint(20) unsigned | NO | PRI | NULL | || itemid | bigint(20) unsigned | NO | MUL | NULL | || triggerid | bigint(20) unsigned | NO | MUL | NULL | || function | varchar(12) | NO | | | || parameter | varchar(255) | NO | | 0 | |+------------+---------------------+------+-----+---------+-------+5 rows in set (0.00 sec)
trigger_depends表记录不同trigger的依赖关系
mysql> desc trigger_depends;+----------------+---------------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+----------------+---------------------+------+-----+---------+-------+| triggerdepid | bigint(20) unsigned | NO | PRI | NULL | || triggerid_down | bigint(20) unsigned | NO | MUL | NULL | || triggerid_up | bigint(20) unsigned | NO | MUL | NULL | |+----------------+---------------------+------+-----+---------+-------+3 rows in set (0.01 sec)
triggers表通过triggerid与functions表关联,functions表通过itemid与items表关联,而items表可以通过hostid与hosts表关联
根据triggerid查找trigger信息
SELECT t.* FROM triggers t WHERE t.triggerid=13073;
根据triggerid查找hosts
select distinct h.* from hosts h,functions f,items i where i.itemid=f.itemid and h.hostid=i.hostid and triggerid=13073\G
根据hostid查找所有的triggers
select distinct t.* from triggers t,functions f,items i where f.itemid=i.itemid and f.triggerid=t.triggerid and i.hostid=10309;
根据trigger描述和host名称获取所有的triggers
select t.* from triggers t,functions f,items i ,hosts h where i.hostid=h.hostid and f.itemid=i.itemid and t.triggerid=f.triggerid and h.host='tw-xxxxxx' and t.description='Processor load is too high on {HOST.NAME}' order by t.triggerid desc;
模板
关联
监控
信息
项目
源代码
不同
函数
可以通过
名称
多台
就是
时候
服务器
条件
监控报警
程序
而是
处理
报警
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技公司简介
智能科技公司是互联网公司吗
科技互联网技术
互联网科技ppt模板
互联网科技上市公司
互联网科技logo设计
互联网科技大会案例
美国互联网前沿科技
华脉科技工业互联网产品
浙江互联网科技研学营
深圳育鹏互联网科技有限公司招聘
银川新华互联网科技学校联系电话
广州富喜互联网络科技
城市宝互联网科技有限公司
上海创道互联网络科技有限公司
互联网与数字科技关系
互联网科技企业商标注意事项
广州智享互联网科技
上海互联网科技园景观
恒生互联网科技趋势
广州为想互联网科技有限公司
互联网的科技
互联网科技会
国外互联网科技网站
四个字互联网科技公司取名
须眉科技是互联网公司吗
成都互联网科技公司100强
企晟互联网信息科技有限公司
福建互联网展示科技馆设计
恒生科技指数 中概互联网