diff options
| author | Ben Beltran <ben@freshout.us> | 2013-04-03 16:49:03 -0600 |
|---|---|---|
| committer | Ben Beltran <ben@freshout.us> | 2013-04-03 16:49:03 -0600 |
| commit | b69497efe78c60742e0bb7ab5fed2b94ce89682e (patch) | |
| tree | beec3569a761e90d6f3335d4e656ddb6c16fb291 /lib/loggers | |
| parent | 03501041337c5234dc12e4a84ddf063142a7857e (diff) | |
I don't know how git works (massive commit)
Diffstat (limited to 'lib/loggers')
| -rw-r--r-- | lib/loggers/console.js | 76 | ||||
| -rw-r--r-- | lib/loggers/socket.js | 36 |
2 files changed, 112 insertions, 0 deletions
diff --git a/lib/loggers/console.js b/lib/loggers/console.js new file mode 100644 index 0000000..3dc4b1d --- /dev/null +++ b/lib/loggers/console.js @@ -0,0 +1,76 @@ +(function (global) { + var Module, Class; + + // Load up dependencies + if (typeof require === 'function') { + var Ne = require('neon'); + Module = Ne.Module; + Class = Ne.Class; + } else { + Module = global.Module; + Class = global.Class; + } + + var Cobalt = {}; + Module(Cobalt, 'Logger')({}); + + Cobalt.Logger.JsConsole = Class(Cobalt.Logger, 'JsConsole')({ + prototype : { + console : console, + formatterOpts : {}, + + init : function (config) { + var logger = this, + property; + + if (config) { + for (property in config) { + logger[property] = config[property]; + } + } + }, + + log : function (logObject) { + var message; + + message = this.format(logObject); + + switch (logObject._level){ + 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; + } + } + }); + + if (typeof require === 'function') { + global.JsConsole = Cobalt.Logger.JsConsole; + } else { + global.Cobalt.Logger.JsConsole = Cobalt.Logger.JsConsole; + } +}(typeof window !== 'undefined' ? window : (typeof exports !== 'undefined' ? exports : self))); diff --git a/lib/loggers/socket.js b/lib/loggers/socket.js new file mode 100644 index 0000000..8d0ff55 --- /dev/null +++ b/lib/loggers/socket.js @@ -0,0 +1,36 @@ +(function (global) { + var Module, Class; + + // Load up dependencies + if (typeof require === 'function') { + var Ne = require('neon'); + Module = Ne.Module; + Class = Ne.Class; + } else { + Module = global.Module; + Class = global.Class; + } + + var Cobalt = {}; + Module(Cobalt, 'Logger')({}); + + Cobalt.Logger.Socket = Class(Cobalt.Logger, 'Socket')({ + prototype : { + serverUrl : '/', + + init : function () { + this._socket = io.connect(this.serverUrl); + }, + + log : function (logObject) { + this._socket.emit('log', logObject); + } + } + }); + + if (typeof require === 'function') { + global.Socket = Cobalt.Logger.Socket; + } else { + global.Cobalt.Logger.Socket = Cobalt.Logger.Socket; + } +}(typeof window !== 'undefined' ? window : (typeof exports !== 'undefined' ? exports : self))); |