Não é possível usar supervisorctl fora do diretório / etc / supervisor

2

Estou usando supervisor há mais de um ano. É instalado a partir de um pacote Debian. Quando eu atualizei o pacote no outro dia, algo quebra e eu não consigo descobrir o que.

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

No meu /etc/supervisor/supervisord.conf , eu disse ao supervisor para usar um soquete unix como este:

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

Parece que quando não estou dentro da pasta /etc/supervisor , a configuração simplesmente não está carregada e o supervisor usa os padrões ( link sendo o padrão para serverurl )

Eu verifiquei como o pacote Debian inicia o supervisor e parece que o caminho para o arquivo de configuração é absoluto, então não entendo por que ele não funciona.

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

Alguém que tenha o mesmo problema ou uma solução? É muito chato, pois quebra minhas receitas ansiosas. Obrigado

EDITAR:

Aqui está o conteúdo completo do /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

E aqui estão as variáveis solicitadas:

~> which supervisorctl
/usr/bin/supervisorctl
~> which supervisord
/usr/bin/supervisord
~> supervisord --version
3.1.3
    
por Depado 03.12.2015 / 10:01

1 resposta

7

A solução é bem simples. O Supervisord é realmente iniciado com o arquivo /etc/supervisor/supervisord.conf , mas supervisorctl agora espera que o arquivo de configuração seja armazenado em /etc/supervisord.conf (conforme declarado na documentação oficial). Eu não sei porque esta atualização quebrou supervisorctl mas isso foi chato.

Solução: # ln -s /etc/supervisor/supervisord.conf /etc/supervisord.conf

    
por 11.12.2015 / 10:10