node的错误处理

时间:2023-03-09 19:11:40
node的错误处理

当node程序出现错误的时候,首先是要捕捉到错误,然后处理错误,不能让进程挂掉,最后是将错误写进日志.

1.在app.js最开始写,用process对象,监听uncaughtException事件process.on('uncaughtException', function (err) {

    logger.error('Caught exception: ', err);
});
用process的是能将程序挂掉的错误捕获. 2.使用domain模块来捕获错误 3.express默认使用的是morgan 日志模块,
app.use(logger('dev'));    //app.use的所有模块的最前面
app.use(function(err, req, res, next){}) 捕获在请求中的错误
一般的导致进程崩溃的错误,一般都是在callback中导致的.
由于异常而导致的堆栈丢失会导致内存泄漏 4.var server = http.createServer(app);
server.on('error', onError); 5.下面是错误类型,参考 https://my.oschina.net/u/1416844/blog/498647 如果启动时,都启动不来,如下面的例子:

49707 segmentation fault node server.js   这个是node的版本太旧了