2

I've been using supervisor for over a year now. It is installed from a Debian package. When I upgraded the package the other day, something break and I can't seem to figure out what.

~> sudo supervisorctl status
http://localhost:9001 refused connection
~> cd /etc/supervisor
~> sudo supervisorctl status
# Works

In my /etc/supervisor/supervisord.conf, I told supervisor to use a unix socket like this :

[supervisorctl]
serverurl=unix:///var/run/supervisor.sock

It looks like that when I'm not inside the /etc/supervisor folder, the configuration is just not loaded and supervisor uses the defaults (http://localhost:9001 being the default for serverurl)

I checked out the way the Debian package starts supervisor and it seems the path to the configuration file is absolute so I don't understand why it doesn't work.

/usr/bin/python /usr/bin/supervisord -c /etc/supervisor/supervisord.conf

Anyone having the same issue or a solution ? It's quite annoying as it breaks my ansible recipes. Thanks

EDIT:

Here is the full content of /etc/supervisor/supervisord.conf :

[unix_http_server]
file=/var/run/supervisor.sock
chmod=0700

[supervisord]
logfile=/var/log/supervisor/supervisord.log
pidfile=/var/run/supervisord.pid
childlogdir=/var/log/supervisor

[rpcinterface:supervisor]
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface

[supervisorctl]
serverurl=unix:///var/run/supervisor.sock

[include]
files = /etc/supervisor/conf.d/*.conf

And here are the requested variables :

~> which supervisorctl
/usr/bin/supervisorctl
~> which supervisord
/usr/bin/supervisord
~> supervisord --version
3.1.3
  • Which version is this? Could you show your complete /etc/supervisor/supervisord.conf? Could you show the output of which supervisorctl? – gf_ Dec 3 '15 at 22:19
  • @gf_ I edited the post to give out these information. – Depado Dec 4 '15 at 11:21
7

The solution is actually pretty simple. Supervisord is indeed started with the /etc/supervisor/supervisord.conf file, but supervisorctl now expects the configuration file to be stored in /etc/supervisord.conf (as stated in the official documentation). I don't know why this update broke supervisorctl but that was annoying.

Solution :
# ln -s /etc/supervisor/supervisord.conf /etc/supervisord.conf

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.