如何在node.js中看到警告和错误消息?

时间:2012-04-26 17:02:15

标签: node.js error-handling

如何在Node中获取错误报告?我正在运行v0.6.15(使用简单的osx安装DMG),并且每当出现错误时,说我尝试使用未定义的变量,该过程就会停止,但没有指示原因。

我想我正在寻找PHP的error_reporting(E_ALL)的节点版本;

有什么建议吗?

== EDIT ==

很奇怪......好吧......所以我注意到我在运行的文件中得到的错误很好,但不是我“需要”的错误

我正在运行的文件只有这段代码

process.on('uncaughtException', function(err) {
  console.log(err);
});

var ImageProcessor = require('./ImageProcessor').ImageProcessor;
var imageProcessor = new ImageProcessor();

imageProcessor.imageRequestEnd();

imageProcessor是一个mootools类,如果重要但不使用任何其他特殊的东西。

1 个答案:

答案 0 :(得分:1)

虽然我同意@Brad我从未见过这样的行为,但一般来说,如果你正在调试一个NodeJS程序并想知道是什么导致它被杀死,你可以使用这样的结构:

process.on('uncaughtException', function(err) {
  console.log(err);
});

在你的剧本中。

请注意,很多人认为你不应该在生产中使用这样的构造,因为未捕获的异常通常表明你遇到了如此严重和意外的错误,唯一的恢复方法就是重启。对于您的特定应用,这可能会或可能不会;在任何情况下,这都可以用于调试。

然而,就像@Brad所表明的那样,你没有看到任何的最可能的原因是控制台输出被重定向。尝试不使用“永远”,“主管”,“屏幕”或您正在使用的任何其他流程包装器运行。