2012-04-19 37 views
8
我的整个的node.js应用

我有托管在Heroku处理或防止错误崩溃在Heroku

每当我的应用程序遇到错误,整个服务器崩溃,使其不能对任何人的Node.js应用。

是否有任何方法可以返回错误页面,并保持服务器活着?

我读到这,Node.JS with forever on Heroku但它并没有回答我的问题....

+0

我*一半*想出了这一点 - 但是,我有麻烦发送错误页面 - http://stackoverflow.com/questions/10221309/use-process-onuncaughtexception-to-show-a-500-error - 页 – Alex 2012-04-19 03:36:58

+0

我发现了另一个类似的帖子,很好的答案。请检查[这里] [1] [1]:http://stackoverflow.com/questions/5999373/how-do-i-prevent-node-js-from-crashing-try- catch-doesnt-work – Sadaka 2014-07-25 05:51:54

回答

4

您可以使用DOMAIN,这可能会在发生uncaughtException时阻止服务器崩溃。

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

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

的更多信息,请到http://shapeshed.com/uncaught-exceptions-in-node/

使用这种方法必须尝试,抓住你的块旁边。

+1

我知道这是一个旧帖子,但只是更新:** DOMAIN **已被弃用,不应再使用。 – Azevedo 2016-09-04 16:17:35

+0

@Azevedo感谢您的更新,但不幸的是,没有其他更好的替换由Node Docs提供。你可以在这里进一步阅读http://stackoverflow.com/questions/5999373/how-do-i-prevent-node-js-from-crashing-try-catch-doesnt-work – 2016-09-05 15:16:35