Node.js Nodejs winston日志记录端口514文件夹/yyyy/mm/dd/.log

Node.js Nodejs winston日志记录端口514文件夹/yyyy/mm/dd/.log,node.js,Node.js,嗨,我想用nodejs winston记录514 udp端口。我想用相同的日志名和不同的文件夹保存所有日志日志。示例/listen/2019/11/04/test.log第二天/listen/2019/11/05/test.log。我尝试了,但只保存了1个日期,当日期更改时,日志地址不会更改 var winston = require('winston'); var d = new Date(); var year = d.getFullYear(); var month = (d.getMon

嗨,我想用nodejs winston记录514 udp端口。我想用相同的日志名和不同的文件夹保存所有日志日志。示例/listen/2019/11/04/test.log第二天/listen/2019/11/05/test.log。我尝试了,但只保存了1个日期,当日期更改时,日志地址不会更改

var winston = require('winston');
var d = new Date();
var year = d.getFullYear();
var month = (d.getMonth() + 1) ;
var day = d.getDate();
var n = d.getMinutes();
var shell = require('shelljs');
shell.mkdir('-p', '/listen/test/'+year+'/'+month+'/'+day);

var logger = winston.createLogger({
  level: 'info',
  format: winston.format.simple(),
  defaultMeta: { service: 'user-service' },
  transports: [

    new winston.transports.File({ filename: 'error.log', level: 'error' }),
    new winston.transports.File({ filename: '/listen/test/'+year+'/'+month+'/'+day+'/test.log' })
  ]
});

var PORT = 514;
var HOST = '0.0.0.0';
var dgram = require('dgram');
var server = dgram.createSocket('udp4');
server.bind(PORT, HOST);

server.on('listening', function () {
    var address = server.address();
    console.log('UDP Server listening on ' + address.address + ":" + address.port);
});

server.on('message', function (message, remote) {
      logger.info(message);
});

文件
因为传输不旋转。您需要使用
DailyRotateFile
这是一个附加模块: