-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathangular-elasticsearch-logger.min.js
2 lines (2 loc) · 3.29 KB
/
angular-elasticsearch-logger.min.js
1
2
angular.module("cmanaha.angular-elasticsearch-logger",["elasticsearch"]).provider("CMRESLogger",[function(){var a=this;a.esClientDetails={},a.logDetails={index:"defaul_angularjs_index",type:"jslog",bufferSize:5e3,flushIntervalInMS:2500},a.appDetails={},a.setElasticSearchConfig=function(b){a.esClientDetails=b},a.getElasticSearchConfig=function(){var b=angular.copy(a.esClientDetails);return b},a.setLogConfig=function(b){a.logDetails=b},a.getLogConfig=function(){var b=angular.copy(a.logDetails);return b},a.setApplicationLogContext=function(b){a.appDetails=b},a.getApplicationLogContext=function(){var b=angular.copy(a.appDetails);return b},a.$get=["$injector",function(b){var c=b.get("esFactory"),d=b.get("$interval");a.logBuffer=[];var e=c;return a.esClient=e(a.esClientDetails),a.level={DEBUG:"DEBUG",INFO:"INFO",WARN:"WARNING",ERROR:"ERROR"},a.numPadding=function(a,b){for(var c=a+"";c.length<b;)c="0"+c;return c},a.getIndexName=function(b){var c=new Date(Date.now()),d=b+"-"+c.getUTCFullYear()+"."+a.numPadding(c.getUTCMonth()+1,2)+"."+a.numPadding(c.getUTCDate(),2);return d},a.decodeStackTraceLine=function(a){var b=a.split(".js"),c=b[0]+".js",d=b[1].split(":")[1],e=b[1].split(":")[2];return[c,d,e]},a.getVariableWithDefault=function(a,b){var c="Unknown";return c="undefined"==typeof a?b:a},a.internalLog=function(b,c,d,e){a.logBuffer.push({index:{_index:a.getIndexName(a.logDetails.index),_type:a.logDetails.type}});var f={message:b,level:c,timestamp:new Date(Date.now()).toISOString(),browserCodeName:a.getVariableWithDefault(navigator.appCodeName,"Unknown"),browserName:a.getVariableWithDefault(navigator.appName,"Unknown"),browserVersion:a.getVariableWithDefault(navigator.appVersion,"Unknown"),browserProduct:a.getVariableWithDefault(navigator.product,"Unknown"),browserPlatform:a.getVariableWithDefault(navigator.platform,"Unknown"),browserUserAgent:a.getVariableWithDefault(navigator.userAgent,"Unknown"),browserGeolocation:a.getVariableWithDefault(navigator.geolocation,"Unknown")};angular.forEach(a.appDetails,function(a,b){f[b]=a}),"undefined"!=typeof e&&angular.forEach(e,function(a,b){f[b]=a});var g=[],h=[];if("undefined"==typeof d)g=printStackTrace();else{g=printStackTrace(d);var i=g.slice(5),j="Exception Msg [ "+d.message+"] \n";angular.forEach(i,function(b){h=a.decodeStackTraceLine(b),j=j+" "+h[0]+" LineNum ["+h[1]+"] charNum ["+h[2]+"]\n"}),f.stacktrace=j}h=a.decodeStackTraceLine(g[5]),f.method=h[0],f.lineNum=h[1],f.charNum=h[2],a.logBuffer.push(f),a.logBuffer.length/2>=a.logDetails.bufferSize&&a.internalFlush()},a.internalFlush=function(){a.logBuffer.length>0&&(a.esClient.bulk({body:a.logBuffer},function(b,c){b&&void 0!==a.logDetails.internalLogFunction&&a.logDetails.internalLogFunction("Got an error ["+b+"]while storing log : "+angular.toJson(c,!0))}),a.logBuffer=[])},a.flushInterval=d(a.internalFlush,a.logDetails.flushIntervalInMS),{info:function(b,c){a.internalLog(b,a.level.INFO,void 0,c)},warning:function(b,c){a.internalLog(b,a.level.WARN,void 0,c)},error:function(b,c){a.internalLog(b,a.level.ERROR,void 0,c)},debug:function(b,c){a.internalLog(b,a.level.DEBUG,void 0,c)},warningWithException:function(b,c,d){a.internalLog(b,a.level.WARN,c,void 0)},errorWithException:function(b,c,d){a.internalLog(b,a.level.ERROR,c,void 0)},flush:function(){a.internalFlush()}}}]}]);
//# sourceMappingURL=angular-elasticsearch-logger.min.map