
hello.sh という名前のファイルが 1 つあります。crontab から 30 分ごとにそのファイルを実行しています。
hello.sh には、サービスが実行されているかどうかを確認するスクリプトがあります。実行されていない場合は、メールを送信してサービスを再起動します。
hello.sh スクリプト:
b=$JAVA_HOME/bin/jps| grep "Bootstrap" | awk '{print $2}' if [ "$b" = "LISTEN" ]; then echo "Bootstrap is running" elif [ "$b" == "" ]; then mail -s "Message from 33 Server, The service is not running its going to restart the server " [email protected] sudo catalina.sh run
完璧に動作しています。現在、このプログラムを 30 分ごとに 1 回実行しています。サービスが実行されていない場合は、サービスの再起動を試みます。現在、このスクリプトを 3 回チェックする必要があります。1:30 時間経過してもサービスが再起動されない場合は、チェック プロセスをスキップして、「このサービスは実行されていないため、手動で開始する必要があります」などのメールを送信する必要があります。サービスを手動で開始するまで、スクリプトは実行されません。サービスを手動で開始した後は、30 分ごとに crontab からサービスを 1 回チェックする必要があります。
可能であれば、どうすればいいでしょうか?