Я настроил руководитель успешно (CentOS release 6.6
) за бобовый стебель очередь, и она работала раньше, но внезапно после смены пароля она больше не работает. Я сделал это (настройка) как root
пользователь, но теперь, когда я добавляю работу в queue
это терпит неудачу, и следующая трассировка доступна в файле журнала:
2014-12-03 00:45:36,017 INFO RPC interface 'supervisor' initialized
2014-12-03 00:45:36,017 CRIT Server 'unix_http_server' running without any HTTP authentication checking
2014-12-03 00:45:36,017 INFO daemonizing the supervisord process
2014-12-03 00:45:36,017 INFO supervisord started with pid 31309
2014-12-03 00:45:37,022 INFO spawned: 'queue' with pid 31317
2014-12-03 00:45:38,023 INFO success: queue entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
Сейчас supervisord.conf
содержит следующую конфигурацию:
[unix_http_server]
file=/tmp/supervisor.sock ; (the path to the socket file)
[supervisord]
logfile=/tmp/supervisord.log
logfile_maxbytes=50MB
logfile_backups=10
loglevel=info
pidfile=/tmp/supervisord.pid
nodaemon=false
minfds=1024
minprocs=200
[rpcinterface:supervisor]
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
[supervisorctl]
serverurl=unix:///tmp/supervisor.sock
[program:queue]
command=/usr/local/bin/php artisan queue:listen --tries=3 --timeout=86400 --sleep=60
directory=/home/***/www/*** // Real path removed for this question
autostart=true
autorestart=true
redirect_stderr=true
Я перепробовал все как мог, перезапустил program
и перезагрузил supervisor
несколько раз, но не повезло. Что я могу сделать сейчас, чтобы это снова заработало?
Обновить: Если я бегу php artisan queue:work
от терминала вручную, тогда он работает на переднем плане.
Пытаться
$ ps aux | grep artisan # get artisan PID
$ sudo kill -2 <PID>
$ ps aux | grep artisan # verify artisan has shutdown properly - if not use kill -9 in previous step
Иногда supervisorctl
есть проблемы с остановкой процессов. Это может быть из-за того, что процесс не слушает SIGINT / SIGTERM или из-за зависания процесса. В любом случае kill -9
следует перебить его грубой силой, и тогда вы сможете использовать supervisorctl start program
Других решений пока нет …