Winston Nodejs中的内存泄漏问题

Pun*_*rma 5 logging node.js winston

我创建了一个温斯顿记录器服务,并使用温斯顿 DailyRotateFile 在 NODEJS 的不同控制器中使用相同的服务。

var transport = new (winston.transports.DailyRotateFile)({
  filename: 'application-%DATE%.log',
  dirname: './logs',
  datePattern: 'YYYY-MM-DD-HH',
  zippedArchive: true,
  maxSize: '10m',
  maxFiles: '14d'
});
Run Code Online (Sandbox Code Playgroud)

并在winston.createLogger中使用相同的传输

switch ((process.env.NODE_ENV || '').toLowerCase()) {
  case 'production':
    production = true;
    logger = winston.createLogger({
      transports: [
        transport
      ],
      format: combine(
        label({ label: 'UTILITY_SERVICE' }),
        timestamp(),
        myFormat
      ),
      exitOnError: false, // do not exit on handled exceptions
    })
    break;
  case 'test':
    // Don't set up the logger overrides
    return;
  default:
    logger = winston.createLogger({
      transports: [
        new winston.transports.Console(),
        transport
      ],
      format: combine(
        label({ label: 'UTILITY_SERVICE' }),
        timestamp(),
        myFormat
      ),
      exitOnError: false, // do not exit on handled exceptions
    })
    break;
}

module.exports = logger;
Run Code Online (Sandbox Code Playgroud)

但是在控制器中使用winston之后,它的内存大小变得非常高。

在此输入图像描述

winston本身是否存在内存泄漏。