aboutsummaryrefslogtreecommitdiff
path: root/lib/cobalt.js
diff options
context:
space:
mode:
Diffstat (limited to 'lib/cobalt.js')
-rw-r--r--lib/cobalt.js36
1 files changed, 30 insertions, 6 deletions
diff --git a/lib/cobalt.js b/lib/cobalt.js
index 771c9c7..5ae39f2 100644
--- a/lib/cobalt.js
+++ b/lib/cobalt.js
@@ -28,6 +28,18 @@
Cobalt.Logger.Socket = require('./loggers/socket.js').Socket;
}
+ Cobalt.now = function () {
+ if (typeof performance !== 'undefined') {
+ return performance.timing.navigationStart + performance.now();
+ }
+
+ if (typeof Microtime !== 'undefined') {
+ return Microtime.nowDouble() * 1000;
+ }
+
+ return Date.now();
+ }
+
Cobalt.Console = Class(Cobalt, 'Console')({
prototype : {
from : "Generic Cobalt Logger",
@@ -64,13 +76,16 @@
// Builds a Cobalt Log Object
buildLog : function (item, level) {
- var co = this;
+ var co = this, oldItem;
if (!item._cobaltLog) {
if (typeof item !== "object") {
- item = { _cobaltLog : true, message : item.toString() };
+ item = {message : item.toString() };
+ } else {
+ item.message = JSON.stringify(item);
}
+ item._cobaltLog = true;
item._from = co.from;
item._level = item._level || level || 7;
item._levelString = co._levelString(item._level);
@@ -99,15 +114,20 @@
_log : function (severity) {
var co = this,
logString,
+ logObjectArray = [],
i, j;
for (i = 1; i < arguments.length; i++) {
- logObject = co.buildLog(arguments[i], severity);
-
- for (j = 0; j < co.loggers.length; j++) {
- co.loggers[j].log(logObject);
+ if (typeof arguments[i] === 'undefined') {
+ logObjectArray.push(co.buildLog("undefined", severity));
+ } else {
+ logObjectArray.push(co.buildLog(arguments[i], severity));
}
}
+
+ for (j = 0; j < co.loggers.length; j++) {
+ co.loggers[j].log.apply(co.loggers[j], logObjectArray);
+ }
},
log : function () {
@@ -246,6 +266,10 @@
}
});
+ if (Cobalt.Console.__objectSpy) {
+ Cobalt.Console.__objectSpy.destroy();
+ }
+
if (typeof require === 'function') {
global.Formatter = Cobalt.Formatter;
global.Logger = Cobalt.Logger;