2015-01-12 2 views
0

Не эксперт узла, и это первый раз, когда я использую log4js -node.log4js-node в nodejs не регистрируется в файле

Я пытаюсь получить журналы ERROR и любой из моих консольных журналов для записи в файл log_file.log с log4js на сервере nodejs, на котором выполняется Express. Вот мой конфигурационный файл: `

{ 
    "replaceConsole": true, 
    "appenders": [ 
    { 
    "type": "file", 
    "filename":"log_file.log", 
    "maxLogSize":20480, 
    "backups": 3, 
    "category":"relative-logger" 
    }, 
    { 
    "type":"logLevelFilter", 
    "level":"ERROR", 
    "appender":{ 
    "type":"file", 
    "filename":"log_file.log" 
    } 
    }, 
    { 

    "appender": { 
     "type": "smtp", 
     "recipients": "[email protected]", 
     "sender": "[email protected]", 
     "sendInterval": 60, 
     "transport": "SMTP", 
     "SMTP": { 
     "host": "localhost", 
     "port": 25 
     } 
    } 
    }] 
}` 

А вот как я требую приложений в моем app.js файла:

var log4js = require("log4js"); 
log4js.configure("log_config.json") 
logger = log4js.getLogger(); 

Я посылаю вручную ошибки в log4js с этим (I может получить это войти в консоли штраф, просто не может получить LOG_FILE письменный):

logger.error('A mandrill error occurred: ' + e.name + ' - ' + e.message); 

И я надеюсь, что jog4js ловит нормальные сообщения об ошибках приложения.

Как я могу получить log4js для входа в log_file.log, они отправляют мне электронное письмо этого журнала? Я установил nodemailer 0.7, fyi, чтобы обрабатывать smtp.

+0

Как предлагает Allenzzzxd, удалите «категорию». Во всяком случае, это решило проблему. Если я не ошибаюсь, категория предназначена для тех случаев, когда вы хотите выбрать различные механизмы ведения журналов для разных случаев, поэтому вы можете сделать log4js.getLogger () .log () или тому подобное. –

ответ

1

Возможно, вы можете удалить "category":"relative-logger" в свой файл appender.

+3

Пожалуйста, уточните, почему это может решить проблему, отредактировав свой ответ. –

+0

Спасибо за подсказку. У меня была та же проблема, я попытался удалить «категорию», и для меня она решила ту же проблему. –

0

Да удалить «категорию»: «относительный-регистратор» это как-то блокирует передачу данных в файл журнала .. Или попробовать что-то вроде этого:

// Setup Logging 
 
log4js.configure({ 
 
    appenders: [ 
 
     { type: 'console' }, 
 
     { type: 'file', filename: '.\\logs\\PesaFastaArchiveData.log' } 
 
    ] 
 
});

Путь из -курс оконного пути.

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