如何在 Node 中获取错误报告?我正在运行 v0.6.15(使用简单的 osx 安装 DMG),每当出现错误时,比如说我尝试使用 undefined variable ,该过程就会停止,并且没有任何指示说明原因。
我想我正在寻找 PHP 的 error_reporting(E_ALL) 的 Node 版本;
有什么建议吗?
==编辑==
奇怪...好吧...所以我注意到我在运行的文件中得到了很好的错误,但在我“需要”的文件中却没有得到错误
我正在运行的文件只有这个代码
process.on('uncaughtException', function(err) {
console.log(err);
});
var ImageProcessor = require('./ImageProcessor').ImageProcessor;
var imageProcessor = new ImageProcessor();
imageProcessor.imageRequestEnd();
imageProcessor 是一个 mootools 类(如果这很重要),但没有使用任何其他特殊的东西。
最佳答案
虽然我同意@Brad的观点,即我从未见过这种行为,但一般来说,如果您正在调试 NodeJS 程序并想知道是什么导致它被杀死,您可以使用如下构造:
process.on('uncaughtException', function(err) {
console.log(err);
});
在你的脚本中。
请注意,许多人认为您不应该在生产中使用此类构造,因为未捕获的异常通常表明您遇到了严重且意外的错误,以至于恢复的唯一方法是重新启动。对于您的特定应用程序来说,这可能成立,也可能不成立;无论如何,这对于调试很有用。
但是,就像@Brad 指出的那样,您看不到任何东西的最可能原因是控制台输出以某种方式被重定向。尝试在不使用“forever”、“supervisor”、“screen”或您正在使用的任何其他进程包装器的情况下运行。
关于node.js - 如何在 Node.js 中查看警告和错误消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10338034/