Linux 生產環境實時監控Tomcat腳本

#!/bin/bash
# name : Alenx
# start_user : admin


V_LOG=/opt/logs/listen_tomcat.log
V_TOMCAT="sh /opt/script/tomcat.sh restart"
V_TOMCAT_PORT="0 0.0.0.0:8080"

logs=$(ls /opt/logs/ | grep listen_tomcat.log | wc -l)
if [ $logs -lt 0 ]; then
    touch /opt/logs/listen_tomcat.log
    continue
fi

function restart_tomcat(){
    echo "*************$(date)***************" >> $V_LOG
    $V_TOMCAT  >> $V_LOG
    echo "-----------------------------------" >> $V_LOG
    echo "$(ps aux | grep tomcat7 | grep -v listen_tomcat.sh | grep -v grep)" >> $V_LOG
    echo "-----------------------------------" >> $V_LOG
    sleep 3
    echo "$(netstat -nlpt | grep 'java')" >> $V_LOG
    echo "-----------------------------------" >> $V_LOG
}

while :
do
    V_TOMCAT_NUM=$(ps aux | grep tomcat7 | grep -v grep | wc -l)

    if [ $V_TOMCAT_NUM -lt 1 ]; then
        restart_tomcat
        continue
    fi

    for PORT in $V_TOMCAT_PORT; do
        V_PORT_NUM=$(netstat -nlt | grep '${PORT}' | wc -l)
        if [ $V_PORT_NUM -lt 0 ];then
            restart_tomcat
            continue
        fi
    done
    sleep 10
done

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章