X-Git-Url: https://git.r.bdr.sh/rbdr/cologne/blobdiff_plain/71a808fe142f1c10f9e7de90877fb6e4ffc70158..db6bc3cb0117030b2d31d55850d91f58248a8e81:/lib/loggers/console.js diff --git a/lib/loggers/console.js b/lib/loggers/console.js index 5002502..c4031eb 100644 --- a/lib/loggers/console.js +++ b/lib/loggers/console.js @@ -1,87 +1,70 @@ -(function (global) { - var Module, Class; +Class(Cobalt.Logger, 'JsConsole')({ + prototype : { + console : null, + formatterOpts : {}, - // Load up dependencies - if (typeof require === 'function') { - var Ne = require('neon'); - Module = Ne.Module; - Class = Ne.Class; - } else { - Module = global.Module; - Class = global.Class; - } + init : function (config) { + var logger = this, + property; - var Cobalt = {}; - Module(Cobalt, 'Logger')({}); + if (config) { + for (property in config) { + logger[property] = config[property]; + } + } - Cobalt.Logger.JsConsole = Class(Cobalt.Logger, 'JsConsole')({ - prototype : { - console : null, - formatterOpts : {}, + if (!logger.console) { + logger.console = console; + } + }, - init : function (config) { - var logger = this, - property; + log : function () { + var i, message = [], severity; - if (config) { - for (property in config) { - logger[property] = config[property]; - } - } - }, - - log : function () { - var i, messageArray = [], message, severity; + for (i = 0; i < arguments.length; i++) { + // We're not formatting objects for now. - for (i = 0; i < arguments.length; i++) { - messageArray.push(this.format(arguments[i])); + if (!arguments[i].__skipConsole && !arguments[i].message.__skipConsole) { + if (typeof arguments[i].message === 'object') { + message.push(arguments[i].message); + } else { + message.push(this.format(arguments[i])); + } if (!severity) { severity = arguments[i]._level } } + } - message = messageArray.join(' '); - - switch (severity){ - case 0: - case 1: - case 2: - case 3: - this.console.error(message); - break; - case 4: - this.console.warn(message); - break; - case 5: - case 6: - this.console.info(message); - break; - case 7: - default: - this.console.log(message); - break; - } - }, - - format : function (logObject) { - // Usually what you want to do here is format. Preferably using - // someone inside Cobalt.Formatter - if (this.formatter) { - return this.formatter.format(logObject, this.formatterOpts); - } - - return logObject; + switch (severity){ + case 0: + case 1: + case 2: + case 3: + this.console.error.apply(this.console, message); + break; + case 4: + this.console.warn.apply(this.console, message); + break; + case 5: + case 6: + this.console.info.apply(this.console, message); + break; + case 7: + default: + this.console.log.apply(this.console, message); + break; } - } - }); + }, - if (Cobalt.Logger.JsConsole.__objectSpy) { - Cobalt.Logger.JsConsole.__objectSpy.destroy(); - } + format : function (logObject) { + // Usually what you want to do here is format. Preferably using + // someone inside Cobalt.Formatter + if (this.formatter) { + return this.formatter.format(logObject, this.formatterOpts); + } - if (typeof require === 'function') { - global.JsConsole = Cobalt.Logger.JsConsole; - } else { - global.Cobalt.Logger.JsConsole = Cobalt.Logger.JsConsole; + return logObject.message; + } } -}(typeof window !== 'undefined' ? window : (typeof exports !== 'undefined' ? exports : self))); +});