1. java代碼
String tomcat_state = (String) config.getProperty("monitor_path");
Process ps =Runtime.getRuntime().exec(tomcat_state);
ps.waitFor();
InputStream in = ps.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(in));
StringBuffer sb = new StringBuffer();
String line = "";
while ((line = br.readLine()) != null) {
sb.append(line);
}
System.err.println(sb.toString());
2. 關閉tomcat shell腳本 stop.sh
tomcat_home=/opt/module/tomcats/apache-tomcat-9.0.0.M15-8086
SHUTDOWN=${tomcat_home}/bin/shutdown.sh
StartTomcat=${tomcat_home}/bin/startup.sh
TomcatCache=${tomcat_home}/work
echo "開始停止 tomcat"
${SHUTDOWN}
sleep 2
TomcatID=$(ps -ef |grep tomcat |grep -w 'apache-tomcat-9.0.0.M15-8086'|grep -v 'grep'|awk '{print $2}')
if [! $TomcatID ];then
echo "[info] tomcat停止成功 success"
else
echo "[info]當前tomcat進程ID爲:$TomcatID tomcat停止成功 success "
kill -9 $TomcatID
fi
3. 啓動tomcat shell 腳本 start.sh
tomcat_home=/opt/module/tomcats/apache-tomcat-9.0.0.M15-8086
SHUTDOWN=${tomcat_home}/bin/shutdown.sh
StartTomcat=${tomcat_home}/bin/startup.sh
TomcatCache=${tomcat_home}/work
WebUrl=http://140.143.147.167:8086/
echo "[info]tomcat.start"
${StartTomcat}
sleep 3
TomcatID=$(ps -ef |grep tomcat |grep -w 'apache-tomcat-9.0.0.M15-8086'|grep -v 'grep'|awk '{print $2}')
if [ ! $TomcatID ];then
echo "[error]tomcat進程不存在!tomcat啓動出錯...error"
else
echo "[info]當前tomcat進程ID爲:$TomcatID,休眠60s後檢測頁面..."
sleep 60
TomcatServiceCode=$(curl -I -m 10 -o /dev/null -s -w %{http_code} $WebUrl)
if [ $TomcatServiceCode -eq 200 ];then
echo "[info]tomcat啓動成功...success"
elif [ $TomcatServiceCode -eq 000 ];then
echo "[error]tomcat啓動出錯...error"
else
echo "[error]tomcat啓動出錯...error"
fi
fi
4. 檢測tomcat 是否啓動 monitor.sh
WebUrl=http://140.143.147.167:8086/
TomcatID=$(ps -ef |grep tomcat |grep -w 'apache-tomcat-9.0.0.M15-8086'|grep -v 'grep'|awk '{print $2}')
if[!TomcatID];then
TomcatServiceCode=$(curl -I -m 10 -o /dev/null -s -w %{http_code} $WebUrl)
if [ $TomcatServiceCode -eq 200 ];then
echo "tomca啓動正常 success"
elif [ $TomcatServiceCode -eq 000 ];then
echo "tomcat沒有啓動 error"
else
echo "[error]tomcat啓動出錯...error"
fi
else
echo "[error]tomcat啓動出錯...error"
fi