2015-04-16 4 views
0

Насколько я понял, у Winston есть иерархия на уровнях ведения журнала. Вы можете установить уровень с winston.level = 'error', и все уровни ниже не должны отображаться. К сожалению, я все еще получаю журналы информации и отладки, показанные на моей консоли.Уровень журнала winston/скрыть уровни журнала

Вопрос 1):

Как реально установить Winston, чтобы показать мне только уровень журнала

Вопрос 2)

Почему отладки в любом случае отображается в консоли, я настроил он должен появиться в файле журнала (что он дополнительно делает)

winston = require('winston') 
winston.emitErrs = true 
logger = new winston.Logger({ 
    transports: [ 
    new winston.transports.File({ 
     level: 'info' 
     filename: 'logs/log.log' 
     handleExceptions: true 
     json: true 
     maxsize: 5242880 #5MB 
     maxFiles: 5 
     colorize: false 
     timestamp: true 
    }), 
    new winston.transports.Console({ 
     level: 'debug' 
     handleExceptions: true 
     json: false 
     colorize: true 
    }) 
    ], 
    exitOnError: false 
}) 
winston.level = 'error' 

module.exports = logger 
module.exports.stream = { 
    write: (message, encoding) -> 
    logger.info(message) 
} 

Код в основном по этому адресу: http://tostring.it/2014/06/23/advanced-logging-with-nodejs/

ответ

0

Теперь у меня есть концепция. Он регистрирует все до уровня журнала в определенном транспорте. Таким образом, я думаю, что невозможно отлаживать отладку только для консоли и информации в журнале, не манипулируя порядком.

Это не журнал отладки в консоли:

new winston.transports.Console({ 
    level: 'info' 
    handleExceptions: true 
    json: false 
    colorize: true 
}) 

Моя первая предположение, что я могу указать транспорт для каждого уровня журнала, а затем решить, сколько каротаж я хочу иметь с: winston.setLevels(winston.config.syslog.levels)

например error to mongoDb info to log.log file Отладка для консоли

 Смежные вопросы

  • Нет связанных вопросов^_^