设为首页 收藏本站
查看: 1043|回复: 0

[经验分享] zabbix trigger 函数解析

[复制链接]

尚未签到

发表于 2019-1-19 08:20:06 | 显示全部楼层 |阅读模式
  1、trigger 配置属性
  name tirgger的名称,可以支持宏:{HOST.HOST}、{HOST.NAME}、
  Expression:对触发器状态计算的逻辑正则表达式
  Multiple PROBLEM events generation
  Description 对触发器的描述
  url: 一般设置可用宏为- {TRIGGER.ID}
  severity: not classified 未知安装等级 灰色
  information   一般信息         亮绿
  warning          警告信息        黄色
  average          一般故障        橙色
  high               高级别故障    红色
  disaster           致命故障       亮红
  2、Trigger 告警依赖
  告警依赖是指一个事件的成立需要依赖另一个的事件存在。这种情况适合于逻辑比较复杂的业务,例如,一个IDC的路由器出现故障时,机房内所有的机器都会因为状态不可获取而产生告警,但作为管理人员,并不想同时接收所有的故障,只需要接收到一条有效的告警“XXX的IDC    机房路由器X发生故障,将会影响整个机房的使用"
  3、Trigger 正则中的单位
  S:seconds
  m: minutes
  h: hosts
  d: days
  w: weeks
  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
  函数的形参指的是函数可以接收不同的参数
  在形参中,"#"在不同的函数中具有不同的含义,例如:
  sum(600)表示最近600秒内获取到的数值求和。
  sum(#5)表示最近取到5个值得和
  last(#5)表示返回给定的第5个值,时间最早的值为第一个。例如:给定值3、7、2、6、5,last(#2)的值为7,last(#5)的值为5
  last(0),即最后一次的值,0为参数。
  4、Trigger 函数
  (1) abschange
  描述:返回最近获取到的值与之前的差值的绝对值。对于字符串类型,0表示值相等,1表示值不同。
  例如: {server.vfs.fs.size[/,free].abschange(10m)} 10M,表示设备switch的接口eth0在最近10分钟内,最大值和最小值之间的差大于10M,即认为故障发生。
  (9) diff
  支持值类型:float int str text和log
  描述:返回值为1,表示最近的值与之前的值不同,0为其他情况。
  例如:{windows:agent.version.diff(0)} > 0 ,表示设备Windows的agent.version在最近一次值与之前的值不同。
  (10) fuzzytime
  参数:秒
  支持值类型:float和int
  描述:返回值1,表示监控项值得时间戳比zabbix-server的时间对n秒,0为其他情况。常使用system.localtime来检查本地时间是否与zabbix-server的时间相同。
  (11) iregexp
  参数:第一个为字符串,第二个为秒或#num
  支持值类型:str、log、text
  描述:与regexp类似,区别是不区分大小写
  (12)last
  参数:秒或#num
  支持值类型:float、int、str、text和log
  描述:最近的值,如果为秒,则忽略,#num表示最近第N个值
  示例:
  last(10) 等价于last(#1)
  last(#3) 表示最近获取的监控项值得第三个值
  例如:{mysql:mysql.ping.last(#3,5m)} = 0,表示设备mysql在最近5分钟内的第三次取值结果为0,即认为故障发生。
  (13) logeventid
  参数:string
  支持值类型:log
  描述:检查最近的日志条目的event ID是否匹配正则表达式。参数为正则表达式,POSIX扩展样式。当返回值为0时,表示不匹配,1表示匹配。
  (14)logseverity
  支持值类型:log
  描述:返回最近日志条目的日志等级。当返回值为0时,表示默认等级
  (15)logsource
  支持值类型:log
  描述:检查最近的日志条目是否匹配参数的日志来源。当返回值为0时,表示不匹配,1表示匹配。通常用于windows event logs监控,例如:logsource["VMWare Server"]
  (16) max
  参数:秒或#num
  藐视:返回指定时间间隔的最大值。时间间隔作为第一个参数,可以使秒或收集值得数目。
  例如:{ftpserver:net.tcp.service[ftp].max(#3)} = 0 ,表示设备ftpserver中的key为net.tcp.service[ftp]在最近3次获取到的最大值都为0,则视为故障。
  (17)min
  描述:返回指定时间间隔的最小值。
  例如:{gateway:icmppingloss.min(5m)} > 20,表示gateway设备在5分钟内用icmppingloss在最近5分钟内获取的最小值为20,即故障发生。
  (18)nodata
  描述:当返回值为1时,表示指定的间隔,没有接收到数据,0表示其他情况。
  例如:{v.itnihao.com:agent.ping.nodata(5m)} = 1,表示设备v.itnihao.com的agent.ping在最近5分钟内没有接收到数据,即发生故障。
  (19)now
  描述:返回距离Epoch 时间的秒数
  (20)prve
  支持值类型:float int str text 和log
  描述:返回之前的值,类似于last(#2)
  (21)regexp
  描述:检查最近的值是否匹配正则表达式,参数的正则表达式为POSIX扩展样式,第二个参数为秒数或手机值得数目,将会处理多个值。本函数区分大小写。当返回值为1时,表示找到,0表示其他情况。
  (22)str
  参数:第一个参数为string,第二个参数为秒或#num。
  支持值类型:str log text
  描述:查找最近值中的字符串。第一个参数指定查找的字符串。大小写敏感。第二个可选的参数指定秒数或收集值得数目,将会处理多个值。当返回值为1时,表示找到,0为其他情况。
  例如:{Tomcat:jmx["Catalina:type=ProtocolHander,port=8080",compression].str(off)} = 1,表示找到,0表示为其他情况
  (23)strlen
  参数:秒或#num
  支持值类型:str、log、text
  描述:指定最近值得字符串长度,参数值类似于last函数,例如:strlen(0)等价于strlen(#1),stelen(#3)表示最近的第三个值,strlen(0,86400)表示一天前最近的值。
  (24)sum
  参数:秒或者#num
  支持值类型:float和int
  描述:返回指定时间间隔中收集到的值的总和。时间间隔作为第一个参数,支持秒或收集值得数目。
  (25)time
  描述:返回当前时间,格式为HHMMSS,例如:123055
  





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-664995-1-1.html 上篇帖子: Zabbix介绍、安装配置 下篇帖子: Zabbix调优的几个原则
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表