如何向 winston 节点模块的记录器添加回调?

how to add callback to logger of winston node module?

我正在使用 winston 节点模块(here)。

var path = '/logs/mylog.log'
var logger = new(winston.Logger)({
  transports: [
    new (winston.transports.Console)(),
    new (winston.transports.File)({ filename: path})
  ]
});

我的问题是,我想在保存此文件后立即进行一些编码,但我不知道如何添加将在保存日志文件后立即执行的回调函数。 我尝试这样做:

var logger = new(winston.Logger)({
  transports: [
    new (winston.transports.Console)(),
    new (winston.transports.File)({ filename: path},function(){

    })
  ]
});

但什么也没有发生。 谁能帮帮我?

您可以为此使用 logging 事件:

logger.on('logging', function(transport) {
  // check if this was the `File` transport
  if (transport.name === 'file') {
    console.log('logged a message to', transport.filename);
  }
});