nodejs log4js 按日期目录写文件

log4js.configure

log4js.configure({
    replaceConsole: true,
    appenders: {
        cheese: {
            // 设置类型为 dateFile
            type: 'dateFile',
            // 配置文件名为 myLog.log
            filename: 'logs/myLog.log',
            // 指定编码格式为 utf-8
            encoding: 'utf-8',
            // 配置 layout,此处使用自定义模式 pattern
            layout: {
                type: "pattern",
                // 配置模式,下面会有介绍
                pattern: '{"date":"%d","level":"%p","category":"%c","host":"%h","pid":"%z","data":\'%m\'}'
            },
            // 日志文件按日期(天)切割
            pattern: "-yyyy-MM-dd",
            // 回滚旧的日志文件时,保证以 .log 结尾 (只有在 alwaysIncludePattern 为 false 生效)
            keepFileExt: true,
            // 输出的日志文件名是都始终包含 pattern 日期结尾
            alwaysIncludePattern: true,
        },
    },
    categories: {
        // 设置默认的 categories
        default: {appenders: ['cheese'], level: 'debug'},
    }
});

这时候已经定义好了 要写入的目录

问题出现的环境背景及自己尝试过哪些方法

后来想到修改 filename 目录 为

filename: logs/${new Date().getDate()}/info.log,

你期待的结果是什么?

每次写入日志的时候 获取 当前日期

logs/20190826/info.log
阅读 7.8k
1 个回答
新手上路,请多包涵

没看明白啥意思,一般都这么整

clipboard.png

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题