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 封装为全局模块或动态模块,根据情况自行选择即可。

相关推荐
jiayong2312 小时前
第 33 课:任务看板视图(按状态分列)与本地持久化
开发语言·前端·javascript·学习
GISer_Jing13 小时前
Dify可视化编排:技术架构与实战指南
前端·人工智能·ai编程
宇宙realman_99913 小时前
DSP28335-FlashAPI使用
linux·前端·python
skiy13 小时前
Spring之DataSource配置
java·后端·spring
踩着两条虫13 小时前
VTJ 平台六大设计模式落地实战指南
开发语言·前端·人工智能·低代码·设计模式·重构·架构
Yeats_Liao13 小时前
后台 Sidebar 伸缩交互(PC + 移动端)实现
前端·javascript·css·html5
MXN_小南学前端13 小时前
computed 计算属性详解:触发时机、实战场景、Vue2 与 Vue3 对比
前端·javascript·vue.js
isNotNullX13 小时前
数据大屏怎么做?数据大屏有哪四个核心环节
开发语言·前端·javascript
漫游的渔夫14 小时前
RAG 落地 3 个月,我才发现排序(Rerank)比检索更重要
前端·人工智能
mldlds14 小时前
SpringBoot项目如何导入外部jar包:详细指南
spring boot·后端·jar