Halaman

Iklan Google

20 Mei 2015

Tomcat Watchdog

Shell script sederhana untuk melakukan pengecekan apache tomcat dalam kedaan Ok.

if [ -r $CATALINA_PID ]
then
    kill -0 `cat $CATALINA_PID` > /dev/null 2>&1
    if [ $? -gt 0 ]
    then
        echo "Server is not running.."
        rm $CATALINA_PID
        exec $CATALINA_HOME/bin/catalina.sh start > /dev/null
    else
        if curl -s --head  --request GET http://localhost:8080 -m 5 | grep "200 OK" > /dev/null
        then
        echo "Connection Healty"
        else
        echo "Tomcat is Down, Killing tomcat"
        kill -9 `cat $CATALINA_PID`
        echo "Trying to start tomcat"
        exec $CATALINA_HOME/bin/catalina.sh start > /dev/null
        fi
    fi
else
    echo $CATALINA_HOME
    echo "PID not found, Start server"
    if [ -d $CATALINA_HOME ]
    then
        exec $CATALINA_HOME/bin/catalina.sh start > /dev/null
    else
        echo "Catalina.sh not found, make sure you have define CATALINA_HOME on environment path"
    fi
fi

Shell script ini berfungsi untuk menghidupkan Apache tomcat kembali, ketika server down, dan akan mematikan paksa dan menghidupkan kembali ketika apache tomcat hang, karena OOME (OutOfMemoryException) PermGen Space.

Gunakan crontab untuk menjalankan shell script ini secara terjadwal.