12

这应该很简单,但我找不到将时间戳添加到 node.js 错误日志的方法。我不是在谈论 console.* 的输出,而是由异常发出的错误。

我永远运行我的应用程序,它将错误输出到单独的日志中,我无法确定错误何时发生 - 这就是我想添加时间戳的原因。

有人可以指出我正确的方向吗?

4

1 回答 1

15

您是在谈论未处理的异常吗?

process.on('uncaughtException', function (e) {
  console.log(new Date().toString(), e.stack || e);
  process.exit(1);
});

当然,您将有更好的时间使用诸如momentjs之类的东西来解析日期

对于您自己处理的异常,请使用诸如winston之类的日志库,它允许您选择一种格式。

更新

看看节点文档怎么说

不要将其用作 On Error Resume Next 的 node.js 等效项。未处理的异常意味着您的应用程序 - 以及扩展的 node.js 本身 - 处于未定义状态。盲目恢复意味着任何事情都可能发生。

于 2013-12-10T22:04:23.743 回答