如何在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类,如果重要但不使用任何其他特殊的东西。
答案 0 :(得分:1)
虽然我同意@Brad我从未见过这样的行为,但一般来说,如果你正在调试一个NodeJS程序并想知道是什么导致它被杀死,你可以使用这样的结构:
process.on('uncaughtException', function(err) {
console.log(err);
});
在你的剧本中。
请注意,很多人认为你不应该在生产中使用这样的构造,因为未捕获的异常通常表明你遇到了如此严重和意外的错误,唯一的恢复方法就是重启。对于您的特定应用,这可能会或可能不会;在任何情况下,这都可以用于调试。
然而,就像@Brad所表明的那样,你没有看到任何的最可能的原因是控制台输出被重定向。尝试不使用“永远”,“主管”,“屏幕”或您正在使用的任何其他流程包装器运行。