該程序使用場景說明:主要用於Linux服務器監控程序日誌,如出現關鍵字異常則觸發相應的動做或告警操做,通知到郵件聯繫人。服務器
1、安裝郵件服務微信
一、解壓測試
tar -jxf mailx-12.4.tar.bz2 -C /usr/src/ && cd /usr/src/mailx-12.4/
二、編譯ui
make install UCBINSTALL=/usr/bin/install
異常編譯報錯-1spa
異常報錯解決方法3d
下載mailx補丁文件「mailx-12.4-openssl_1.0.0_build_fix-1.patch」,將補丁文件和mailx解壓縮目錄放置同一路徑日誌
執行打補丁命令:code
patch -p0 < mailx-12.4-openssl_1.0.0_build_fix-1.patch
進入mailx-12.4從新執行編譯命令:blog
make install UCBINSTALL=/usr/bin/install
檢測mailx是否安裝成功:mailx -V圖片
三、配置
vi /etc/nail.rc,在文件的最後添加
set from=
set smtp=
set smtp-auth-user=
set smtp-auth-password=
set smtp-auth=login
以下圖所示,修改配置完後保存
四、測試發送郵件
echo '郵件正文'|mailx -v -s "郵件標題" 郵箱地址
至此郵件功能測試正常,接下來是關鍵字監控腳本的編寫工做,經過日誌關鍵字腳本觸發郵件告警腳本實現日誌監控
2、關鍵字監控腳本開發
CheckLogs.sh 日誌監控程序
SendMail.sh 發郵件腳本,該腳本可自定義
conf 配置文件目錄,chklist爲配置文件
初次執行CheckLogs.sh腳本會讀取日誌文件並記錄當前讀取的行數
後續運行腳本則讀取更新日誌,例如當前日誌更新了9行數據,則腳本從最新的9行數據獲取關鍵字
測試插入關鍵字error
繼續執行腳本能夠看到已捕獲關鍵字並觸發告警
測試多關鍵字
再次執行能夠看到已捕獲最新更新的日誌信息
測試頻率控制
至此相關功能測試已完成。
差點忘記告訴你們完整的腳本代碼了,只需在【民工哥技術之路】公衆號對話框回覆關鍵字「日誌監控」便可獲取完整代碼。