Настраиваю логгер для сервера чата на ноде. Использую модуль winston.
Как видно в коде ниже уровень я указываю явно, но в логе он всеравно ERROR? Как исправить?
var winston = require('winston');
var logger = new (winston.Logger)({
transports: [
// настройки логгирования в консоль
new (winston.transports.Console)({
level: 'info', // тип логирования
timestamp: function() {
return moment().format("DD-MM-YYYY HH:mm:ss.SSS");
},
formatter: function(options) {
return '[TIMESTAMP:' + options.timestamp() +'] [LEVEL:'+ options.level.toUpperCase() +']'+ (undefined !== options.message ? " [MESSAGE:"+options.message+"]" : '') +
(options.meta && Object.keys(options.meta).length ? ' [META:'+ JSON.stringify(options.meta) +']' : '' );
}
}),
// настройки логгирования в файл
new (winston.transports.File)({
filename: './log/logfile_'+moment().format("YYYYMMDD")+'.log',
json: false,
level: 'info', // тип логирования
timestamp: function() {
return moment().format("DD-MM-YYYY HH:mm:ss.SSS");
},
formatter: function(options) {
return '[TIMESTAMP:' + options.timestamp() +'] [LEVEL:'+ options.level.toUpperCase() +']'+ (undefined !== options.message ? " [MESSAGE:"+options.message+"]" : '') +
(options.meta && Object.keys(options.meta).length ? ' [META:'+ JSON.stringify(options.meta) +']' : '' );
}
})
]
});
Результат:
[TIMESTAMP:14-02-2016 20:32:05.426] [LEVEL:ERROR] [MESSAGE:undefined Сервер чата готов и ждет подключения! Информация - %s:%d]
[TIMESTAMP:14-02-2016 20:32:05.536] [LEVEL:ERROR] [MESSAGE:undefined Подключение к MongoDB '%s' успешно установлено!]
И откуда перед текстом сообщения берется undefined я тоже хз (((