【问题标题】:NestJS in Express mode - log all incoming requests快速模式下的 NestJS - 记录所有传入请求
【发布时间】:2021-06-11 11:56:01
【问题描述】:

FastifyAdapter logger 非常有助于记录所有传入的请求:

{"level":30,"time":1615660286373,"pid":4,"hostname":"6bc78f92-9bd6-4dfb-bd11-ae4c17a67f7c","reqId":19,"res":{"statusCode":304},"responseTime":6.005196988582611,"msg":"request completed"}

这就是我在 Fastify 模式/适配器中使用它的方式:

const app = await NestFactory.create<NestFastifyApplication>(
   AppModule,
   new FastifyAdapter({logger: true})
)

在 Express 模式/适配器中是否有类似的东西?理想情况下无需编写自定义日志记录逻辑。毕竟,这看起来是一个很常见的功能。

我检查了ExpressAdapter 来源,但似乎根本没有提到“日志”。

【问题讨论】:

    标签: express nestjs


    【解决方案1】:

    我不这么认为。如果你需要这个功能,你应该安装 fastify 使用的 logger:pinopino-http 来自己启用它。或者只是使用nestjs-pino(它会为你做这件事)

    【讨论】:

      【解决方案2】:

      为了补充 Micael 的答案,有一个名为 morgan 的 Express 中间件可以做到这一点,如果你愿意接受不同记录器的想法,我自己的名为 Ogma 的中间件有一个模仿 Nest 的拦截器这个逻辑。

      【讨论】:

        猜你喜欢
        • 2019-06-11
        • 2020-02-10
        • 2014-04-09
        • 1970-01-01
        • 1970-01-01
        • 2021-09-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多