Corrected based on knolleary's comments.

This commit is contained in:
Scott Yoshizawa 2015-05-01 09:37:23 -04:00
parent 276d893198
commit deaef3ab86
2 changed files with 21 additions and 22 deletions

View File

@ -47,11 +47,6 @@ var LogHandler = function(settings) {
this.metricsOn = settings ? settings.metrics||false : false; this.metricsOn = settings ? settings.metrics||false : false;
metricsEnabled = this.metricsOn; metricsEnabled = this.metricsOn;
this.handler = (settings && settings.handler) ? settings.handler(settings) : consoleLogger; this.handler = (settings && settings.handler) ? settings.handler(settings) : consoleLogger;
//if (settings && settings.handler) {
//this.handler = settings.handler(settings);
//} else {
//this.handler = consoleLogger;
//}
this.on("log",function(msg) { this.on("log",function(msg) {
if (this.shouldReportMessage(msg.level)) { if (this.shouldReportMessage(msg.level)) {
this.handler(msg); this.handler(msg);
@ -84,17 +79,21 @@ var log = module.exports = {
init: function(settings) { init: function(settings) {
logHandlers = []; logHandlers = [];
var loggerSettings = {}; var loggerSettings = {};
var keys = Object.keys(settings.logging); if (settings.logging) {
if (keys.length === 0) { var keys = Object.keys(settings.logging);
log.addHandler(new LogHandler()); if (keys.length === 0) {
} else { log.addHandler(new LogHandler());
for (var i=0, l=keys.length; i<l; i++) { } else {
var config = settings.logging[keys[i]]; for (var i=0, l=keys.length; i<l; i++) {
loggerSettings = config || {}; var config = settings.logging[keys[i]];
//if ((keys[i] === "console") || config.handler) { loggerSettings = config || {};
log.addHandler(new LogHandler(loggerSettings)); if ((keys[i] === "console") || config.handler) {
//} log.addHandler(new LogHandler(loggerSettings));
}
}
} }
} else {
log.addHandler(new LogHandler());
} }
}, },
addHandler: function(func) { addHandler: function(func) {

View File

@ -144,7 +144,7 @@ describe("red/log", function() {
sinon.assert.neverCalledWithMatch(util.log,"[trace] This is a trace"); sinon.assert.neverCalledWithMatch(util.log,"[trace] This is a trace");
sinon.assert.neverCalledWithMatch(util.log,"[metric] "); sinon.assert.neverCalledWithMatch(util.log,"[metric] ");
}); });
it('uses console logger if custom logger handler does not exist', function() { it('no logger used if custom logger handler does not exist', function() {
var settings = {logging: { customLogger: { level: 'trace', metrics: true } } }; var settings = {logging: { customLogger: { level: 'trace', metrics: true } } };
log.init(settings); log.init(settings);
log.error("This is an error"); log.error("This is an error");
@ -153,11 +153,11 @@ describe("red/log", function() {
log.debug("This is a debug"); log.debug("This is a debug");
log.trace("This is a trace"); log.trace("This is a trace");
log.log({level:log.METRIC,msg:"testMetric"}); log.log({level:log.METRIC,msg:"testMetric"});
sinon.assert.calledWithMatch(util.log,"[error] This is an error"); sinon.assert.neverCalledWithMatch(util.log,"[error] This is an error");
sinon.assert.calledWithMatch(util.log,"[warn] This is a warn"); sinon.assert.neverCalledWithMatch(util.log,"[warn] This is a warn");
sinon.assert.calledWithMatch(util.log,"[info] This is an info"); sinon.assert.neverCalledWithMatch(util.log,"[info] This is an info");
sinon.assert.calledWithMatch(util.log,"[debug] This is a debug"); sinon.assert.neverCalledWithMatch(util.log,"[debug] This is a debug");
sinon.assert.calledWithMatch(util.log,"[trace] This is a trace"); sinon.assert.neverCalledWithMatch(util.log,"[trace] This is a trace");
sinon.assert.calledWithMatch(util.log,"[metric] "); sinon.assert.neverCalledWithMatch(util.log,"[metric] ");
}); });
}); });