web-dev-qa-db-de.com

Supervisorctl-Fehler: Unix: ///var/run/supervisord.sock Verbindung abgelehnt?

Dies ist meine Konfigurationsdatei. Ich führe supervisord -c /etc/supervisor/supervisord.conf aus, es funktioniert gut. Beim Versuch, supervisorctl -c /etc/supervisor/supervisord.conf auszuführen, ist folgender Fehler aufgetreten:

Fehler: Unbekanntes Protokoll für serverurl /var/run/supervisord.sock: Datei: /usr/local/lib/python2.7/dist-packages/supervisor-3.0b2-py2.7.Egg/supervisor/xmlrpc.py Zeile : 440

Ich kann mein Programm über http://127.0.0.1:9001 perfekt starten oder stoppen, aber ich möchte das Programm über die Befehlszeile steuern. Kann mir jemand helfen?

[unix_http_server]
file = /var/run/supervisor.sock
chmod = 0777
chown= root:cruelcage

[inet_http_server]
port=9001
username = cruelcage
password = 123

[supervisorctl]
serverurl = /var/run/supervisord.sock

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

[supervisord]
logfile=/home/cruelcage/log/supervisord/supervisord.log ; (main log file;default $CWD/supervisord.log)
logfile_maxbytes=50MB       ; (max main logfile bytes b4 rotation;default 50MB)
logfile_backups=10          ; (num of main logfile rotation backups;default 10)
loglevel=info               ; (log level;default info; others: debug,warn,trace)
pidfile=/var/run/supervisord.pid ; (supervisord pidfile;default supervisord.pid)
nodaemon=true              ; (start in foreground if true;default false)
minfds=1024                 ; (min. avail startup file descriptors;default 1024)
minprocs=200                ; (min. avail process descriptors;default 200)
#user=root                 ; (default is current user, required if root)
childlogdir=/home/cruelcage/log/supervisord/            ; ('AUTO' child log dir, default $TEMP)

[program:config]
command=python /home/cruelcage/documents/config/config.py
autostart = true
startsecs = 5
user = cruelcage
redirect_stderr = true
stdout_logfile_maxbytes = 20MB
stdoiut_logfile_backups = 20
stdout_logfile = /home/cruelcage/log/debug.log
10
cruelcage

Ihr [supervisorctl]serverurl sollte " unix: // / var/run/supervisord.sock" sein, da "/var/run/supervisord.sock" kein gültiger URI für xmlrpclib ist, zu dem eine Verbindung hergestellt werden kann.

9
soulseekah
echo_supervisord_conf > /etc/supervisord.conf
Sudo supervisord -c /etc/supervisord.conf
Sudo supervisorctl status
13
Eski Yin

Ich hatte dieses Problem und stellte fest, dass es nach einem Neustart des Servers aufgetreten ist. Als Supervisor danach einen Neustart versuchte, konnte das Protokollverzeichnis nicht gefunden werden das in meiner Konfigurationsdatei des Daemons angegeben wurde (dieses Problem trat nicht auf, während Supervisor ausgeführt wurde).

Alles was ich tun musste, war den stdout_logfile path (oder die Zeile auskommentieren) in meiner Datei zu ändern: 

(tauschen Sie ##### gegen Ihre Datei-ID)

Sudo nano /etc/supervisor/conf.d/daemon-#####.conf

Fügen Sie einen vorhandenen Protokolldateipfad hinzu oder kommentieren Sie die Zeile mit einem # am Zeilenanfang aus:

#stdout_logfile=/my/bad/log/directory

Starten Sie dann den Supervisor erneut

Sudo service supervisor restart

0
mmarlow