我定义了一个包含2个不同文件的记录器,并按照以下方式使用它:
main.js
var config = require('./config');
var log = require('./services/logger')(config);
log.logger.info("Info Logging");
config.js
var config = {};
var PRODUCTION = process.env.NODE_ENV === "production";
config.log = {
level : 'info'
};
module.exports = config;
logger.js
module.exports = function (config) {
var winston = require('winston');
var logger = new(winston.Logger)({
transports : [new(winston.transports.Console)({
level : config.log.level
})]
});
var winstonStream = {
write : function (message, encoding) {
logger.info(message.slice(0, -1));
}
};
return {
logger : logger,
expressStreamLogger : winstonStream
};
};
问题
在另一个文件中,我想使用记录器(log.logger
)。每次我需要使用记录器时,我是否应该重复以下要求?
var config = require('./config');
var log = require('./services/logger')(config);
log.logger.info("Info Logging");