zabbix3.4.7之Zabbix_Trigger_Function詳解


Trigger函數

 

1、abschange

      參數:直接忽略后邊的參數

      支持值類型:float、int、str、text、log

      描述:返回最近獲取到的值與之前值的差值的絕對值。對於字符串類型,0表示值相等,1表示值不同

      例如:{www.zabbix.com:vfs.fs.zise[/,free].abschange(10m)}<10,表示在www.zabbix.com設備中,Key值vfs.fs.size[/,free]最近一次獲取到的值和在前10分鍾的差值為10,其結果可能是最近一次的值比之前大,也有可能比之前的值小,即從-10到0,再從0到10之間的一個范圍,可以叫做抖動值或者誤差范圍。

 

2、avg

      參數:秒或#num

      支持值類型:float和int

      描述:返回指定時間間隔的平均值。時間間隔可以通過第一個參數秒數設置或收集值的數目(需要在前邊加上#,比如#5代表最近5次的值)。如果有第二個,則表示時間漂移(time shift),例如,查詢一天之前的前一個小時的平均值,對應的函數是avg(1h,1d)

      例如:{www.zabbix.com:vfs.fs.size[/,free].avg(#5,10m)}<50G,表示在Server設備中,Key值vfs.fs.size[/,free]最近10分鍾內,最近的5次取值的平均值小於50G。請注意,10分鍾內如果取值更新間隔時間為1分鍾,則#5代表6、7、8、9、10分鍾的數值,如果取值時間更新間隔為2分鍾,則#5代表2、4、6、8、10分鍾的數值

 

3、change

      參數:直接忽略掉后邊的參數

      支持值類型:float、int、str、text、log

      描述:返回最近獲取到的值與之前值的差值(注意、與abschange函數不同,不是絕對值)。對於字符串類型,0表示值相等,1表示值不同

      例如:{www.zabbix.com:vfs.fs.size[/,free].change(5m)}<0,代表最近一次的值比前5分鍾獲取的值要小

 

4、count

       參數:秒或#num

       支持值類型:float、int、str、text、log

       描述:返回指定時間間隔內的數值統計。時間間隔可以通過第一個參數設置為時間或收集值的數目(需要在值前邊加上#)。本函數可以支持第二個參數作為樣本(pattern)數據,第三個參數作為操作(operator)參數,第四個參數作為時間漂移(time shift)參數。對於樣本,監控項的值為整數(iteger)時使用精確匹配,監控項的值為浮點型   (float)時允許偏差0.0000001。

       支持的操作(operator)類型如下

       eq:相等       ne:不相等     gt:大於     lt:小於     ge:大於或等於      le:小於或等於      like:內容匹配

       對於整數和浮點型的監控項目,支持eq(default),ne、gt、ge、lt、le

       對於string、text、log監控項,支持like(default)、eq、ne

       示例:

               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分鍾值的個數

 

5、date

      參數:直接忽略后邊的參數

      支持值類型:所有any

      描述:返回當前日期,(格式為YYYYMMDD),例如,20150101

 

6、dayofmonth

      參數:直接忽略后邊的參數

      支持值類型:所有any

      描述:返回當前是本月第幾天(數值范圍為1-31)

 

7、dayofweek

      參數:直接忽略后邊的參數

      支持值類型:所有any

      描述:返回當前的本周的第幾天(數值范圍為1-7)

      

8、dalta

       參數:秒或#num

       支持值類型:float或int

       描述:返回指定時間間隔內的最大值與最小值的差值(max()-min())。時間間隔作為第一個參數,可以是秒或者收集值的數目

       例如:{www.zabbix.com:net.if.in[eth0].delta(10m)}>10M,表示設備www.zabbix.com的接口eth0在最近10分鍾內,最大值和最小值之間的差大於10MB,即認為故障發生

 

9、diff

      參數:忽略

      支持值類型:float、int、text、log、string

      描述:返回值為1,表示最近的值與之前的值不同,0為其他情況

      例如:{www.zabbix.com:agent.version.diff(0)}>0,表示設備www.zabbix.com的agent.version在最近一次的值和之前的值不同

 

10、fuzzytime

      參數:秒

      支持值類型:float、int

      描述:返回值為1,表示監控項值的時間戳比www.zabbix.com的時間多N秒,0為其他情況。常使用system.localtime來檢查本地時間是否與www.zabbix.com的時間相同

 

11、iregexp

      參數:第一個為字符串、第二個為秒或#num

      支持值類型:str、log、text

      描述:與regexp類似,區別是不區分大小寫

     

12、last

      參數:秒或#num

      支持值類型:float、int、str、text、log

      描述:最近的值,如果為秒,則忽略,#num表示最近第N個值。注意,當前的#num和其他一些函數的#num的意思是不同的

                  last(0) 等價與 last(#1)

                  last(#3)表示最近獲取的監控項值的第三個值(並不是最近的三個值),如果獲取到的值分別是A、B、C三個值,從時間順序來看,A為第一個值,B為第二個值,#3就代                   表第三個值C

                  本函數也支持第二個參數time_shift,例如:last(0,86400)返回一天前的最緊值。如果在history中,同一秒有多個值存在,zabbix不保證值的精確順序

     例如: {www.zabbix.com:mysql.ping.last(#3,5m)}=0,表示設備www.zabbix.com的MySQL最近5分鍾內第3次取值結果為0,即認為故障發生,注意#3的用法和其他函數不同        

13、logeventid

      參數:string

      支持值類型:log

      描述:檢查最近的日志條目的EventId是否匹配正則表達式。參數為正則表達式、POSIX擴展樣式。當返回值為0時,表示不匹配,1表示匹配。

 

14、logseverity

      參數:忽略

      支持值類型:log

      描述:返回最近日志條目的日志等級(log severity)。當返回值為0時,表示默認等級,N為具體對應的等級(整數,常用於Windows event logs)

 

15、logsource

      參數:string

      支持值類型:log

      描述:檢查最近的日志條目是否匹配參數的日志來源。當返回值為0時,表示不匹配,1表示匹配。通常用於Windows event logs監控

 

16、max

      參數:秒或#num

      支持值類型:float或int

      描述:返回指定時間間隔的最大值。時間間隔作為第一個參數,可以是秒或收集值的數目(前綴為#),從Zabbix 1.8.2開始,函數支持第二個可選參數time_shift。

      例如:{www.zabbix.com:net.tcp.service[ftp].max(#3)}=0,表示設備www.zabbix.com中的key為net.tcp.service[ftp] 在最近三次獲取到的值最大數值都為0,則視為故障

 

17、min

      參數:秒或#num

      支持值類型:float和int

      描述:返回指定時間間隔的最小值。時間間隔作為第一個參數,可以是秒或收集值的數目(前綴為#)。函數支持第二個可選參數time_shift

      例如:{www.zabbix.com:icmppingloss.min(5m)}>20,表示www.zabbix.com設備在5分鍾內用icmppingloss獲取到的最小值大於20,即故障發生

    

18、nodata

      參數:秒

      支持值類型:any

      描述:當返回值為1時,表示指定的間隔(間隔不應小於30s)沒有接收到數據,0表示其他情況

      例如:{www.zabbix.com:agent.ping.nodata(5m)}=1,表示設備www.zabbix.com的agent.ping在最近5分鍾內沒有接收到數據,及故障發生

 

19、now

      參數:忽略

      支持值類型:any

      描述:返回距離Epoch(1970年1月1日 00:00:00 UTC)時間的秒數

 

20、prev

      參數:忽略

      支持值類型:float、int、str、log、text

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

 

21、regexp

      參數:第一個參數為string、第二個參數為秒或#num

      支持值類型:str、log、text

      描述:檢查最近的值是否匹配正則表達式,參數的正則表達式為POSIX擴展樣式,第二個參數為秒數或收集值的數目,將會處理多個值。本函數區分大小寫,當返回值為1時,表示找到,0為其他情況

 

22、str

      參數:第一個參數為string、第二個參數為秒或#num

      支持值類型:str、log、text

      描述:查找最近值中的字符串。第一個參數指定查找的字符串,大小寫敏感。第二個可選的參數指定秒數或收集值的數目,將會處理多個值。當返回值為1時,表示找到,0為其他情況

      例如:{www.zabbix.com:jmx["Catalina:type=ProtocolHandler,port=8080",comprssin].str(off)}=1,表示設備www.zabbix.com從key中獲取到了字符串off

 

23、strlen

      參數:秒或#num

      支持值類型:str、log、text

      描述:指定最近值的字符串長度(並非字節),參數值類似於last函數。例如,strlen(0)等價於strlen(#1),strlen(#3)表示最近的第三個值,strlen(0,86400)表示一天前最近的值。

 

24、sum

      參數:秒或#num

      支持值類型:float或int

      描述:返回指定時間間隔中收集到的值的總和。時間間隔作為第一個參數,支持秒或收集值的數目(以#開始)。本函數支持time_shift作為第二個參數。

 

25、time

      參數:忽略

      支持值類型:any

      描述:返回當前時間,格式為HHMMSS


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM