Logging 如何使Winston每日轮换文件每周轮换
我正在为一个节点项目使用winston daily rotate文件。如何使日志文件每周轮换一次 根据 我们可以看到Logging 如何使Winston每日轮换文件每周轮换,logging,winston,Logging,Winston,我正在为一个节点项目使用winston daily rotate文件。如何使日志文件每周轮换一次 根据 我们可以看到 datePattern:“一个表示要用于旋转的文件的字符串。此字符串中使用的元字符将指示文件旋转的频率。例如,如果您的datePattern只是'HH',您将得到24个日志文件,这些文件每天都会被提取和附加。(默认值:'YYYY-MM-DD')” 为了回答您的问题,让日志文件每周循环的一个简单方法是设置datePattern:'YYYY-w',其中w是一年中的一周:12。。。52
datePattern
:“一个表示要用于旋转的文件的字符串。此字符串中使用的元字符将指示文件旋转的频率。例如,如果您的datePattern只是'HH',您将得到24个日志文件,这些文件每天都会被提取和附加。(默认值:'YYYY-MM-DD')”为了回答您的问题,让日志文件每周循环的一个简单方法是设置
datePattern:'YYYY-w'
,其中w
是一年中的一周:12。。。52 53. 有关datePattern的更多选项,请参见
下面显示了一个简单的用法
const winston = require('winston');
const DailyRotateFile = require('winston-daily-rotate-file');
var winston = require('winston');
require('winston-daily-rotate-file');
var transport = new winston.transports.DailyRotateFile({
filename: 'application-%DATE%.log',
datePattern: 'YYYY-w'
});
transport.on('rotate', function(oldFilename, newFilename) {
logger.info({'message':'New file created!'});
});
var logger = winston.createLogger({
level: 'info',
transports: [
transport
]
});
logger.info('Hello World!');
因此,日志文件的名称类似于application year week.log
例如,从2020年7月6日到2020年7月12日的一周是2020年的第28周。这意味着本周将创建文件
application-2020-28.log
,下周将创建文件application-2020-29.log
,等等。您可以从中计算一年中的哪一周