带有Socket IO的Node JS Winston Logger没有输出调试

时间:2015-06-04 16:00:40

标签: node.js debugging logging socket.io winston

我正在尝试将node.js / socket.io项目的winston日志记录输出logger.debug用于我正在进行的工作但是我无法让调试显示在控制台。

我使用以下命令创建记录器:

var logger = new (winston.Logger)({
    transports: [
        new (winston.transports.Console)()
        ]
    });

在连接时,我试图让调试说它已连接

io.on('connection', function (socket) {

    socket.emit('init','init-yes');

    logger.debug("Socket.on has connected");
    logger.log('debug', 'This is the debug');

    ...

但控制台中没有任何内容。我检查了git page,但似乎仍然没有理解。

修改 正如所建议的那样,我将记录器创建更新为:

var logger = new winston.Logger({
  transports: [
    new winston.transports.Console({ level : 'debug' })
  ]
});

但是我仍然没有得到logger.debug("此处有消息")才能正常工作。

非常感谢任何帮助。谢谢你的时间!

1 个答案:

答案 0 :(得分:2)

fine manual州:“请注意,传输的默认级别为info

由于您没有为传输设置日志级别,因此任何级别低于info(如debug)的邮件都不会显示。

解决此问题:

var logger = new winston.Logger({
  transports: [
    new winston.transports.Console({ level : 'debug' })
  ]
});