Cómo definir diferentes señales de parada / reinicio con arranque

8

Estoy empezando a convertir todos nuestros sistemas a un sistema de arranque para administrar nuestros diversos procesos de aplicación. Una cosa que me falta constantemente es la capacidad de enviar una señal diferente al proceso stopo restarteventos.

Por ejemplo, ejecutamos nuestros procesos web con Unicorn . Unicorn tiene una gran API de manejo de señal. Cuando quiero recargar el proceso con gracia, le envío al maestro una señal USR2. Para cerrarlos con gracia, envío un comando SALIR. TERM (señal de parada predeterminada de arranque) constituye un apagado inmediato.

Otro ejemplo es usar Resque . Para cerrar con gracia a un trabajador, le envío la señal de SALIDA. La señal TERM nuevamente causa un apagado inmediato, ya sea que el niño del trabajador esté bifurcado o no.

¿Admite el arranque compatible con señales personalizadas? Parece que no puedo encontrarlo en ningún lado, lo que me preocupa que estoy usando la "herramienta incorrecta para el trabajo".

localshred
fuente

Respuestas:

4

Ubuntu 10.04 viene con la versión inicial 0.6.6 que tiene los parámetros kill signalykill timeout que configurarían los valores relevantes de señal y tiempo de espera. La señal de "recarga" está codificada SIGHUP.

Las versiones más nuevas de upstartintroducen el reload signalparámetro ; consulte otras respuestas a esta pregunta para obtener más detalles.

el wabbit
fuente
Es bueno saberlo, no estoy seguro de por qué la señal de recarga está codificada, pero supongo que tendré que vivir con ella por el momento.
localshred
De acuerdo con la respuesta de diclophis a continuación, esto ahora es posible a través de reload signal SIGUSR2, pero requiere la versión inicial 1.10.0.
ghayes