Pregunta

estoy usando el rubí demonio joya.¿Se pregunta cómo puedo agregar algunos pasos adicionales a la acción de parada?Esperaba poder detectar que se llamó a detener y agregarle algún código adicional.¿Alguien sabe cómo puedo lograr esto?

¿Fue útil?

Solución

Mirando el código del demonio gema, que no parezca que tiene un punto de extensión obvia para este propósito. Sin embargo, me pregunto si (en el proceso endemoniada) que podría atrapar la señal KILL / plazo que demonios envía cuando se produce un 'stop' ...?

trap("TERM") do
  # execute your extra code here
end

Si lo prefiere puede instalar un gancho at_exit: -

at_exit do
  # execute your extra code here
end

Otros consejos

una muy buen artículo en su blog sobre una extensión de la gema los demonios que podría ser lo que estás buscando.

Después de leer documentos Dæmons he encontrado que hay una opción de :stop_proc en el método #run

  

: stop_proc un proc que se llamará cuando el proceso endemoniada   recibe una solicitud de detención (sólo funciona para: carga y: Modo proc)

Así que, básicamente, se puede pasar como una opción con el #run o #run_proc métodos

enlace de respuesta original a RubyForge

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top