【Zabbix】Zabbix触发器的告警原理及创建方法

概述:

       触发器中的表达式使用很灵活,我们可以创建一个复杂的逻辑测试监控,触发器表达式形式如下:


{<server>:<key>.<function>(<parameter>)}<operator><constant>        

  1. {主机:key.函数(参数)}<表达式>常数

Functions函数:触发器functions可以引用检索到的值,当前时间或者其他元素。触发器表达式支持的function完整列表请点击官网地址 supported functions
Function参数----大多数数值functions可以使用秒来作为参数。你可以使用前缀“#”来表示它有不同的含义

FUNCTION CALL 描述
sum(600) 600秒内的总和
sum(#5) 最新5个值的和

last函数使用不同的参数将会得到不同的值,#2表示倒数第二新的数据。例入从老到最新值为1,2,3,4,5,6,7,8,9,10,last(#2)得到的值为9,last(#9)得到的值为2。last函数必须包含参数。
AVG,count,last,min和max函数还支持额外的参数,以秒为单位的参数time_shift(时间偏移量)。例如avg(1h,1d),那么将会获取到昨天的1小时内的平均数据。

[warning]备注:触发器表达式需要使用history历史数据来计算,如果history不可用(time_shift时间偏移量参数无法使用),因此history记录一定要保留长久一点,至少要保留需要用的记录。[/warning]
触发器表达式可以使用单位符号来替代大数字,例如5m替代300,或者1d替代86400,1k替代1024字节等等。

操作符:

优先级 操作 定义
1 /
2 *
3 -
4 +
5 < 小于. 用法如下:
A<B ⇔ (A<=B-0.000001)
6 > 大于. 用法如下:
A>B ⇔ (A>=B+0.000001)
7 # 不等于.用法如下:
A#B ⇔ (A<=B-0.000001) | (A>=B+0.000001)
8 = 等于. T用法如下:
A=B ⇔ (A>B-0.000001) & (A<B+0.000001)
9 & 逻辑与
10 | 逻辑或


zabbix创建触发器trigger


1. 创建触发器
了解了什么触发器,接下来看下zabbix触发器怎么创建和配置,方法很简单,请大家往下读。
2、创建触发器步骤:
点击Configuration(配置) → Hosts(主机)
点击hosts(主机)相关行的trigger
点击右上角的创建触发器(create trigger),你也可以修改列表中的触发器
在表单中输入相应的信息

102729wa4v3na7gfgg2g42.png 
3、zabbix触发器配置

参数介绍

参数 描述
Name 触发器名称.
名称可以包含宏变量: {HOST.HOST}, {HOST.NAME}, {HOST.CONN}, {HOST.DNS}, {HOST.IP}, {ITEM.VALUE}, {ITEM.LASTVALUE} and {$MACRO}.
$1, $2…$9 可以被用来关联表达式的常量
示例:
name:Processor load above $1 on {HOST.NAME}”
表达式:system.cpu.load[percpu,avg1].last(0)}>5
会显示为:Processor load above 5 on ttlsa云服务器

Expression 计算触发器状态的逻辑表达式,这边设置为上一次值等于0
Multiple PROBLEM events generation 通过设置该选项,你可以在触发器产生problem的时候触发一个事件
Description 触发器的描述,一般name写的不清楚,这边可以具体描述这个触发器的作用,例如nginx当前离线,请处理等等。Zabbix 2.2版本开始,支持触发器名称。
URL 在Monitoring → Triggers中,可以看到URL并且可以点击,一般情况下他需要配合触发器ID来使用,在url中包含触发器ID(宏变量 {TRIGGER.ID}),这样可以直接点击到具体触发器中。
Severity 设置严重性级别,上图我设置为“灾难”,你可以相应的设置警告、严重等状态的触发器
Enabled 当前触发器是否启用



原文地址

Zabbix触发器的告警原理及创建

(出处: 乐维_一站式运维监控管理平台)

猜你喜欢

转载自blog.51cto.com/14010230/2326884