zabbix从放弃到入门(7):触发器详解之一,创建触发器

  • A+
所属分类:zabbix  运维技术

这篇文章将会介绍怎样在zabbix中创建触发器,并解释触发器的各个配置。

在本博客中,"zabbix"是一个系列文章,如果你还不明白zabbix的相关概念,强烈建议从zabbix系列文章中的第一篇开始阅读,否则你可能无法理解这篇文章中涉及到的部分名词。

zabbix系列文章列表直达链接:zabbix入门系列

zabbix从放弃到入门(7):触发器详解之一,创建触发器

在上一篇文章中,我们已经大概描述了触发器、事件、动作的概念,并且通过"养鸡场"的场景比喻了它们,这次我们来看看怎样创建一个触发器,并且细细品味一番。

我们继续使用之前的测试环境,如果你对我们的测试环境还不了解,可以参考之前的文章,首先,打开我们的zabbix控制台。

zabbix从放弃到入门(7):触发器详解之一,创建触发器

 

因为testzbx1主机上并不存在任何触发器,所以此处的触发器列表为空,如果对应主机上已经存在对应的触发器,我们可以通过过滤条件筛选出我们想要得到的触发器,此处,我们直接点击"创建触发器"按钮。

zabbix从放弃到入门(7):触发器详解之一,创建触发器

 

可以看到触发器的创建配置界面如下,我们为触发器起个名字,名字叫"RootPartitionUsedTrigger",从名字你也能看出来,这个触发器是为了监控根分区的使用率而创建的,还记得我们之前创建的监控项"RootPartitionUsed" 吗? 我们现在要做的就是为这个监控项创建一个触发器,当这个监控项的值达到我们指定的阈值时,就会产生某个"事件",以便我们采取后续的措施,我们在前文中拿"养鸡场"的场景举了例子,当养鸡场的温度低于30度时,红灯就会亮起,而此处,我们会把"养鸡场的温度"换成"磁盘使用率",把"30度"换成了"13%",把红灯亮起想象成某个"事件"即可。而且我们在前文也已经说过,触发器的本质其实是一个表达式,用来定义监控项的阈值,那么我们怎样配置这个表达式呢,点击下图中的"添加"按钮,即可配置触发器的表达式。

zabbix从放弃到入门(7):触发器详解之一,创建触发器

 

点击上图中标注的"添加"按钮以后,可以看到如下界面,这个界面,就是我们用来配置"触发器"的表达式的界面。

zabbix从放弃到入门(7):触发器详解之一,创建触发器

1、监控项:前文中说过,我们往往通过触发器定义被监控项的阈值,那么这个触发器是定义哪个监控项的阈值呢,我们可以通过此处进行选择。

2、功能:功能说起来比较麻烦,但是并不难理解,我们举个例子,还拿之前的"养鸡场"做例子,我发现这个例子特好使,如果你没有看过我们所描述的"养鸡场"的场景,最好先看看之前的文章,会方便我们理解很多东西。我们设定,养鸡场的温度不能低于30度,如果低于30度,则报警,于是我们在养鸡场里面放置了一台设备,这台设备的作用就是每隔1分钟检测一下养鸡场的室温,如果低于30度,就亮起红灯并且警铃大作,比如,我们可以定义,如果最近一次的检测值低于30度,那么就报警,也可以定义,如果5分钟前的检测值低于30度,则报警,甚至,我们还可以这样定义,如果连续10分钟内获取的温度值的平均值小于30度,则报警。那么,在zabbix中,怎样实现这样的灵活设定呢,没错,就是通过 "功能"栏定义的,功能栏中将常用的各种定义已经为我们准备好了,比如,最近T次监测或者T分钟以内,养鸡场的温度出现了小于N度的情况, 在功能栏中可以选择 "最新的T值 < N "。

3、我们在"功能"中,已经选择了某种定义,比如"最新的T值 < N ",那么T是以时间为单位呢,还是以次数为单位呢,如果我们想要定义"最近的第T次,养鸡场温度小于30度",那么此处需要选择"计数",如果我们想要表达"最近T分钟以内,养鸡场温度小于过30度",那么此处需要选择"时间",如果我们选择"计数",直接在此处填写次数即可,比如,我们想要定义"最近检测值的第5次,养鸡场温度小于30",则在此处选择"计数"以后,填写5即可。如果此处我们选择时间,只需在"排班"中填写对应的时间即可。

4、如果我们想要定义"T分钟以内,养鸡场温度出现过小于30度的情况",则需要在③中选择"时间",同时在此处指明时间长度,默认单位是秒。

5、此处用于设置N的值,比如 "最近一次监测的养鸡场温度小于30度",那么我们可以将N设置为30.

 

经过上述一番解释,我想大家应该已经能够初步的明白这些概念了,那么我们集合实际情况,一步一步的进行配置,配置如下。

首先,选择我们要为哪个监控项配置触发器,即为哪个监控项设置阈值,点击"选择"按钮。

zabbix从放弃到入门(7):触发器详解之一,创建触发器

 

点击选择按钮以后,看到如下页面,通过"群组"与"主机"找到对应的主机,此处选择我们的测试主机testzbx1,找到对应的监控项,因为我们是要为根分区磁盘使用率监控项设置触发器,所以,此处选择"RootPartitionUsed"监控项。

zabbix从放弃到入门(7):触发器详解之一,创建触发器

 

假如我们想要将触发器定义为 "最近第2次监控到根分区使用率大于13%,则触发",那么我们则选择 "最新的T值 > N" 即可。

zabbix从放弃到入门(7):触发器详解之一,创建触发器

最终配置如下,如下配置表示,当testzbx1这台服务器的根分区使用率倒数第2次被监控到大于13%,则触发器的条件被满足,触发器将会被触发,配置如下后,点击"插入"按钮。

zabbix从放弃到入门(7):触发器详解之一,创建触发器

 

点击上图中的插入按钮后,回到触发器的最初的配置页面,可以看到,zabbix根据我们的设置,自动生成了一个"表达式",这就是我们前面所说的,触发器的本质是一个表达式。

zabbix从放弃到入门(7):触发器详解之一,创建触发器

此刻,客官您再看看这个表达式,是不是就很容易理解了,我再来啰嗦一遍,希望你不要烦,上面的表达式表示,testzbx1.zsythink.net这台主机上的根分区使用率如果最近两次被监控到的值大于13,则触发器将会被触发。我们也可以同时配置多个表达式,点击"表达式构造器"即可定义多个表达式之间的逻辑关系,此处为了演示方便,不会对它们进行详细解释。

zabbix从放弃到入门(7):触发器详解之一,创建触发器

 
 

"多重问题事件生成"表示触发器如果处于"Problem"状态,则重复的生成对应的"问题事件",这样解释有点模糊,不容易理解,等到我们实际用的时候再细细解释,一般不勾选此项。

zabbix从放弃到入门(7):触发器详解之一,创建触发器

 

我们可以对触发器进行描述,还能为触发器添加一个url,当我们收到报警信息时,可以通过url快速的定位到触发器所对应的监控项,我们可以把对应监控项的"最新数据"对应的图形链接填入url处,但是,这样说起来不容易理解,没关系,在后面的示例中会进行演示,我们还可以为触发器定义"严重性",其实就是这个触发器所对应的问题优先级,颜色越深,严重性越大。

zabbix从放弃到入门(7):触发器详解之一,创建触发器

 

此触发器示例的最终配置如下,因为现在并没有定义其他触发器,所以我们无法定义触发器的依赖关系,而且依赖关系的概念我们也没有提及过,所以,此处配置如下后,点击添加即可。

zabbix从放弃到入门(7):触发器详解之一,创建触发器

 

可以看到,触发器已经创建完成了。

zabbix从放弃到入门(7):触发器详解之一,创建触发器

 

此刻,我们再次查看触发器对应监控项的"图形",应该已经发生了变化。

zabbix从放弃到入门(7):触发器详解之一,创建触发器

 

可以看到,在对应的图形中,已经显示出了对应的触发器,触发器的阈值为13,当大于13时,此触发器会被触发。

zabbix从放弃到入门(7):触发器详解之一,创建触发器

好了,我们已经定义了一个触发器,但是我们还从未"触发"过它,不用着急,这是早晚的事儿。

weinxin
我的微信公众号
关注"实用运维笔记"微信公众号,当博客中有新文章时,可第一时间得知哦~
朱双印

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:17   其中:访客  13   博主  4

    • avatar 小萌新 0

      请问楼主,我这上面创建触发器,在表达式项添加功能没有你那个选项,我这选项很少,感觉就是不全,不知道是什么原因

      • avatar hustpigeon 1

        不好意思,看了手册,确实是“第T次”,我弄错了

        • avatar hustpigeon 1

          楼主,文中的 “最近的第T次”,应该是“最近的T次”吧。 意思是最近连续T次内超过阈值才报警,而不是倒数第T次超过阈值才告警吧。是不是应该把“第”字去掉?

          • avatar 小羊 0

            学习了!很详细很耐心的教学!非常 感谢博主 已收藏持续 学习中。。。

            • avatar 懒人 0

              大佬,问个问题,web监测的状态显示为错误 Couldn’t connect to server.Failed connect to xxx.xxx.xx.xxxx:xxxx;Connection refused,怎么样配置触发器才能发出报警邮件呢?

              • avatar 木木 0

                博主你好。我有个问题想请教一下,为什么你的页面和我的页面上都没有触发后的动作配置的页面,是中文汉化的问题吗?
                不好意思,自己找到了。原来有独立的页面了

                • avatar 小猪乱撞 0

                  可以考虑一下用 markdown 排版

                    • avatar 朱双印 Admin

                      @小猪乱撞 恩恩是的,只是博主还是习惯传统的书写方式然后直接上传,常往呦~

                    • avatar sanbru 0

                      帮到我了,非常感谢,网站做的真好。

                        • avatar 天涯 0

                          @sanbru 老铁,刚开始入门,已经是第N次阅读此文章了,感谢博主的无私奉献。

                        • avatar m睡意zzz 2

                          大佬,最近中印矛盾激化。大佬的这个头像很是一个政治问题

                            • avatar 朱双印 Admin

                              @m睡意zzz :!: 哈哈 :mrgreen: ,兄弟幽默,只谈技术,不懂政治啊~~

                            • avatar m睡意zzz 2

                              膜拜大佬,大佬写的通俗易懂。大佬威武

                              • avatar 箭在弦上 1

                                好东西 收藏了

                                • avatar 问天 3

                                  文章写的这么棒 为什么 没有人评论..

                                    • avatar 朱双印 Admin

                                      @问天 seo做的不好,搜索到的人比较少,希望各位朋友帮忙推荐一下~谢谢捧场~~