Shell腳本實戰:日誌關鍵字監控+自動告警

Shell腳本實戰:日誌關鍵字監控+自動告警


關鍵字異常則觸發相應的動作或告警操作,通知到郵件聯繫人。

一、安裝郵件服務

1、解壓

<code>tar -jxf mailx-12.4.tar.bz2 -C /usr/src/ && cd /usr/src/mailx-12.4//<code>


2、編譯

<code>make install UCBINSTALL=/usr/bin/install/<code>


Shell腳本實戰:日誌關鍵字監控+自動告警

異常編譯報錯-1

異常報錯解決方法

下載mailx補丁文件“mailx-12.4-openssl_1.0.0_build_fix-1.patch”,將補丁文件和mailx解壓縮目錄放置同一路徑

Shell腳本實戰:日誌關鍵字監控+自動告警

執行打補丁命令:

<code>patch -p0 /<code>
Shell腳本實戰:日誌關鍵字監控+自動告警

進入mailx-12.4重新執行編譯命令:

<code>make install UCBINSTALL=/usr/bin/install/<code>
Shell腳本實戰:日誌關鍵字監控+自動告警

檢測mailx是否安裝成功:mailx -V

Shell腳本實戰:日誌關鍵字監控+自動告警

3、配置

vi /etc/nail.rc,在文件的最後添加

set from=

set smtp=

set smtp-auth-user=

set smtp-auth-password=

set smtp-auth=login

如下圖所示,修改配置完後保存

Shell腳本實戰:日誌關鍵字監控+自動告警

4、測試發送郵件

echo '郵件正文'|mailx -v -s "郵件標題" 郵箱地址

Shell腳本實戰:日誌關鍵字監控+自動告警

至此郵件功能測試正常,接下來是關鍵字監控腳本的編寫工作,通過日誌關鍵字腳本觸發郵件告警腳本實現日誌監控

二、關鍵字監控腳本開發

CheckLogs.sh 日誌監控程序

SendMail.sh 發郵件腳本,該腳本可自定義

conf 配置文件目錄,chklist為配置文件

Shell腳本實戰:日誌關鍵字監控+自動告警

初次執行CheckLogs.sh腳本會讀取日誌文件並記錄當前讀取的行數

Shell腳本實戰:日誌關鍵字監控+自動告警

後續運行腳本則讀取更新日誌,例如當前日誌更新了9行數據,則腳本從最新的9行數據獲取關鍵字

Shell腳本實戰:日誌關鍵字監控+自動告警

測試插入關鍵字error

Shell腳本實戰:日誌關鍵字監控+自動告警

繼續執行腳本可以看到已捕獲關鍵字並觸發告警

Shell腳本實戰:日誌關鍵字監控+自動告警

測試多關鍵字

Shell腳本實戰:日誌關鍵字監控+自動告警

再次執行可以看到已捕獲最新更新的日誌信息

Shell腳本實戰:日誌關鍵字監控+自動告警

測試頻率控制

Shell腳本實戰:日誌關鍵字監控+自動告警

至此相關功能測試已完成。


分享到:


相關文章: