使用 MultiFile Appender 将日志动态写入多个文件,您的 log4js 配置将如下所示:
appenders: { integra: { type: 'multiFile', base: 'logs/', property: 'prop', extension: '.log'} },
在哪里 :
- base :生成的日志文件名的基本部分
- property : 用于分割文件的值
- extension :生成的日志文件名的后缀。
这是一个用于为每个用户创建日志文件的示例:
const log4js = require('log4js');
const uuidv1 = require('uuid/v1'); //used for generating random string
log4js.configure({
appenders: {
everything: {
type: 'multiFile', base: 'logs/', property: 'userID', extension: '.log'
}
},
categories: {
default: { appenders: [ 'everything' ], level: 'debug'}
}
});
const userLogger = log4js.getLogger('user');
userLogger.addContext('userID', uuidv1());
userLogger.info('New file created');
userLogger.addContext('userID', uuidv1());
userLogger.info('New file created');