文档章节

Zabbix 之触发器常用函数

采飞扬
 采飞扬
发布于 2016/04/07 14:38
字数 2135
阅读 77
收藏 0

zabbix触发的创建步骤:

1.配置--主机
.主机选定后,选择触发器,然后点解页面的右上角创建触发器,这样就会出来一个触发器的创建页面。

Zabbix 之触发器常用函数

2.触发器表达式
{<server>:<key>.<function>(<parameter>)}<operator><constant>

参数:
大部分数字函数以接收到的秒数作为参数,秒数前用前缀#可表达特殊的意思。
sum(600):表示在600秒之内接收到所有值的和
sum(#5):表示最后5个值的和
在参数中可以使用单位来代替大的数值:
常用的单位有:

12345 s - seconds (when used, works the same as the raw value) 
m - minutes 
h - hours 
d - days 
w - weeks

使用举例:

1234567 {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


运算符
表达式支持的运算符有

Zabbix 之触发器常用函数

表达式举例:

{www.zabbix.com:system.cpu.load[all,avg1].last(0)}>5 
#系统负载大于5 
{www.zabbix.com:system.cpu.load[all,avg1].last(0)}>5|{www.zabbix.com:system.cpu.load[all,avg1].min(10m)}>2 
#cpu负载大于5或者最后10分钟负载大于2的时候都会报警。 
{www.zabbix.com:vfs.file.cksum[/etc/passwd].diff(0)}>0 
#/etc/passwd文件改变会报警 
{www.zabbix.com:net.if.in[eth0,bytes].min(5m)}>100K 
#在最后5分钟,网卡eth0的流量大于100K报警 
{smtp1.zabbix.com:net.tcp.service[smtp].last(0)}=0&{smtp2.zabbix.com:net.tcp.service[smtp].last(0)}=0 
#两个节点上的smtp服务都宕机才会报警,该表达式用了两个主机 
{zabbix.zabbix.com:icmpping.count(30m,0)}>5 
#在最后30分钟主机不能ping通的次数大于5就报警 
{server:system.cpu.load.avg(1h)}/{server:system.cpu.load.avg(1h,1d)}>2 
({TRIGGER.VALUE}=0&{server:temp.last(0)}>20)| 
({TRIGGER.VALUE}=1&{server:temp.last(0)}>15)

ZABBIX 的详细介绍请点这里
ZABBIX 的下载地址请点这里

支持的函数
1.abschange
参数:忽略
支持类型:float,int,str,text,log
作用:返回最近获得的值与之前获得值差的绝对值,对于字符串类型:0表示相等,1表示不同
2.avg
参数:秒或#num
支持类型:float,int
作用:返回一段时间的平均值
举例:

avg(5):最后5秒的平均值
avg(#5):表示最近5次得到值的平均值
avg(3600,86400):表示一天前的一个小时的平均值
如果仅有一个参数,表示指定时间的平均值,从现在开始算起,如果有第二个参数,表示漂移,从第二个参数前开始算时间,
#n表示最近n次的值
3.change
参数:忽略
支持类型:float,int,str,text,log
作用:返回最近获得值与之前获得值的差值,对于字符串0表示相等,1表示不同
举例:
change(0)>n:忽略参数一般输入0,表示最近得到的值与上一个值的差值大于n
4.count
参数:秒或#num
支持类型:float,int,str,text,log
作用:返回指定时间间隔内数值的统计,
举例:
count(600)最近10分钟得到值的个数
count(600,12)最近10分钟得到值的个数等于12
count(600,12,"gt")最近10分钟得到值的个数大于12
count(#10,12,"gt")最近10个值中,值大于12的个数
count(600,12,"gt",86400)24小时之前的10分钟内值大于12的个数
count(600,6/7,"band")-thenumberofvaluesforlast10minuteshaving'110'(inbinary)inthe3leastsignificantbits.
count(600,,,86400)24小时之前的10分钟数据值的个数
第一个参数:指定时间段
第二个参数:样本数据
第三个参数:操作参数
第四个参数:漂移参数


#支持的操作类型 
eq: 相等 
ne: 不相等 
gt: 大于 
ge: 大于等于 
lt: 小于 
le: 小于等于 
like: 内容匹配

5.date
参数:忽略
支持类型:any
作用:返回当前的时间,格式YYYYMMDD
6.dayofmonth
返回当前是本月的第几天
7.dayofweek
返回当前是本周的第几天
8.delta
参数:秒或#num
支持类型:float,int
作用:返回时间间隔内的最大值与最小值的差值

9.diff
参数:忽略
支持值类型:float,int,str,text,log
作用:返回值为1表示最近的值与之前的值不同,0为其他情况
10.fuzzytime
参数:秒
支持值类型:float,int
作用:返回值为1表示监控项值的时间戳与ZabbixServer的时间多N秒,0为其他.常使用system.localtime来检查本地时间是否与Zabbixserver时间相同.
11.last
参数:秒或#num
支持值类型:float,int,str,text,log
作用:最近的值,如果为秒,则忽略,#num表示最近第N个值,请注意当前的#num和其他一些函数的#num的意思是不同的
例子:
last(0)等价于last(#1)last(#3)表示最近**第**3个值(并不是最近的三个值)
本函数也支持第二个参数**time_shift**,例如
last(0,86400)返回一天前的最近的值
如果在history中同一秒中有多个值存在,Zabbix不保证值的精确顺序
#num从Zabbix1.6.2起开始支持,timeshift从1.8.2其开始支持,可以查询avg()函数获取它的使用方法
logeventid
参数:string

支持值类型:log

描述:检查最近的日志条目的EventID是否匹配正则表达式.参数为正则表达式,POSIX扩展样式.当返回值为0时表示不匹配,1表示匹配。该函数从Zabbix1.8.5起开始支持.

logseverity
参数:忽略

支持值类型:log

描述:返回最近日志条目的日志等级(logseverity).当返回值为0时表示默认等级,N为具体对应等级(整数,常用于Windowseventlogs).Zabbix日志等级来源于Windowseventlog的Information列.

logsource
参数:string

支持值类型:log

描述:检查最近的日志条目是否匹配参数的日志来源.当返回值为0时表示不匹配,1表示匹配。通场用于Windowseventlogs监控.例如logsource["VMWareServer"]

max
参数:秒或#num

支持值类型:float,int

描述:返回指定时间间隔的最大值.时间间隔作为第一个参数可以是秒或收集值的数目(前缀为#).从Zabbix1.8.2开始,函数支持第二个可选参数time_shift,可以查看avg()函数获取它的使用方法.

min
参数:秒或#num

支持值类型:float,int

描述:返回指定时间间隔的最小值.时间间隔作为第一个参数可以是秒或收集值的数目(前缀为#).从Zabbix1.8.2开始,函数支持第二个可选参数time_shift,可以查看avg()函数获取它的使用方法.

nodata
参数:秒

支持值类型:any

描述:当返回值为1表示指定的间隔(间隔不应小于30秒)没有接收到数据,0表示其他.

now
参数:忽略

支持值类型:any

描述:返回距离Epoch(1970年1月1日00:00:00UTC)时间的秒数

prev
参数:忽略

支持值类型:float,int,str,text,log

描述:返回之前的值,类似于last(#2)

regexp
参数:第一个参数为string,第二个参数为秒或#num

支持值类型:str,log,text

描述:检查最近的值是否匹配正则表达式,参数的正则表达式为POSIX扩展样式,第二个参数为秒数或收集值的数目,将会处理多个值.本函数区分大小写。当返回值为1时表示找到,0为其他.

str
参数:第一个参数为string,第二个参数为秒或#num

支持值类型:str,log,text

描述:查找最近值中的字符串。第一个参数指定查找的字符串,大小写敏感。第二个可选的参数指定秒数或收集值的数目,将会处理多个值。当返回值为1时表示找到,0为其他.

strlen
参数:秒或#num

支持值类型:str,log,text

描述:指定最近值的字符串长度(并非字节),参数值类似于last函数.例如strlen(0)等价于strlen(#1),strlen(#3)表示最近的第三个值,strlen(0,86400)表示一天前的最近的值.该函数从Zabbix1.8.4起开始支持

sum
参数:秒或#num

支持值类型:float,int

描述:返回指定时间间隔中收集到的值的总和.时间间隔作为第一个参数支持秒或收集值的数目(以#开始).从Zabbix1.8.2开始,本函数支持time_shift作为第二个参数。可以查看avg函数获取它的用法

time
参数:忽略

支持值类型:any

描述:返回当前时间,格式为HHMMSS,例如123055


本文转载自:http://www.linuxidc.com/Linux/2013-09/90726.htm

共有 人打赏支持
采飞扬

采飞扬

粉丝 19
博文 36
码字总数 7858
作品 3
东城
架构师
私信 提问
zabbix触发器表达式详解

Zabbix trigger是zabbix 进行告警通知的设定条件 ,当监控获取的值触发了设定的条件时,会按照触发器的设定,执行相应的action 操作 。在zabbix中为了比较方便的设定各种条件,zabbix为我们设...

English0523
2017/12/21
0
0
Zabbix触发器_action动作及模板应用(二)

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://gzsamlee.blog.51cto.com/9976612/1865878 一个完善的监控系统需要一定的...

科技小能手
2017/11/12
0
0
Zabbix-3 触发器详解

概述: 触发器中的表达式使用很灵活,我们可以创建一个复杂的逻辑测试监控,触发器表达式形式如下: {:.()} {主机:key.函数(参数)}常数 具体的例子,请接着往下走,很简单 Functions函数: 触发...

TENGQ
2017/03/14
0
0
zabbix触发器表达式详解

概述 触发器中的表达式使用很灵活,我们可以创建一个复杂的逻辑测试监控,触发器表达式形式如下: {:.()} {主机:key.函数(参数)}常数,具体的例子,请接着往下走,很简单 Functions函数 触发...

阿遥在发呆
2017/10/23
0
0
zabbix 一篇很好的讲表达式的博文

触发器中的表达式使用很灵活,我们可以创建一个复杂的逻辑测试监控,触发器表达式形式如下: {<server>:<key>.<function>(<parameter>)}<operator><constant> {主机:key.函数(参数)}<表达式>......

枫爱若雪
2015/02/03
2.2K
1

没有更多内容

加载失败,请刷新页面

加载更多

table边框样式

table{ border:0.5px solid #000; border-collapse:collapse; //去除边框间空隙}th,td{ border:0.5px solid #000;}...

学霸猫
21分钟前
1
0
分布式消息通讯Kafka原理分析(二)

本章重点: 1.消息的存储原理2.Partition的副本机制原理3.副本数据同步原理 消息的文件存储机制 通过如 下命令找到对应partition下的日志内容 [root@localhost ~]# ls /tmp/kafka-logs/f...

须臾之余
26分钟前
1
0
Vue Element表单绑定(四)常用操作整理

一、启用回车提交报单操作 在登录页面,使用回车提交表单操作一般是必要的一个操作。在 Element中如何使用呢,示例如下: 来个注意点: 1.button按钮的native-type设置为submit,而不是绑定c...

tianma3798
30分钟前
1
0
《大话数据结构》读后总结(七)

常见的时间复杂度 执行次数 函数阶 非正式术语 12 O(1) 常数阶 2n+3 O(n) 线性阶 3n^2+2n+1 O(n2) 平方阶 5log2n+20 O(logn) 对数阶 2n+3nlog2n+19 O(nlogn) nlogn阶 6n^3+2n^2+3n+4 O(n3) 立...

徐曙辉
32分钟前
0
0
three.js 事件交互

点击查看交互效果 在three.js中,展示的一切内容都是在canvas中绘制的,所以点击事件点击到物体上是无法获取点击对象的,要获取点击的对象要使用RayCaster,用于在三维空间中进行鼠标拾取,原...

tianyawhl
33分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部