从零开始搭建nestjs项目-2-日志管理(winston)

工具版本

  1. nodejs:20.9.0
  2. npm:10.1.0
  3. nestjs:10.0.0

安装相关包

pnpm i winston nest-winston winston-daily-rotate-file

配置日志

日志配置会用到环境变量,具体怎么请参考从零开始搭建nestjs项目-1-环境配置 - 掘金 (juejin.cn)

新建日志的配置文件(/src/config/log.config.ts):

import { WinstonModuleOptions } from "nest-winston"
import { transports, format } from "winston";

const env = process.env.NODE_ENV || 'development'
import "winston-daily-rotate-file";

export const winstonModuleOptions: WinstonModuleOptions = {
    transports: (() => {
        //开发环境下输出到控制台
        if (env === 'development') {
            return [new transports.Console()]
        }

        if (env === 'production') {
            return [
                // 记录错误日志
                new transports.DailyRotateFile({
                    level: "error",
                    dirname: `logs/errors`,
                    filename: `%DATE%-error.log`,
                    datePattern: "YYYY-MM-DD",
                    maxSize: "20m"
                }),
                new transports.DailyRotateFile({
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值