查询winston日志返回空结果

我有一个非常基本的快递应用程序。 我没有任何configuration添加winston 。 我创build这样的日志消息:

require('winston').info('App started'); 

所有的日志消息进入app.out.log 。 当我进入我看到的文件

 info: App started 

所以使用Winston的默认日志似乎工作正常。 现在我想使用Winston的查询api:

 require('winston').query({}, function(err, results) { if (err) { res.status(400).json(err); } else { res.json(results); } }); 

但结果是空的。 该文件说:

Winston支持使用类似Loggly的选项来查询日志。 请参阅Loggly Search API。 具体来说:File,Couchdb,Redis,Loggly,Nssocket和Http。

因为默认的传输是文件我希望结果不是空的。 任何想法什么是错的?

默认情况下,Winston只使用ConsoleTransport。 所以,如果你想查询一个日志文件,你必须添加适当的传输(在这个例子中是使用文件传输)。

有一个小例子:

 var winston = require('winston'); winston.add(winston.transports.File, { filename: 'app.out.log' }); winston.info('App started'); winston.query({}, function(err, results) { if (err) { res.status(400).json(err); } else { res.json(results); } });