Bash - 使用wathcDog启动和监视应用程序

时间:2017-06-18 07:19:31

标签: linux bash shell sh watchdog

我正在编写一个watchDog脚本,它启动我的应用程序,并在检测到为down时重新启动它(根据进程PID)。

while  [ $pid ]; do
pid=$(getPID)
#if server App is down start it!
if [ -z "$pid" ]; then
        echo -e "`date` [INFO]: watchDog activated -> starting service since was been deteced as down!\n" >> $watchDogLogger 2>$1
        startApp > /dev/null 2>$1
        pid=$(getPID)
fi
done

问题是当用户使用watchDog(看门狗启动)启动应用程序时,因为while循环控制台“卡住”而我无法继续使用它。 我知道我不能将watchDog作为后台工作(watchDog start&)运行然后让控制台返回但它让我烦恼,因为当我想要停止它(watchDog stop)它确实停止了应用程序但是第一次watchDop job(watchDog start)仍然有效。

有没有其他方法可以启动watchDog并恢复康复?

谢谢!

0 个答案:

没有答案