在我的Node.js应用程序中,我想捕获所有未处理的错误并将它们写入日志。
目前我用try / catch块包装每个边缘点代码,但它做了很多工作。我需要一种方法来捕获一个地方的所有错误,比如ASP.Net中的Global.asax application_error,所以不要那样:
function a(){
try{
var wrong = 3 / 0;
} catch(err){
console.log(err);
}
}
function b(){
try{
var wrong = 3 / 0;
} catch(err){
console.log(err);
}
}
function c(){
try{
var wrong = 3 / 0;
} catch(err){
console.log(err);
}
}
我只会有类似的东西:
function a() {
var wrong = 3 / 0;
}
function b() {
var wrong = 3 / 0;
}
function c() {
var wrong = 3 / 0;
}
function errorHandler(err) {
console.log(err);
}
任何帮助都将深表感谢!
答案 0 :(得分:1)
您可以使用未捕获的异常从一个地方捕获所有错误。
process.on('uncaughtException', function (err) {
console.error((new Date).toUTCString() + ' uncaughtException:', err.message)
console.error(err.stack)
process.exit(1)
})