zabbix創建自定義鍵值和觸發器

說明:zabbix可以自定義創建模板,模板中包括了下面幾項內容:

###

應用集就是你想分幾塊進行監控(比如內存 CPU IO  網絡等等)
項目 項目是針對一個應用集來弄的(如果我要採集應用集 內存 的使用情況 你可以定義多個項目 比如總共內存 可用內 空閒內存等等)
觸發器 觸發器是針對一個項目來弄的(如果你採集可用內存的項目中 添加一個觸發器當可以內存低於多少時 進行相應操作)
圖形 創建圖形的數據來源都是 根據項目採集的數據來的 可以把一個或者多個項目 生成圖形
刷選 就是把生成的圖片 這麼放 排列等等

###

自定義鍵值,自定義腳本

zabbix自帶的默認模版裏包括了很多監控項,有時候爲了滿足業務需求,需要根據自己的監控項目自定義監控項,這裏介紹一種自定義監控項的方式。

1,首先編寫自定義監控腳本,本文以監控httpd進程是否存在爲例。

  腳本名字:check_httpd.sh

  腳本目錄(這個目錄可以自定義):/usr/local/etc/zabbix_scripts

  腳本內容:

複製代碼
#!/bin/bash
result=`ps -ef | grep zls | grep -v grep`
if [ -n "$result" ]
then
        echo '0'
else
        echo '1'
fi
複製代碼

  腳本說明:通過ps檢查httpd進程是否存在,如果存在則腳本反饋1,如果不存在則返回0

2,修改zabbix_agentd.conf配置文件。

  說明:紅色部分爲需要我們修改的

  第一個:默認爲0,此處我們將它改爲1,改爲1以後,表示用戶自定義的腳本中可以包含特殊字符。

  第二個:爲我們自定義監控項,格式爲:UserParameter=<鍵值>,<命令>。這裏我們自定義鍵值爲:check_httpd,要執行的命令爲執行check_httpd.sh這個腳本。

  說明:添加完成以後,重啓zabbix_agentd纔會生效。

複製代碼
### Option: UnsafeUserParameters
#       Allow all characters to be passed in arguments to user-defined parameters.
#       The following characters are not allowed:
#       \ ' " ` * ? [ ] { } ~ $ ! & ; ( ) < > | # @
#       Additionally, newline characters are not allowed.
#       0 - do not allow
#       1 - allow
#
# Mandatory: no
# Range: 0-1
# Default:
UnsafeUserParameters=1

### Option: UserParameter
#       User-defined parameter to monitor. There can be several user-defined parameters.
#       Format: UserParameter=<key>,<shell command>
#       See 'zabbix_agentd' directory for examples.
#
# Mandatory: no
# Default:
UserParameter=check_httpd,sh /usr/local/etc/zabbix_scripts/check_httpd.sh
複製代碼

3,選擇要增加監控項的主機

4,創建監控項

5,根據自定義鍵值填寫監控項,自定義的鍵值只能手動輸入,不能通過選擇。

 

6,添加成功後,在最新數據中查看是否獲取到數據

 7,爲這個監控項添加觸發器,在這裏我們定義當check_httpd監控項返回爲0的時候告警。即httpd進程不存在

8,創建觸發器,自定義觸發器名稱以及嚴重程度,然後表達式哪裏,點擊添加

9,添加觸發器表達式,監控項選擇我們自定義監控項,功能可以根據自己的需求選擇,這裏我們選擇最後一個值是0的時候則告警(即httpd進程不存在)

10,至此,自定義監控項和自定義告警已添加完成,如果有其他監控需求,自己寫監控腳本即可。

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