supervisord admite process groups. Puede agrupar procesos en grupos nombrados y administrarlos colectivamente.
[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
comando supervisorctl puede ser llamada con un nombre de grupo:
supervisorctl restart foo:
, así como con múltiples nombres de proceso:
supervisorctl restart foo:cat1 cat2
Es increíble cómo no trivial que era para descubrir que se debe agregar un punto al emitir comandos a un grupo de procesos. Gracias. – mafrosis
De acuerdo. Creo que 'supervisorctl restart foo: *' hace que lo que está pasando sea más claro. – Tom
Para responder directamente la pregunta del OP, no puede reiniciar directamente un proceso específico. Solo puedes reiniciar grupos, lo que requiere una etiqueta de grupo? – Cerin