Node.js 不会在 uncaughtException 上显示整个错误消息,这可能吗?

Posted

技术标签:

【中文标题】Node.js 不会在 uncaughtException 上显示整个错误消息,这可能吗?【英文标题】:Node.js doesn't display entire error message on uncaughtException, is it possible? 【发布时间】:2012-02-29 03:54:06 【问题描述】:

如果你在 node.js 中捕获了 uncaughtExceptions,像这样:

process.on('uncaughtException', function (error) 
  console.log(error);
);

如果您没有发现错误而只是让进程崩溃,则显示的错误消息不包含您收到的所有信息。当您让进程崩溃时,它包括导致错误的行。有什么方法可以获取完整的错误消息,包括导致错误的行,以便我们可以使用 uncaughtException 记录这些数据。

【问题讨论】:

这个问题本身已经解决了我的问题 :) 非常感谢 :) 【参考方案1】:

试试error.stack

process.on('uncaughtException', function (error) 
   console.log(error.stack);
);

【讨论】:

如何显示更多,因为在我的情况下,error.stack 只显示 3 行,我无法追踪引发错误的问题根源 点赞! isnt error.stack 非标准扩展 developer.mozilla.org/en-US/docs/Web/javascript/Reference/… 或者节点是否到处都有它【参考方案2】:

试试:

process.on('uncaughtException', function (error) 
   console.dir(error);
);

【讨论】:

先生,问题和答案有区别吗? @Jayram 是的。问题使用console.log(error),我建议使用console.dir(error)console 对象的不同功能。

以上是关于Node.js 不会在 uncaughtException 上显示整个错误消息,这可能吗?的主要内容,如果未能解决你的问题,请参考以下文章

Node.js 用户量会不会在一年内超越 Java?

Node.js 不会在 uncaughtException 上显示整个错误消息,这可能吗?

Node.js 服务器不会在永远停止 0 上停止

node.js python子进程不会实时打印

为啥 catch 块不会触发并且应用程序停止在 node.js 中工作

没有 req.session.save() 会话不会保存在 Node.js 中