[program:yourapp]
command = bash -c "sleep 60 && exec urcmd'
startsecs = 65 ;
e depois
supervisorctl -c your_config_file reload
1. você precisa usar o comando exec
, caso contrário, ele criará um subprogress de sleep 60 && exec your command
e seu progresso será semelhante ao seguinte
$ ps -ef|grep urcmd
work 1818 1698 0 17:35 ? 00:00:00 bash -c sleep 60 && urcmd
work 3872 1818 0 17:36 ? 00:00:00 urcmd
e quando você usa supervisorctl
para parar o urApp, você irá parar o progresso 1818 e deixar 3872 um progresso órfão
2.recomendar para alterar o startsecs para 5 mais do que o sono segundos, em seguida, quando você iniciar este aplicativo e verificar o status, ele irá mostrar-lhe que está começando
$supervisorctl -c your_config_file status;echo;ps -ef|grep urcmd
urapp STARTING
otherapp RUNNING pid 13502, uptime 0:00:55
$supervisorctl -c your_config_file status;echo;ps -ef|grep urcmd
urapp RUNNING pid 13503, uptime 0:00:05
otherapp RUNNING pid 13502, uptime 0:00:65
else se você definir o valor a menos que o segundo do sono, quando você iniciar o aplicativo e verificar o status, você receberá um status de execução, mas ainda estará dormindo cmd antes da execução real
3. Quando você alterar o seu arquivo de configuração, você precisa usar o comando reload cmd ou apenas reiniciar o seu supervisord para fazê-lo funcionar