Commit 7a2f57c5 authored by Evgeny Bovykin's avatar Evgeny Bovykin

Change logger due to specifications

parent ec021e4a
var logger = {
};
var shouldLog = true
logger.log = function(){
if(shouldLog){
console.log.apply(console, Array.prototype.slice.call(arguments));
}
};
logger.setLog = function(){
shouldLog = true;
};
logger.unsetLog = function(){
shouldLog = false;
};
if (typeof define === 'function' && define.amd) {
define("ed3-logger", logger);
} else if ('undefined' !== typeof exports && 'undefined' !== typeof module) {
module.exports = logger;
}
define(function() {
var MAX_LOG_MESSAGE_LENGTH = 300;
var Logger = function(moduleName, suffix) {
this.module = moduleName;
this.suffix = suffix;
};
var trimMessage = function(msg) {
msg = msg === 0 ? '0' : (msg || '').toString();
return msg.length <= MAX_LOG_MESSAGE_LENGTH ? msg :
(msg.substr(0, MAX_LOG_MESSAGE_LENGTH) + ' ... (message trimmed; ' + msg.length + ' symbols total)');
};
Logger.prototype = {
_processMsg: function(msg) {
return '[' + this.module + (this.suffix ? ':' + this.suffix : '') + ']: ' + trimMessage(msg);
},
error: function (msg) {
console.error(this._processMsg(msg));
},
warn: function (msg) {
console.warn(this._processMsg(msg));
},
info: function (msg) {
console.info(this._processMsg(msg));
},
debug: function (msg) {
// node compability
if(console.debug){
console.debug(this._processMsg(msg));
} else {
console.info(this._processMsg(msg));
}
},
};
var loggers = {},
defaultLogger = new Logger('default');
return {
getLogger: function (module, suffix) {
if (!module) {
return defaultLogger;
}
var logger = loggers[module + suffix];
if (!logger) {
logger = new Logger(module, suffix);
loggers[module + suffix] = logger;
}
return logger;
}
};
});
{
"name": "ed3-logger",
"version": "1.0.2",
"version": "2.0.0",
"description": "The most basic logger you could ever imagine",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC"
"license": "ISC",
"dependencies": {
"requirejs": "^2.1.20"
}
}
var requirejs = require("requirejs");
var logger = requirejs("./index").getLogger("main");
logger.info("info");
logger.debug("debug");
logger.error("error");
logger.warn("warn");
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment