web-dev-qa-db-fra.com

Problème d'erreur de socket de superviseur

$ supervisorctl reread
error: <class 'socket.error'>, [Errno 111] Connection refused: file: /usr/lib64/python2.6/socket.py line: 567

J'essaie de configurer le superviseur sur mon système de production, mais cette erreur est frappante. Le fichier journal du superviseur est vide.

Quand je tape juste supervisorctl, il se plaint:

http://localhost:9001 refused connection

Rien n'écoute actuellement sur le port 9001, AFACT: lsof | grep TCP ne retourne rien.

89
kelorek

Vous devez démarrer supervisord avant de pouvoir utiliser supervisorctl. Dans mon cas:

Sudo supervisord -c /etc/supervisor/supervisord.conf
Sudo supervisorctl -c /etc/supervisor/supervisord.conf
158
kelorek

Si vous avez démarré supervisord avec un chemin personnalisé, procédez comme suit:

Sudo supervisord -c /mypath/supervisord.conf

Ensuite, vous devriez également démarrer supervisorctl avec le même paramètre, comme ceci:

Sudo supervisorctl -c /mypath/supervisord.conf
34
Jonathan

Vous pouvez obtenir ce problème si vous démarrez supervisor avec une URL relative pour -c puis essayez de lancer supervisorctl à partir d’un répertoire différent.

Par exemple:

supervisord -c supervisord.conf
supervisorctl start someapp ## works 
cd somedirectory
supervisorctl restart someapp ## http://localhost:9001 refused connection

La solution serait de toujours utiliser le chemin absolu. par exemple.:

Bon:

supervisord -c /etc/supervisor/supervisord.conf

Bad:

supervisord -c supervisord.conf
12
toast38coza

Ce problème se produit également lorsqu'une ancienne version de supervisord.conf fichier est utilisé. La nouvelle version de superviseur utilise un fichier de configuration différent. Les solutions ci-dessus ne fonctionnent pas. Dans ce cas, il vous suffit de régénérer le fichier de configuration avec

echo_supervisord_conf > /etc/supervisord.conf

J'espère que ça aide quelqu'un.

5
Krishna Deepak

veuillez faire ce qui suit:

Sudo service supervisor start

poste qui tout est normal comme b4 - il y a un problème avec la version 1b

Sudo supervisorctl reload

3
VKB

Dans Ubuntu 18.04 avec le paquet de la distribution

Vous avez probablement fait la même erreur que moi et créé le fichier de configuration /etc/supervisord.conf alors que mon gestionnaire de service ( systemd ) utilisait le fichier de configuration /etc/supervisor/supervisord.conf

Sudo rm /etc/supervisord.conf

ou

Sudo mv /etc/supervisord.conf /etc/supervisor/supervisord.conf

si tu veux le garder

Maintenant vous pouvez courir Sudo supervisorctl


Pourquoi?

lorsque vous exécutez supervisorctl, il commence par rechercher le fichier de configuration situé à l'emplacement /etc/supervisord.conf, s'il n'est pas présent, il recherchera le fichier par défaut du paquet /etc/supervisor/supervisord.conf c'est celui que systemd exécute réellement.

Systemd utilise toujours le fichier /etc/supervisor/supervisord.conf indépendamment de l'existence de l'autre fichier.

Vous pouvez vérifier quel fichier utilise systemd en lançant Sudo systemctl status supervisor

enter image description here Vous pouvez voir dans la dernière ligne la commande où le fichier de configuration est codé en dur

1
Madacol