superwizor obsługuje process groups. Możesz grupować procesy w nazwane grupy i zarządzać nimi zbiorczo.
[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
komenda supervisorctl może być wywołana z nazwą grupy:
supervisorctl restart foo:
jak również z wieloma nazwami procesowych:
supervisorctl restart foo:cat1 cat2
To niesamowite, jak nietrywialne było dowiedzieć się, że należy podać dwukropek podczas wydawania poleceń do grupy procesów. Dziękuję Ci. – mafrosis
Uzgodnione. Myślę, że 'supervisorctl restart foo: *' sprawia, że to, co się dzieje, jest wyraźniejsze. – Tom
Aby bezpośrednio odpowiedzieć na pytanie OP, nie można bezpośrednio ponownie uruchomić określonego procesu. Możesz zrestartować tylko grupy, co wymaga tagu grupy? – Cerin