指令碼**:
複製** **如下:
#!/bin/bash
#變數初始化
process="php-fpm" #程序名
startcmd="/etc/init.d/php-fpm start" #啟動命令
down=0
while true
do #取得http狀態碼
code=$(curl -h "host:www.jb51.net" -m 5 -l -s -w % http://程式設計客棧127.0.0.1 -o /dev/null)
#當狀態碼返回000或者大於等於500時,計數故障到down變數
if [ $code -eq 000 -o $code -ge 500 ];then
((down++))
else
break
fi#稍等5s
&nbjqmmpedforsp; sleep 5
#判斷是否連續檢測三次都為故障.
if [ $down -ge 3 ];then
if [ "$(find /tmp/$_restart -mmin -3)" == "" ];then
&www.cppcns.comnbsp; #取得程序名對應的所有pid
pids=$(ps aux | grep $ | grep -v "grep" | awk '')
#依次對所有pid執行kill命令
for i in $pids;do程式設計客棧
kill -9 $i
kill -9 $i
done
#kill完pid後,啟動服務
$startcmd
echo "$(date) return code $code,$ had been restarted" >> /tmp/$_restart
else
echo "$(date) $ not yet recovery.as it had been restarted in 2 minutes.so this time i" >> /tmp/$_not_restart
fibreak
fidone
本文標題: 監控php-fpm並自動重啟服務的shell指令碼
本文位址:
監控並自動重啟tomcat
bin sh tomcat啟動程式 這裡注意tomcat實際安裝的路徑 starttomcat usr local tomcat bin startup.sh 定義要監控的頁面位址 解析頁面時間設定 timetransfer 15 快取位址如果不需要可以不配置 tomcatcache usr loc...
服務監控 PHP FPM狀態監控
root linux node1 vim etc zabbix zabbix agentd.conf 編輯配置檔案引用key include etc zabbix zabbix agentd.d conf root linux node1 mkdir etc zabbix scripts 存放she...
Linux監控服務並主動重啟
linux查詢後台程序,如果沒有程序號,則重啟服務 bin sh basepath cd dirname 0 pwd while true doprocnum ps ef grep 服務名稱 grep v grep wc l if procnum eq 0 then 啟動命令 echo date y...