【发布时间】:2019-10-18 05:20:24
【问题描述】:
我有一个 node.js 应用程序。我需要在这个程序中记录每个事件,为此我使用 winston 库。我正在尝试为每天创建一个日志文件。所有的日志都应该每天分开。我想将日常文件保存在我的桌面上。例如,我今天所做的请求(我的程序中的操作)将在我的桌面上保存为 18/10/2019.log。明天当我再次执行一些请求(例如:获取、发布)时,应该再次在桌面上记录为 19/10/2019.log。我不能这样做。有什么建议吗?
编辑:已解决!!
使用winston-daily-rotate-file,它可以解决。要使用该模块:
npm install winston-daily-rotate-file
代码:
require('winston-daily-rotate-file');
const logDir= 'C://Users/Desktop/LogFiles';
var options = {
file: {
level:'info',
filename: path.resolve(`${logDir}/${new
Date().getFullYear().toString()} - ${new Date().getMonth()+1}/%DATE%.log`),
datePattern: 'YYYY-MM-DD',
timestamp: new Date()
};
let logger = winston.createLogger({
level:'info',
format: winston.format.combine(
winston.format.printf(info => { return `${info.timestamp} ||
${info.level} || Message: ${info.message}`; })
),
transports: [
new winston.transports.DailyRotateFile(options.file)
],
exitOnError: false,
});
【问题讨论】:
-
尝试使用设置的日志文件的每日附加程序
-
我不明白如何
-
在bolow链接stackoverflow.com/questions/45479473/…中解决这个问题
标签: javascript node.js express logging winston