2012-04-19 14 views
8

Tengo una aplicación Node.js alojado en HerokuManipulación o prevenir errores de estrellarse mi aplicación Node.js todo en Heroku

Siempre que mi aplicación encuentra un error, todo el servidor se bloquea, por lo que es disponible para cualquier persona .

¿Hay alguna forma de devolver una página de error y mantener el servidor con vida?

leí esto, Node.JS with forever on Heroku pero no responde a mi pregunta ....

+0

I * half * descubrió esto; sin embargo, tengo problemas para enviar una página de error - http://stackoverflow.com/questions/10221309/use-process-onuncaughtexception-to-show-a-500-error -página – Alex

+0

Encontré otra publicación similar con buena respuesta. Por favor, compruebe [aquí] [1] [1]: http://stackoverflow.com/questions/5999373/how-do-i-prevent-node-js-from-crashing-try- catch-doesnt-work – Sadaka

Respuesta

4

Probablemente pueda usar DOMINIO, esto probablemente impida que su servidor se bloquee cuando se lanza uncaughtException.

domain = require('domain'), 
d = domain.create(); 

d.on('error', function(err) { 
    console.error(err); 
}); 

Para más detalles ir http://shapeshed.com/uncaught-exceptions-in-node/

junto con este método debe intentar coger su-bloque.

+1

Sé que esta es una publicación anterior, pero solo para actualizar: ** DOMAIN ** ha quedado en desuso y ya no se debe usar. – Azevedo

+0

@Azevedo Gracias por su actualización, pero lamentablemente no hay otro reemplazo mejor proporcionado por Node Docs. Puedes leer más aquí http://stackoverflow.com/questions/5999373/how-do-i-prevent-node-js-from-crashing-try-catch-doesnt-work –

Cuestiones relacionadas