2013-07-19 149 views

回答

5

我遇到了同樣的問題。

至少有一些選項可以在函數Transport.prototype.normalizeQuery的Winston's transport.js中找到。

這裏有一個簡單的總結:

options.rows,options.limit =多少的成績來回報。默認爲 10;

options.start =起始行偏移。默認爲0

options.from =日期字符串或日期對象的起始限制。 現在默認爲-24小時

options.until =用於結束限制的日期字符串或日期對象。默認 現在是

options.order ='asc'或'desc'的順序。默認爲'desc'

options.fields =要返回的字段。默認值是undefined(其中 全部返回)

3

以下是查詢文件記錄器+可用選項的示例。主要缺點(IMO)缺乏過濾。最有用的功能將按級別過濾,但唉...

"use strict"; 

var logFilename = __dirname + '/log/2014-02-24.log'; 

var winston = require('winston'); 
var logger = new (winston.Logger)({ 
    transports: [ 
     new (winston.transports.File)({ 
      filename: logFilename, 
      timestamp: true 
     }) 
    ] 
}); 

var options = { 
    from: new Date - 24 * 60 * 60 * 1000, 
    until: new Date, 
    limit: 10, 
    start: 0, 
    order: 'asc', 
    fields: ['message'] 
}; 
logger.query(options, function (err, result) { 
    if (err) { 
     throw err; 
    } 

    console.log(result); 
}); 

P.S.順便說一句,這裏是關於查詢日誌的open issue