zabbix的入門到精通之zabbix的觸發器Trigger

1.1 創建一個trigger

選擇:ConfigurationàHost

雙擊: Trigger

雙擊:Create Trigger(位置在右上角)後圖下圖所示

154157857.png

Name

Trigger的名字

Expression

添加Trigger表達式,雙擊add後添加

Multiple PROBLEM events generation

Description

對trigger的描述

URL

Serverity

對trigger級別的選擇

Enabled

Trigger是否可用

雙擊save能進行保存,這樣一個trigger就添加好了。

1.1 Trigger的表達式的使用

Trigger的表達式非常的豐富,我們可用使用trigger表達式完成非常複雜的報警時需要的邏輯關係。

下面看一下trigger的語法。

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

大括號中包括的爲主機名字以及對於的key,我們選擇相應的主機和key時系統自動生成了就,關鍵是後邊部分。Function爲trigger使用的函數,以及函數相對應的參數。大括號後跟着的是trigger識別的操作符.

函數參數

大部分情況下如果參數只是一個數字的話往往代表着是秒的意思,如果前邊加入#意思就大不同了。

例:

函數及輸入的參數

描述

Sum(600)

600秒鐘的和

Sum(#5)

最後5秒鐘的和

同時我們可以使用5m代表5分鐘來代替300秒,1d代表一天來替代86400秒,1k來代表1024bytes。

1.2 操作符

下面表格爲trigger可以使用的操作符

1

/

除法

2

*

乘法

3

-

減法

4

+

加法

5

大於

6

小於

7

#

8

=

等於

9

&

邏輯與

10

|

邏輯或

 

1.3 Trigger實例

例1:cpu負載的監控 last函數

主機www.solutionware.com.cn     Cpu負載過高

{www.zabbix.com:system.cpu.load[all,avg1].last(0)}>5

註釋:其中www.solutionware.com.cn:system.cpu.load[all,avg1]代表的監控項目,其中主機位www.solutioneare.com.cn,監控的項的key爲cpu.load[all,avg1],last()爲函數代表最近時間段,0代表最後時間,如果爲1的話代表最近1秒鐘。>爲表達式這裏不做說明,5代表大於的值。

例2:  cpu過載的監控 last函數

主機www.solutionware.com.cn cpu過載

{ www.solutionware.com.cn:system.cpu.load[all,avg1].last(0)}>5|                  {www.solutionware.com.cn:system.cpu.load[all,avg1].min(10m)}>2

註釋:主機www.solutionware.com.cn的cpu負載最近超過5或者主機www.solutionware.com.cn的cpu負載10分鐘時間之內一直超過2則報警

例3 :   /etc/passwd發生改變 diff函數

{www.solutionware.com.cn:vfs.file.cksum[/etc/passwd].diff(0)}>0 

註釋:這裏用到了diff函數,同樣這個例子還可以用到其他的地方,比如/etc/inetd.conf,文件,/kernel, etc下的文件等。

 

例4:    網卡流量 min函數

{www.solutionware.com.cn.if.in[eth0,bytes].min(5m)}>100K

註釋:主機www.solutionware.com.cn etho的網卡流量5分鐘持續超過100k則報警。

例5 測試所有節點的smtp服務

 {smtp1.solutionware.com.cn:net.tcp.service[smtp].last(0)}=0&{smtp2.solutionware.com:net.tcp.

service[smtp].last(0)}=0

註釋:注意& 表達式2側的主機不同,例子的意思是:主機smtp1.solutionware.com.cn 和主機smtp2.solutionware.com.cn的smtp服務停止則報警

例6 代理程序需要更新

{www.solutionware.com.cn:agent.version.str("beta8")}=1

註釋:當主機www.solutionware.com.cn的代理程序需要更新的時候報警

例7 主機ping

{www.solutionware.com.cn:icmpping.count(30m,0)}>5

註釋:當主機www.solutionware.com.cn

例8 心跳的測試   nodata()函數

{www.solutionware.com.cn.tick.nodata(3m)}=1 

註釋:這裏監控類型必選選擇zabbix trapper.如果3分鐘內心跳沒數據則報警

例9  cpu 負載在某時間段

{www.solutionware.com.cn:system.cpu.load[all,avg1].min(5m)}>2&{www.solutionware.com.cn:system.cpu.load[all,avg1].time(0)}>000000&{www.solutionware.com.cn:system.cpu.load[all,avg1].time(0)}<060000

註釋:在at night (00:00-06:00)這一時間段如果主機www.solutionware.com.cn 在5分鐘之內的負載一直大於2則報警

例:10 數據庫時間檢測

{MySQL_DB:system.localtime.fuzzytime(10)}=0

註釋:如果數據庫mysql_db的時間和系統時間10s鍾一直不一致則報警。

 

1.4 Trigger severity(警報級別)

 

Trigger severity用來顯示Trigger 的級別,zabbix支持一下幾個警報級別。

級別

顏色

Not classified

未知

Grey

Information

系統信息

Light green

Warning

警告

yellow

Average

一般性問題

orange

High

嚴重警告

red

Disaster

數據丟失

Bright red

 

分級別的目的:1不同的警報代表不同的顏色

                          2 聲音警報,不同的級別的可以用不同的聲音做警報提示。

                          3 不同的級別使用不同的報警通知方式,比如sms email……..

 

 

1.5 Trigger severity(警報級別)的配置

級別的名稱和顏色是可以靜心配置的,Administration--> General → Trigger severities,如下圖所示,修改名稱和顏色後保存即可。

154329298.png

1.1 Trigger支持的單位

S

h

小時

M

d

W

星期

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

只所以弄單位主要還是爲了方便書寫

本文出自 “虛心求教” 博客,請務必保留此出處http://nanwangting.blog.51cto.com/608135/1046902

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章