欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

zabbix的入门到精通之zabbix的触发器Trigger

发布时间:2025/3/15 编程问答 49 豆豆
生活随笔 收集整理的这篇文章主要介绍了 zabbix的入门到精通之zabbix的触发器Trigger 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

 第1章 Trigger

1.1 创建一个trigger 选择:ConfigurationàHost 双击: Trigger 双击:Create Trigger(位置在右上角)后图下图所示

 

Name Trigger的名字
Expression 添加Trigger表达式,双击add后添加
Multiple PROBLEM events generation
Description 对trigger的描述
URL
Serverity 对trigger级别的选择
Enabled Trigger是否可用
双击save能进行保存,这样一个trigger就添加好了。 1.1 Trigger的表达式的使用 Trigger的表达式非常的丰富,我们可用使用trigger表达式完成非常复杂的报警时需要的逻辑关系。 下面看一下trigger的语法。 {<server>:<key>.<function>(<parameter>)}<operator><constant> 大括号中包括的为主机名字以及对于的key,我们选择相应的主机和key时系统自动生成了就,关键是后边部分。Function为trigger使用的函数,以及函数相对应的参数。大括号后跟着的是trigger识别的操作符. 函数参数 大部分情况下如果参数只是一个数字的话往往代表着是秒的意思,如果前边加入#意思就大不同了。 例:

函数及输入的参数 描述
Sum(600) 600秒钟的和
Sum(#5) 最后5秒钟的和

同时我们可以使用5m代表5分钟来代替300秒,1d代表一天来替代86400秒,1k来代表1024bytes。 1.2 操作符 下面表格为trigger可以使用的操作符 

1 / 除法 
2 * 乘法 
3 - 减法 
4 + 加法
5 大于
6 小于
7 #
8 = 等于
9 & 逻辑与
10 | 逻辑或

 

1.3 Trigger实例 例1:cpu负载的监控 last函数 主机  www.solutionware.com.cn     Cpu负载过高 {www.zabbix.com:system.cpu.load[all,avg1].last(0)}>5                  注释:其中www.solutionware.com.cn:system.cpu.load[all,avg1]代表的监控项目,其中主机位www.solutioneare.com.cn,监控的项的key为cpu.load[all,avg1],last()为函数代表最近时间段,0代表最后时间,如果为1的话代表最近1秒钟。>为表达式这里不做说明,5代表大于的值。 例2:  cpu过载的监控 last函数 主机   www.solutionware.com.cn cpu过载 { www.solutionware.com.cn:system.cpu.load[all,avg1].last(0)}>5|                    {www.solutionware.com.cn:system.cpu.load[all,avg1].min(10m)}>2                  注释:主机www.solutionware.com.cn的cpu负载最近超过5或者主机www.solutionware.com.cn的cpu负载10分钟时间之内一直超过2则报警 例3 :   /etc/passwd发生改变 diff函数 {www.solutionware.com.cn:vfs.file.cksum[/etc/passwd].diff(0)}>0  注释:这里用到了diff函数,同样这个例子还可以用到其他的地方,比如/etc/inetd.conf,文件,/kernel, etc下的文件等。 例4:    网卡流量 min函数 {www.solutionware.com.cn.if.in[eth0,bytes].min(5m)}>100K                   注释:主机www.solutionware.com.cn etho的网卡流量5分钟持续超过100k则报警。   例5 测试所有节点的smtp服务  {smtp1.solutionware.com.cn:net.tcp.service[smtp].last(0)}=0&{smtp2.solutionware.com:net.tcp. service[smtp].last(0)}=0                   注释:注意& 表达式2侧的主机不同,例子的意思是:主机smtp1.solutionware.com.cn 和主机smtp2.solutionware.com.cn的smtp服务停止则报警 例6 代理程序需要更新 {www.solutionware.com.cn:agent.version.str("beta8")}=1 注释:当主机www.solutionware.com.cn的代理程序需要更新的时候报警 例7 主机ping {www.solutionware.com.cn:icmpping.count(30m,0)}>5                   注释:当主机www.solutionware.com.cn  例8 心跳的测试   nodata()函数 {www.solutionware.com.cn.tick.nodata(3m)}=1                   注释:这里监控类型必选选择zabbix trapper.如果3分钟内心跳没数据则报警 例9  cpu 负载在某时间段  {www.solutionware.com.cn:system.cpu.load[all,avg1].min(5m)}>2&{www.solutionware.com.cn:system.cpu.load[all,avg1].time(0)}>000000&{www.solutionware.com.cn:system.cpu.load[all,avg1].time(0)}<060000                  注释:在at night (00:00-06:00)这一时间段如果主机www.solutionware.com.cn 在5分钟之内的负载一直大于2则报警 例:10 数据库时间检测 {MySQL_DB:system.localtime.fuzzytime(10)}=0                   注释:如果数据库mysql_db的时间和系统时间10s钟一直不一致则报警。   1.4 Trigger severity(警报级别) Trigger severity用来显示Trigger 的级别,zabbix支持一下几个警报级别。

级别 颜色
Not classified 未知 Grey
Information 系统信息 Light green
Warning 警告 yellow
Average 一般性问题 orange
High 严重警告 red
Disaster 数据丢失 Bright red

分级别的目的:1不同的警报代表不同的颜色 2 声音警报,不同的级别的可以用不同的声音做警报提示。                           3 不同的级别使用不同的报警通知方式,比如sms email…….. 1.5 Trigger severity(警报级别)的配置 级别的名称和颜色是可以静心配置的,Administration--> General → Trigger severities,如下图所示,修改名称和颜色后保存即可。

 

1.1 Trigger支持的单位
S h 小时
M d
W 星期 K Kilo
M mega G giga
T tera P peta
E exa Z zetta
Y yotta
例: host:zabbix[proxy,zabbix_proxy,lastaccess]}>120 {host:system.uptime[].last(0)}<86400 {host:system.cpu.load.avg(600)}<10 等价于 {host:zabbix[proxy,zabbix_proxy,lastaccess]}>2m {host:system.uptime.last(0)}<1d {host:system.cpu.load.avg(10m)}<10

只所以弄单位主要还是为了方便书写

原文转自http://blog.csdn.net/caodaoxi/article/details/17740377

总结

以上是生活随笔为你收集整理的zabbix的入门到精通之zabbix的触发器Trigger的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。