Nest 如何打印日志

使用内置的 Logger

创建项目:

bash 复制代码
nest new logger-test -p npm

进入目录执行 nest run start:dev 启动服务。

服务启动后, Nest 会打印这些日志:

new Logger 之后就可以使用它的实例方法:

浏览器访问,控制台打印出的日志:

log、warn、error、verbose、debug 就是日志级别,[云牧牧] 中是当前所在上下文 context,最后的是内容。

日志可以在创建应用的时候指定开启或自己决定输出什么级别的日志:

自定义日志打印

my-logger.service.ts,在这个文件中实现 LoggerService 接口:

指定自定义 logger:

项目启动后,日志是这样的:

访问 localhost:3000:

注入依赖

因为上面是我们手动 new 的对象,没法注入依赖,这样做:

bufferLogs 就是先不打印日志,把它放到 buffer 缓冲区。 这里通过 app.get(MyLoggerService) 获取 MyLoggerService 的实例,设置为应用使用日志。

注入依赖:

AppModule 里引入:

打印的日志,证明成功注入了依赖:

我们还可以把自定义 Logger 封装为全局模块或动态模块,根据情况自行选择即可。

相关推荐
952367 分钟前
SpringBoot统一功能处理
java·spring boot·后端
light blue bird13 分钟前
主子端台二分法任务汇总组件
前端·数据库·.net·桌面端winform
rleS IONS29 分钟前
SpringBoot中自定义Starter
java·spring boot·后端
DevilSeagull1 小时前
MySQL(2) 客户端工具和建库
开发语言·数据库·后端·mysql·服务
jeffwang1 小时前
我做了个让 AI 看屏幕跑测试的工具,因为 Playwright 测不了我的 Flutter Web
前端
HSunR2 小时前
dify 搭建ai作业批改流
开发语言·前端·javascript
代码不加糖2 小时前
2026 跨境电商独立站实战:从 0 到 1 搭建高转化 SaaS 商城(附源码)
开发语言·前端·javascript
TeDi TIVE2 小时前
springboot和springframework版本依赖关系
java·spring boot·后端
雨辰AI2 小时前
SpringBoot3 + 人大金仓 V9 微服务监控实战|Prometheus+Grafana+SkyWalking 全链路监控
数据库·后端·微服务·grafana·prometheus·skywalking
亲亲小宝宝鸭2 小时前
拖一拖控件,拖出个问卷(低代码平台)
前端·低代码