gpt4 book ai didi

javascript - 如何使用nestjs日志服务

转载 作者:IT老高 更新时间:2023-10-28 23:08:55 38 4
gpt4 key购买 nike

我尝试使用nestjs的内部Logger(描述于https://docs.nestjs.com/techniques/logger -> 但没有描述如何使用它)

但是我遇到了问题(尝试注入(inject)LoggerService等等)

谁能解释一下怎么做?

最佳答案

最佳实践

比访问 Logger 更好静态是为你的类创建一个实例:

@Controller()
export class AppController {
private readonly logger = new Logger(AppController.name);

@Get()
async get() {
this.logger.log('Getting stuff');
}
}

为什么这样更好?

  1. 您可以在构造函数中提供一个上下文,如 new Logger(AppController.name) 以便类名(或其他任何内容)将成为此类中所有日志消息的一部分。

  2. 如果您在某些时候想要扩展或替换默认的 LoggerService,除了设置新的记录器之外,您不需要更改任何应用程序代码。您的新记录器将自动使用。如果您静态访问它,它将继续采用默认实现。

const app = await NestFactory.create(AppModule, {logger: new MyLogger()});
  1. 您可以在测试中模拟 Logger:
module.useLogger(new NoOpLogger());

关于javascript - 如何使用nestjs日志服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52650895/

38 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com