Node.js / winston - 我可以附加日志吗?

Node.js / winston - Can I append log?

我使用 winston.log 来附加日志文件。每次我重新启动我的应用程序时,都会删除现有日志,并创建新日志。

有什么方法可以附加日志文件吗?所以它只会在轮换规则中删除?

相关代码如下:

    var winston = require('winston');
    var loggerNoCache = new(winston.Logger)({
        transports: [
            new(winston.transports.File)({
                filename: '/var/log/logNo.log',
                options: {
                    highWaterMark: 32
                }
            })
        ]
    });

您可以通过 stream 属性 传递可追加的 WriteableStream,也许类似于:

new(winston.transports.File)({
  stream: fs.createWriteStream('/var/log/logNo.log', {flags: 'a'}),
  options: {
    ...

winston 中流的最新解决方案:

new winston.transports.Stream({
  stream: fs.createWriteStream('/var/log/logNo.log', {flags: 'a'}),
  level: fileLoggingLevel
}));