aboutsummaryrefslogtreecommitdiff
path: root/lib/loggers
diff options
context:
space:
mode:
authorBen Beltran <ben@freshout.us>2013-04-03 16:49:03 -0600
committerBen Beltran <ben@freshout.us>2013-04-03 16:49:03 -0600
commitb69497efe78c60742e0bb7ab5fed2b94ce89682e (patch)
treebeec3569a761e90d6f3335d4e656ddb6c16fb291 /lib/loggers
parent03501041337c5234dc12e4a84ddf063142a7857e (diff)
I don't know how git works (massive commit)
Diffstat (limited to 'lib/loggers')
-rw-r--r--lib/loggers/console.js76
-rw-r--r--lib/loggers/socket.js36
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)));