最近发现服务器上的tomcat有时候不知道为什么就停止了,catalina.out中没有异常信息,但是catalina.2014-08-03.log里面有一些信息,不知道是不是这个原因造成的。
WARNING: An attempt was made to authenticate the locked user "admin"
Aug 02, 2014 2:17:42 PM org.apache.catalina.realm.LockOutRealm authenticate
总之还是不知道原因是什么,因为这个现在是不定期的。所以只能暂时写个脚本监测tomcat,如果停止了就马上启动。
参考了这个论坛:http://bbs.chinaunix.net/thread-675212-2-1.html。
复制了个如下脚本,试了是可行的
running=`ps -ef |grep /usr/local/tomcat |grep -v grep`
if [ "x" != "x$running" ]
then
echo "Tomcat already running!"
exit 0
fi
su - -c "/usr/local/tomcat/bin/startup.sh &"
sleep 3
running=`ps -ef |grep /usr/local/tomcat |grep -v grep`
if [ "x" = "x$running" ]
then
echo "Tomcat start error!"
exit 1
else
echo "Tomcat restore succeed"
exit 0
fi
然后用crontab周期执行。
注意:
1、此脚本放的位置一定不能是/usr/local/tomcat(不能和检测tomcat是否运行的那个一样),否则每次执行的时候都是tomcat already running!"。
2、一定要给此脚本赋予可执行权限。chmod +x jiaoben.sh,否则不能执行。
没有从根本上解决问题,希望有同样问题的大神能够帮忙解答。