2016-11-06 13 views
0

私のNode.jsアプリケーションでは、すべての未処理のエラーをキャッチしてログに書き込む必要があります。Node.jsのキャッチエラー

現在、すべてのエッジポイントコードをtry/catchブロックでラップしていますが、多くの作業があります。

function a() { 
var wrong = 3/0; 
} 

function b() { 
var wrong = 3/0; 
} 

function c() { 
var wrong = 3/0; 
} 

function errorHandler(err) { 
console.log(err); 
} 
:私はそのような何かを持っています

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); 
} 
} 

:私はその代わりに、ASP.NetでのGlobal.asaxのApplication_Errorのように、一つの場所にすべてのエラーをキャッチする方法が必要です

ご協力いただければ幸いです!

+2

[Node.jsのベストプラクティスの例外処理](http://stackoverflow.com/questions/7310521/node-js-best-practice-exception-handling)の可能性のある重複 – FrankerZ

答えて

1

キャッチされない例外を使用して、すべてのエラーを1か所からキャッチできます。

process.on('uncaughtException', function (err) { 
    console.error((new Date).toUTCString() + ' uncaughtException:', err.message) 
    console.error(err.stack) 
    process.exit(1) 
}) 

https://shapeshed.com/uncaught-exceptions-in-node/

+0

このそれを行う一つの方法ですが、私はそれがOPの状況を考慮した確かな助言ではないと思います。 '警告: 'uncaughtException'を正しく使用する' https://nodejs.org/api/process.html#process_event_uncaughtexceptionを参照してください。 – brk

関連する問題