按照文档介绍numBackups是允许的旧日志文件数量,实际使用中,确实有些配置是按这个定义表现的,但是也存在没有按这个定义表现的,我看了半天没有发现有什么区别,奇怪了。不知道是log4js的bug还是怎样,看看下面这段示例代码:
const log4js = require('log4js');
log4js.configure({
appenders: {
Test: {
type: "dateFile",
filename: "logs/test.log",
pattern: 'yyyy-MM-dd',
alwaysIncludePattern: true,
keepFileExt:true,
numBackups: 2,
layout: { type: "pattern", pattern: "%d %p %c %m%n" },
},
},
categories: { default: { appenders: ["Test"], level: "info" }, },
});
var logger = log4js.getLogger("Test");
logger.info("记录一下")
按说logs/下最多存在3个test.yyyy-MM-dd.log的文件,但是似乎并没有受到限制,旧的文件并没有被删除掉。记录下备忘,node版本v20.12.0 LTS log4js版本6.9.1。