Open
Description
My config:
[program:redis-testapp]
command=/opt/bcs/bin/redis-server /apps/testapp/releases/current/environments/all/redis.conf
stdout_logfile=/var/log/redis_testapp_log
stderr_logfile=/var/log/redis_testapp_log
startsecs=30
priority=1
autostart=true
autorestart=true
[program:celerybeat-testapp]
command=python -O manage.py celerybeat --loglevel=INFO --schedule=/apps/testapp/db/celerybeat_schedule_db
stdout_logfile=/var/log/celerybeat_testapp_log
stderr_logfile=/var/log/celerybeat_testapp_log
priority=999
startsecs=5
autostart=true
[program:celery-testapp]
command=python -O manage.py celeryd --loglevel=INFO --events
stdout_logfile=/var/log/celeryd_testapp_log
stderr_logfile=/var/log/celeryd_testapp_log
priority=100
startsecs=10
autostart=true
[program:gunicorn-testapp]
command=gunicorn_django --workers=10 --log-level info --timeout 500 --bind=127.0.0.1:8004
stdout_logfile=/var/log/gunicorn_testapp_log
stderr_logfile=/var/log/gunicorn_testapp_log
priority=999
startsecs=10
autostart=true
[program:memcached-testapp]
command=/opt/bcs/bin/memcached -m 128 -l 127.0.0.1 -p 11212 -u nobody -P /apps/testapp/run/memcached.pid
stdout_logfile=/var/log/memcached_testapp_log
stderr_logfile=/var/log/memcached_testapp_log
priority=11
autostart=true
autorestart=true
My output =>
2012-05-30 22:37:33,181 INFO daemonizing the supervisord process
2012-05-30 22:37:33,182 INFO supervisord started with pid 16230
2012-05-30 22:37:34,195 INFO spawned: 'redis-testapp' with pid 16232
2012-05-30 22:37:34,206 INFO spawned: 'memcached-testapp' with pid 16233
2012-05-30 22:37:34,214 INFO spawned: 'celery-testapp' with pid 16234
2012-05-30 22:37:34,238 INFO spawned: 'celerybeat-testapp' with pid 16235
2012-05-30 22:37:34,477 INFO spawned: 'gunicorn-testapp' with pid 16241
2012-05-30 22:37:35,240 INFO success: memcached-testapp entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2012-05-30 22:37:39,434 INFO success: celerybeat-testapp entered RUNNING state, process has stayed up for > than 5 seconds (startsecs)
2012-05-30 22:37:44,434 INFO success: celery-testapp entered RUNNING state, process has stayed up for > than 10 seconds (startsecs)
2012-05-30 22:37:44,435 INFO success: gunicorn-testapp entered RUNNING state, process has stayed up for > than 10 seconds (startsecs)
2012-05-30 22:38:04,197 INFO success: redis-testapp entered RUNNING state, process has stayed up for > than 30 seconds (startsecs)
What I expected to happen =>
redis would start and supervisord would wait 30 seconds before starting any lower priority processes.
Activity
disposable-ksa98 commentedon Jul 2, 2013
I don't see what's the point of using supervisor if it does not get this right.
@mnaberez If there is an open issue for this, you should post the link so we can find it.
rca commentedon Jul 9, 2013
I also need the ability to start processes in a particular order.
An event-based approach could work. For example, if I have a
[program:agent]
and a[program:client]
I could subscribe the client to start up when the agent emits astarted
event. By default, if a program does not subscribe to any event, it will be started whensupervisord
starts.sevastos commentedon Mar 3, 2014
+1
maximilize commentedon Mar 6, 2014
+1
tomislacker commentedon Apr 9, 2014
+1
dmitriy-kiriyenko commentedon Apr 21, 2014
+1, this major issue.
jefferai commentedon Apr 22, 2014
+1
hunterloftis commentedon Apr 22, 2014
+1
orarbel commentedon May 1, 2014
+1
abierbaum commentedon May 2, 2014
+1
gigaroby commentedon May 13, 2014
+1
KenjiTakahashi commentedon May 14, 2014
👍
karanlyons commentedon May 30, 2014
+1
243 remaining items