一、背景
zabbix監控中我們用的最多的是count這個函數,通過確認多次可以減少很多誤告警,提高了運維效率。
可以設置連續幾次都異常才發出告警,這樣一來,只要發出告警基本上就已經確定發生故障了。
二、支持的操作類型
eq: 相等
ne: 不相等
gt: 大於
ge: 大於等於
lt: 小於
le: 小於等於
like: 內容匹配
三、用法及舉例
用法:
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,,,86400)24小時之前的10分鍾數據值的個數 第一個參數:指定時間段 第二個參數:樣本數據 第三個參數:操作參數 第四個參數:漂移參數
三、實際案例
實例1:
假設我現在得到的值1位真,0位假
{linuxea.com:runing.count(2m,0)}>3
linuxea.com:runing是items
如果2分鍾內拿到的值為0,大於3次則觸發,我想你應該明白,你拿到的1的值肯定為真
這里你需要注意的是,如果使用count,這里的2分鍾拿到0的值的次數如果大於3此就觸發是建立在你itmes在兩分鍾內可以去探測至少3次以上。你可能需要修改itmes取值的實際,否則沒有意義。
實例2:
最近30分鍾zabbix這個主機超過5次不可到達。
{zabbix:icmpping.count(30m,0)}>5
實例3:
pro-web2主機keepalived_process(監控項)在最近3次的值有大於等於2次值不為3則觸發報警
{pre-web2:keepalived_process.count(#3,3,"ne")}>=2
實例4:
pro-web2主機keepalived_process(監控項)在90s內超過2次值不為3則觸發報警
{pro-web2:keepalived_process.count(90,3,"ne")}>2