UNPKG

rocksteady

Version:

Drink blazin' electric death, downtime! Fast, zero-downtime apps for production enviroments.

99 lines (93 loc) 2.83 kB
// Generated by CoffeeScript 1.9.1 var fn, i, len, level, logger, ref; exports.logger = logger = { _pad: function(n) { n = n + ''; if (n.length >= 2) { return n; } else { return new Array(2 - n.length + 1).join('0') + n; } }, timestamp: function() { var d, date, hour, min, month, sec, year; d = new Date(); year = d.getUTCFullYear(); month = this._pad(d.getUTCMonth() + 1); date = this._pad(d.getUTCDate()); hour = this._pad(d.getUTCHours()); min = this._pad(d.getUTCMinutes()); sec = this._pad(d.getUTCSeconds()); return year + "-" + month + "-" + date + " " + hour + ":" + min + ":" + sec; }, log: function(level, message, metadata) { var err, ref; if (metadata == null) { metadata = ''; } if (level !== 'error') { return console.log((this.timestamp()) + " [" + level + "] " + message, metadata); } if (message instanceof Error) { ref = [message, message.name], err = ref[0], message = ref[1]; } console.error((this.timestamp()) + " [" + level + "] " + message, metadata); if (err != null) { return require('postmortem').prettyPrint(err); } } }; ref = ['info', 'debug', 'warn', 'error']; fn = function(level) { return logger[level] = function(message, metadata) { return logger.log(level, message, metadata); }; }; for (i = 0, len = ref.length; i < len; i++) { level = ref[i]; fn(level); } exports.serialize = function(err) { return { message: err.message, name: err.name, stack: err.stack, structuredStackTrace: err.structuredStackTrace }; }; exports.deserialize = function(err) { var fn1, frame, isNative, j, len1, line, message, method, name, path, stack, structuredStackTrace, type; name = err.name, message = err.message, stack = err.stack, structuredStackTrace = err.structuredStackTrace; fn1 = function(frame, path, line, isNative, name, type, method) { frame.getFileName = function() { return path; }; frame.getLineNumber = function() { return line; }; frame.isNative = function() { return isNative; }; frame.getFunctionName = function() { return name; }; frame.getTypeName = function() { return type; }; return frame.getMethodName = function() { return method; }; }; for (j = 0, len1 = structuredStackTrace.length; j < len1; j++) { frame = structuredStackTrace[j]; path = frame.path, line = frame.line, isNative = frame.isNative, name = frame.name, type = frame.type, method = frame.method; fn1(frame, path, line, isNative, name, type, method); } err = new Error(); err.name = name; err.message = message; err.stack = stack; err.structuredStackTrace = structuredStackTrace; return err; }; //# sourceMappingURL=utils.js.map