shell腳本檢測服務
阿新 • • 發佈:2018-07-02
sys yum all 啟動 vpd x86 發現 tar 執行權限 實驗環境:
系統:Centos7-3.10.0-x86_64
檢測服務:apache-tomcat-9.0.7
實驗原因:
因為當前的環境為Java測試環境,所以沒有做監控,但是最近發現服務自動宕機了,暫時沒有排查到宕機的原因,所以為了方便測試環境的使用,今天簡單的寫了一個小腳本,來檢測tomcat服務,在正常運行的情況下,會輸出日誌tomcat is running,異常宕機情況下則會輸出tomcat is restart並且重新啟動tomcat服務。
實驗步驟:
1、創建檢測tomcat服務是否正常運行的腳本
#!/bin/bash
ps aux | grep -v grep | grep java >/dev/nullM=$?
if [[ $M -eq 0 ]] ;then
echo -e "\033[32m tomcat is running \033[0m"
date
else
echo -e "\033[31m tomcat is restart \033[0m"
/usr/local/tomcat/bin/startup.sh >/dev/null
date
fi
2、給予腳本執行權限
chmod +x tomcat.sh
3、創建計劃任務
1)查看本地是否安裝
rpm -qa | grep crontab
2)安裝 crontab命令
yum -y install crontabs
3)啟動crontab服務
/bin/systemctl start crond.service
4)設置為開機自啟
/bin/systemctl enable crond.service
5)創建計劃任務
創建計劃任務 crontab -e
查看計劃任務 crontab -l
註:以上截圖的計劃任務為每分鐘執行一次腳本,這樣寫是為了將腳本執行時的具體時間,包括正在運行服務或者重啟服務,作為日誌輸出,方便日後管理和排錯。
4、驗證計劃任務
驗證方式:
1)查看日誌是否有輸出
cat /var/log/tomcat.log
2)關閉tomcat服務驗證日誌輸出
註:如果之前已經產生日誌,可以將服務先關閉,在將日誌刪除,然後再這樣驗證。
3)開啟tomcat服務驗證日誌輸出
註:如果之前已經產生日誌,可以將服務先開啟,在將日誌刪除,然後再這樣驗證。
shell腳本檢測服務