1

我见过这个问题: Logging in express js to a output file?

但是在阅读了关于logger中间件的文档之后,仍然不确定如何真正将访问日志与错误日志分开,以便访问日志仅包含 url 访问数据,而错误日志仅包含错误。

有没有办法做到这一点?

4

1 回答 1

3

内置的连接记录器专用于一个目的:记录有关传入 HTTP 请求的基本详细信息。您可以使用配置参数控制日志消息的确切格式,但从根本上说,中间件是用于记录请求的,例如 access.log。要记录错误并将它们转到单独的文件中,您需要编写一个带有 . 签名的错误处理中间件(error, req, res, next)。您可以将其连接起来app.use并将您的错误写入文件或stderr按您的意愿写入。要从您的正常路由或中间件触发它,只需将一个Error实例传递给next(error)回调。

于 2012-11-16T06:16:34.340 回答