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

标签 node.js error-handling

如何在 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/

相关文章:

node.js - 非常慢(~1000ms)的响应时间。英雄联盟。 Node .js。蒙古实验室。几乎什么都不做

javascript - 无法从 Web 应用程序的 MongoDB 数据库获取数据

django - Django : Error 'str' object has no attribute 'get' when populating model with csv file

mysql - Node.js 服务器(移动客户端)

javascript - POST 请求中的测试和 stub 参数

javascript - 引用错误 : window is not defined in React

node.js - 改进 Mongoose 验证错误处理

flex3 - 如何在Flex 3中通过HTTP请求传递错误信息?

r - 如何在R中用超时重启eval的循环?

function - 如果失败,我如何从python中的函数返回值