I'm running supervisor 3.2.0-2ubuntu0.2 Ubuntu 16.04. I want to change the command that one of my processes uses, but I need to make sure that supervisor sends the correct signal to it so that the process may wrap up; unfortunately, supervisor is still sending a SIGKILL even though I've requested TERM.
[program:my-worker]
process_name=%(program_name)s_%(process_num)02d
command=php /home/worker/job --param=a,b,c
autostart=true
autorestart=true
stopwaitsecs=10
user=worker
stopsignal=TERM
numprocs=1
stdout_logfile=/var/log/supervisor/worker.log
stderr_logfile=/var/log/supervisor/worker-error.log
If I follow Supervisor not loading new configuration files after changing the "command" (for example: php /home/worker/job --param=a,b,c,d
) I get the following in the logs:
2018-08-08 09:05:21,514 INFO waiting for worker_00 to stop
2018-08-08 09:05:21,533 INFO stopped: worker_00 (terminated by (9) SIGKILL)
I specifically need to make sure that SIGTERM is being sent - I've gone delving in to the code, but I didn't see anything obvious that would suggest my config is incorrect. Am I calling the wrong commands? service supervisord restart
triggers the same.