【问题标题】:Capturing the source or line number of uncaught exception in node.js在 node.js 中捕获未捕获异常的源或行号
【发布时间】:2015-10-28 02:33:26
【问题描述】:

我有一个在 IIS 中运行的 node.js express 应用程序。我发现由于一些未捕获的异常,该应用程序经常崩溃。因此,我使用 process.on('uncaughtException') 来重新启动服务,以防出现未捕获的异常。我能够得到错误为“ECONNRESET”,但我无法得到实际发生的位置。有什么方法可以捕获导致异常的错误源或行号?

【问题讨论】:

    标签: node.js express uncaught-exception


    【解决方案1】:

    使用process.on('uncaughtException'… 事件,它为您提供包含调用堆栈的错误对象

    process.on('uncaughtException', function(err){
        console.error(err.stack);
        process.exit();
    });
    

    【讨论】:

    • 在我的例子中,err 对象没有 stack 属性。它只有errno、code、syscall
    • 这是新的错误消息 { [Error: read ECONNRESET] [stack]: [Getter/Setter], [arguments]: undefined, [type]: undefined, [message]: 'read ECONNRESET ',代码:'ECONNRESET',errno:'ECONNRESET',系统调用:'读取'}
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-09-28
    • 2010-09-12
    • 1970-01-01
    • 1970-01-01
    • 2015-03-16
    • 1970-01-01
    相关资源
    最近更新 更多