如果进程停止,请在Monit中重新运行进程

我有这样的脚本:

#!/usr/bin/php <?php file_put_contents('/home/vagrant/sleep.pid', getmypid()); sleep(9); exit(0); 

我想写我的Monitconfiguration,所以它确保这个应用程序始终运行。 这是我的监视configuration:

 set daemon 5 check process program with pidfile /home/vagrant/sleep.pid start program = "/usr/bin/php /home/vagrant/myphp.php" 

但在我的程序退出后,Monit不会再尝试运行它。 这是有道理的,但我想知道是否有办法告诉Monit重新运行的过程。

在Monit和更多的玩家一起玩之后,我发现我没有正确运行Monit。

首先,您需要将以下配置添加到您的监控文件中:

 set httpd port 2812 and allow monit:monit set daemon 5 check process program with pidfile /home/vagrant/sleep.pid start program = "/usr/bin/php /home/vagrant/myphp.php" 

然后用这个命令运行monit:

 monit -c monit.conf 

现在,Monit在后台运行,如果死亡,重新运行该进程,则可以使用以下命令重新启动或启动特定的程序:

 monit -c monit.conf start all 

要么

 monit -c monit.conf stop my_role