2017-11-06 22 views
0

나는 데이터를 기록하기 위해 bunyan을 사용했습니다. 로그에 적색, 디버그, 노란색 등의 적절한 색상으로 로그를 인쇄하고 싶었습니다. 불행하게도 나는 그렇게 할 수 없었다. 그리고 지금은 윈스턴과 가능한지 알고 싶습니다. winston에서 로그 데이터의 색상을 변경할 수 있습니까?winston의 로그 데이터 색상을 변경할 수 있습니까?

여기에 제가 수행 한 코드가 있습니다.

var logger = require("winston-color"); 
    var winston = require('winston'); 
    var util = require('util'); 

    var logFilename = __dirname + '/logfile.log'; 

    var logger = new (winston.Logger)({ 
    transports: [ 
     new (winston.transports.Console)(), 
     new (winston.transports.File)({ 
     filename: 'logfile.log', 
     timestamp:true 
    }), 
     new (winston.transports.File)({ 
     name: 'error-log', 
     filename: 'error.log', 
     level: 'error' 
     }), 

    new (winston.transports.File)({ 
    name: 'info-log', 
    filename: 'info.log', 
    level: 'info' 
    }), 
    ] 
    }); 
    logger.info('Hello Winston info!'); 
    logger.debug('Hello Winston debug!'); 
    logger.warn('Hello Winston warn!'); 
    logger.info('Hello again distributed logs'); 
    logger.error('error1'); 
    logger.error('error2'); 

출력 화면이 나는이 시도하지 않은 here

+0

작업을 수행하는 [winston-color] (https://www.npmjs.com/package/winston-color) 패키지가 있습니까? – zcui93

+0

작동하지 않았습니다! 그것은 밖으로 일반 흰색으로 넣어 보여줍니다! – srujana

+0

코드를 살펴보면,'logger'를 다시 기본으로 설정 한 것처럼 느껴 집니까? – zcui93

답변

0

여기에 코드의 출력 작업

here 촬영. 그러나 이것에 따라 로그에 색상을 사용합니다. enter link description here

+0

빠른 응답을 보내 주셔서 감사합니다. 나는 그것을 시도했다. 하지만 특정 수준의 전체 로그 데이터가 색상이어야합니다. – srujana

0

가능합니다. 내 프로젝트에서 사용중인 다음 코드를 사용할 수 있습니다.

로거/WinstonPlugin.js

언제
/* jslint node: true */ 
/* jshint esversion: 6 */ 

'use strict'; 
const Winston = require('winston'); 
const logLevel = 'debug'; 

var logger; 

(function createLogger() { 

    logger = new(Winston.Logger)({ 
     transports: [ 
      new(Winston.transports.Console)({ 
       level: logLevel, 
       colorize: true, 
       timestamp: function() { 
        return (new Date()).toLocaleTimeString(); 
       }, 
       prettyPrint: true 
      }) 
     ] 
    }); 

    Winston.addColors({ 
     error: 'red', 
     warn: 'yellow', 
     info: 'cyan', 
     debug: 'green' 
    }); 
})(); 

module.exports = logger; 

그리고 당신은 당신의 코드 파일에있는 윈스턴이 필요했다. 다음과 같이 액세스 할 수 있습니다.

그러면 콘솔에 컬러 출력이 표시됩니다.