мы используем morgan
для того, чтобы войти наш экспресс-преобразование:Node.js - регистрация/Использование морган и Winston
var morgan = require('morgan');
morgan('combined');
// a format string
morgan(':remote-addr :method :url :uuid');
// a custom function
morgan(function (req, res) {
return req.method + ' ' + req.url + ' ' + req.uuid;
})
Кроме того, мы используем winston
для того, чтобы войти наше другое протоколирование:
var winston = require('winston');
var logger = new (winston.Logger)({
transports: [
new (winston.transports.Console)({ level: 'info' }),
new (winston.transports.File)({ filename: '/var/log/log-file.log' })
]
});
Есть ли способ объединить два регистратора? ситуация в том, что morgan
пишет на мой стандартный вывод, когда winston
пишет в /var/log/log-file.log
.
Я хочу, чтобы файл регистратора будет сочетать с информацией экспресс-преобразования, а с другой информации, которую я хочу (logger.info()
) ..
Можем ли мы использовать метку времени в этом процессе? – theChinmay
@ theChinmay да, просто добавьте 'timestamp: true' в объект' Console' или 'File' – Skam
Не похоже, что необходимо переопределить logger.stream .. В моем случае я смог выполнить' app. use (morgan («комбинированный», {поток: {write: message => logger.info (message)}})); ' –