У меня есть два различных лесорубов Winston, которые выглядят, как это (есть два отдельных из них, как они пишут различные журналы в зависимости от своих функций) -:Winston регистратор для записи в два файла
var security = new(winston.Logger)({
transports: [
new(require('winston-daily-rotate-file'))({
filename: logDir + '/-security.log',
datePattern: 'dd-MM-yyyy',
prepend: true,
json: false,
timestamp: function() {
return moment().format('D/MM/YYYY HH:mm:ss:SSS');
}
})
]
});
И тогда я один еще:
var system = new(winston.Logger)({
transports: [
new(require('winston-daily-rotate-file'))({
filename: logDir + '/-security.log',
datePattern: 'dd-MM-yyyy',
prepend: true,
json: false,
timestamp: function() {
return moment().format('D/MM/YYYY HH:mm:ss:SSS');
}
})
]
});
Тем не менее, у меня также есть verbose.log
файл, в котором я хочу все журналы из файла журнала безопасности и системы должны быть записаны в многословным тоже. Каков наилучший способ сделать это?
Я попытался добавить имя файла (т.е. verbose.log) к каждому из транспортов, но это не работает, как я получаю ошибку
Error: Transport already attached: dailyRotateFile, assign a different name
Хорошая идея ... так так я позволяю два разных журналов, чтобы сохранить тот же файл. Тем не менее, я хочу иметь возможность сохранять отдельные события журнала в безопасности и в файлах системного журнала отдельно, но в то же время я хочу, чтобы они оба сохраняли события безопасности и системного журнала в подробном журнале. Имеет ли это смысл? – deeveeABC
Вы можете объявить другой транспорт с 'loglevel: 'verbose', filename: 'verbose.log', name: 'baz'' и прикрепить его к обоим регистраторам – DrakaSAN
См. Править для общего транспорта для двух регистраторов – DrakaSAN