2013-07-31 4 views
18

をコンソールにプリティプリントされていません。ウィンストンは、私はウィンストンはかなりコンソールに印刷するために取得しようとしているので、私はファイルでこれを立ち往生し、ノードでそれを実行した

var winston = require('winston'); 
winston.cli(); 
winston.data({ 
    a: "test", 
    of: "many", 
    properties: { 
    like: "this" 
    } 
}); 
winston.data('data', { 
    a: "test", 
    of: "many", 
    properties: { 
    like: "this" 
    } 
}); 

バック吐くターミナル以下の(正確にきれいではありません)メッセージ:

data:  a=test, of=many, like=this 
data: data a=test, of=many, like=this 

すると、私は(「CLIツールの使い方ウィンストン」)Winston Readmeの指示に従ってています。私は何かを誤読していますか?どこかで設定がありませんか?

答えて

25

答えを見つけました(ドキュメントが間違っています)。コンストラクターを使用し、手動でトランスポートを追加する場合は、winstonと個々のトランスポートの両方のオプションを設定できます。 winstonにはあるオプションを直接追加する必要がありますが、他のオプションは移送に追加する必要があります。

例えば:

var winston = require('winston'); 
var logger = new (winston.Logger)({ 
    levels: { 
    trace: 0, 
    input: 1, 
    verbose: 2, 
    prompt: 3, 
    debug: 4, 
    info: 5, 
    data: 6, 
    help: 7, 
    warn: 8, 
    error: 9 
    }, 
    colors: { 
    trace: 'magenta', 
    input: 'grey', 
    verbose: 'cyan', 
    prompt: 'grey', 
    debug: 'blue', 
    info: 'green', 
    data: 'grey', 
    help: 'cyan', 
    warn: 'yellow', 
    error: 'red' 
    } 
}); 

logger.add(winston.transports.Console, { 
    level: 'trace', 
    prettyPrint: true, 
    colorize: true, 
    silent: false, 
    timestamp: false 
}); 

logger.add(winston.transports.File, { 
    prettyPrint: false, 
    level: 'info', 
    silent: false, 
    colorize: true, 
    timestamp: true, 
    filename: './nKindler.log', 
    maxsize: 40000, 
    maxFiles: 10, 
    json: false 
}); 
+6

は、レベルの数字が逆の順序ですべきではない色だ

const winston = require("winston"); let date = new Date().toISOString(); const logFormat = winston.format.printf(function(info) { return '${date}-${info.level}: ${JSON.stringify(info.message, null, 4)}\n'; }); const logger = new winston.createLogger({ transports: [ new winston.transports.Console({ level: level, format: winston.format.combine(winston.format.colorize(), logFormat) }) ] }); 

ログは次の形式を持っているのだろうか?例えば。エラー= 0、トレース= 9 https://github.com/winstonjs/winston#logging-levels – Lukas

+0

これはカスタムフォーマッタでは機能しません。 – theusguy

2

私はpartycoderの答え@取り、ウィンストンが付属して、デフォルトのログレベルを使用するためにそれをトリミング。また、エラーの順序を逆にしません。 0 =最高の優先順位。

0

[email protected]を使用している場合、受け入れられた回答は機能しません。試してみてください次:ところで

2018-03-01T19:49:54.042Z-info: "----- Customer Details ------" 

2018-03-01T19:49:54.042Z-info: [ 
    { 
     "A": 1, 
     "B": 2 
    } 
] 
関連する問題