如何为重定向到winston的socket.io日志添加前缀?

bed*_*rom 2 node.js socket.io winston

在我的node.js应用程序中,我成功地将socket.io库生成的日志消息重定向到winston库:

var express = require('express')
  , winston = require('winston')
  , http = require('http');
var logger = new (winston.Logger)({
  transports: [
    // ... configuring transports ...
  ]
});
var app = express();
var server = http.createServer(app);
var io = require('socket.io').listen(server, {'logger': logger});
Run Code Online (Sandbox Code Playgroud)

现在我想为所有这些重定向消息添加一个前缀(类似"socket.io:"),以区别于应用程序其他部分生成的日志消息.有没有办法如何实现这一目标?

vin*_*ayr 5

在记录器传输中添加标签.

var logger = new (winston.Logger)({
  transports: [
    new (winston.transports.Console)({
      json : false,
      timestamp : true,
      label: "socket.io:"
    })
  ]
});
Run Code Online (Sandbox Code Playgroud)

日志消息将如下所示 -

2013-08-30T08:26:52.703Z - info: [socket.io:] socket.io started
2013-08-30T08:26:52.705Z - info: [socket.io:] hello
Run Code Online (Sandbox Code Playgroud)

使用winston检查更多日志记录选项 - https://github.com/flatiron/winston