1. 程式人生 > >zabbix監控日誌

zabbix監控日誌

  • zabbix是一個強大的監控服務,它能夠監控伺服器的各個方面,來實時監控並反映伺服器的健康狀況。前年演示過如何通過埠號來監控服務,這裡就來演示下通過指令碼來監控日誌檔案,可以自定義監控日子裡出現的關鍵字。

監控日誌檔案中遇到Error報錯

[[email protected] ~]# cat a.log 
rizhi
qwertyusdfgh
asdfmzzxcvbn
qwe
dsfserwerwe
sdfsgrrwh
asfiuytrjhgfnbv
bvmnbvjhgfiuytre
hgfds
nbvcgftr
error                      //在模擬的日誌檔案中隨意加一些內容

#修改日誌檔案的屬主和屬組,並賦予指令碼執行許可權
[
[email protected]
~]# chown zabbix.zabbix /root/a.log [[email protected] ~]# chmod +x log.py [[email protected] ~]# chown -R zabbix.zabbix /tmp [[email protected] ~]# chown zabbix.zabbix /root/ -R [[email protected] ~]# chown zabbix.zabbix log.py //測試下指令碼 [[email protected] ~]# python log.py a.log 0 //日誌中沒有Error 這時/tmp目錄下會生成一個logseek的檔案,這個是用來記錄指令碼檢查日誌的位置。 將這個檔案的屬主與屬組修改為zabbix的。 [
[email protected]
~]# chown -R zabbix.zabbix /tmp/logseek 模擬日誌中出現了定義的關鍵字Error,並用指令碼監測 [[email protected] ~]# echo 'Error' >>a.log [[email protected] ~]# python log.py a.log 1 //檢測出是有關鍵字的 證明指令碼是沒有問題的 //修改客戶端配置檔案 [[email protected] ~]# vim /usr/local/etc/zabbix_agentd.conf UserParameter=checklog,/usr/bin/python /root/log.py /root/a.log /tmp/seeklog Error //檔案末尾新增此行內容 #第一個引數為日誌檔名(必須有,相對路徑、絕對路徑均可) #第二個引數為seek position檔案的路徑(可選項,若不設定則預設為/tmp/logseek檔案。相對路徑、絕對路徑均可) #第三個引數為搜尋關鍵字,預設為 Error //再次向日志文件中寫入Error,並重啟服務 [
[email protected]
~]# echo 'Error' >>a.log [[email protected] ~]# pkill zabbix [[email protected] ~]# zabbix_agentd

在服務端測試

[[email protected] ~]# zabbix_get -s 192.168.225.129 -k checklog
1
[[email protected] ~]# zabbix_get -s 192.168.225.129 -k checklog
0                           //測試成功


web介面配置
新增監控項
在這裡插入圖片描述
新增觸發器
在這裡插入圖片描述
驗證
觸發警告

[[email protected] ~]# echo 'Error' >>a.log             //客戶端

在這裡插入圖片描述

警告郵件
在這裡插入圖片描述

監控日誌指令碼點這裡自行下載