Wie starten Sie nur bestimmte Prozesse mit Supervisorctl neu?
-
25-10-2019 - |
Frage
Ich führe ein paar Prozesse mit Supervisford, benannt Process1, Process2, ..., Process8 aus. Wenn ich den Prozess {1-4} neu starten möchte, wie kann ich das mit Supervisorctl machen?
Lösung
Supervisford unterstützt Prozessgruppen. Sie können Prozesse in genannte Gruppen gruppieren und gemeinsam verwalten.
[unix_http_server]
file=%(here)s/supervisor.sock
[supervisord]
logfile=supervisord.log
pidfile=supervisord.pid
[program:cat1]
command=cat
[program:cat2]
command=cat
[program:cat3]
command=cat
[group:foo]
programs=cat1,cat3
[supervisorctl]
serverurl=unix://%(here)s/supervisor.sock
[rpcinterface:supervisor]
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
Der Befehl Supervisorctl kann mit einem Gruppennamen aufgerufen werden:
supervisorctl restart foo:
sowie mit mehreren Prozessnamen:
supervisorctl restart foo:cat1 cat2
Andere Tipps
Seit supervisorctl
Akzeptiert mehrere Prozesse in der Befehlszeile.
supervisorctl restart process{1..4}
wird erweitert von der Hülle hinein
supervisorctl restart process1 process2 process3 process4
als hätten Sie das explizit ausgegeben.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow