From ffe2b403530ffb6260174d591f99624815273b1e Mon Sep 17 00:00:00 2001 From: Jayant Varshney Date: Mon, 2 Mar 2015 19:08:29 +0530 Subject: [PATCH 1/3] Removed tag support Sending tags for now causing console warnings for MIME type. --- src/loggly.tracker.js | 26 ++++++++------------------ 1 file changed, 8 insertions(+), 18 deletions(-) diff --git a/src/loggly.tracker.js b/src/loggly.tracker.js index e096774..3b0bb1d 100644 --- a/src/loggly.tracker.js +++ b/src/loggly.tracker.js @@ -15,9 +15,8 @@ function LogglyTracker() { this.key = false; - this.sendConsoleErrors = false; - this.tag = 'jslogger'; - } + this.sendConsoleErrors = false; + } function setKey(tracker, key) { tracker.key = key; @@ -49,17 +48,12 @@ } } - function setTag(tracker, tag){ - tracker.tag = tag; - } - function setInputUrl(tracker) { tracker.inputUrl = LOGGLY_INPUT_PREFIX + (tracker.logglyCollectorDomain || LOGGLY_COLLECTOR_DOMAIN) + '/inputs/' + tracker.key - + '/tag/'+tracker.tag+'/' - + LOGGLY_INPUT_SUFFIX; + + LOGGLY_INPUT_SUFFIX; } LogglyTracker.prototype = { @@ -95,15 +89,11 @@ return; } - if(data.sendConsoleErrors !== undefined) { - setSendConsoleError(self, data.sendConsoleErrors); - } + if(data.sendConsoleErrors !== undefined) { + setSendConsoleError(self, data.sendConsoleErrors); + } - if(data.tag){ - setTag(self, data.tag); - } - - if(data.logglyKey) { + if(data.logglyKey) { setKey(self, data.logglyKey); return; } @@ -128,7 +118,7 @@ try { var im = new Image(), - q = 'PLAINTEXT=' + encodeURIComponent(JSON.stringify(data)); + q = 'PLAINTEXT=' + encodeURIComponent(JSON.stringify(data)); im.src = this.inputUrl + q; } catch (ex) { if (window && window.console && typeof window.console.log === 'function') { From 5a0ba38683d7becaa5869911155b5f9b8b833659 Mon Sep 17 00:00:00 2001 From: psquickitjayant Date: Mon, 2 Mar 2015 19:26:49 +0530 Subject: [PATCH 2/3] Removed info about Tag --- README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/README.md b/README.md index bdbc8a2..89f7ef9 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,6 @@ Place the following on your page, and replace the logglyKey value with the key p _LTracker.push({ 'logglyKey': '8c518f97-e3e0-4bfb-a8ed-582d084a5289', 'sendConsoleErrors' : true, - 'tag' : 'jslogger' }); ``` From 3dc6ce1b533a4bc7f8d0cad16b3b810bfe85ac2a Mon Sep 17 00:00:00 2001 From: Jayant Varshney Date: Thu, 12 Mar 2015 15:12:50 +0530 Subject: [PATCH 3/3] Added minified version Added loggly.tracker.min.js, package.json, Gruntfile.js also updated bower.json --- Gruntfile.js | 18 ++++++++++++++++++ bower.json | 11 +++-------- package.json | 25 +++++++++++++++++++++++++ src/loggly.tracker.min.js | 2 ++ src/loggly.tracker.min.map | 1 + 5 files changed, 49 insertions(+), 8 deletions(-) create mode 100644 Gruntfile.js create mode 100644 package.json create mode 100644 src/loggly.tracker.min.js create mode 100644 src/loggly.tracker.min.map diff --git a/Gruntfile.js b/Gruntfile.js new file mode 100644 index 0000000..336e1a2 --- /dev/null +++ b/Gruntfile.js @@ -0,0 +1,18 @@ +module.exports = function(grunt) { + grunt.initConfig({ + pkg: grunt.file.readJSON('package.json'), + uglify: { + options : { + sourceMap: true + }, + main: { + files: { 'src/loggly.tracker.min.js': ['src/loggly.tracker.js'] } + } + } + }); + + grunt.loadNpmTasks('grunt-contrib-uglify'); + + grunt.registerTask('default', ['uglify'] ); + +}; \ No newline at end of file diff --git a/bower.json b/bower.json index 2f68a4d..5473707 100644 --- a/bower.json +++ b/bower.json @@ -1,23 +1,18 @@ { "name": "loggly-jslogger", "homepage": "https://github.com/loggly/loggly-jslogger", - "_release": "7418993b3b", - "_resolution": { - "type": "branch", - "branch": "master", - "commit": "7418993b3bc542a6d2d420257e7d9aab55ec139a" - }, "_source": "git://github.com/loggly/loggly-jslogger.git", "_target": "*", "_originalSource": "loggly-jslogger", "_direct": true, - "version": "1.1.0", + "version": "1.2.0", "description": "A Javascript client to send logs to Loggly.", "main": "src/loggly.tracker.js", "keywords": [ "loggly-jslogger", "jslogger", - "loggly" + "loggly", + "log" ], "authors": [ "Loggly" diff --git a/package.json b/package.json new file mode 100644 index 0000000..553a3e3 --- /dev/null +++ b/package.json @@ -0,0 +1,25 @@ +{ + "name": "loggly-jslogger", + "version": "1.2.0", + "description": "A Javascript client to send logs to Loggly.", + "repository": { + "type": "git", + "url": "git://github.com/loggly/loggly-jslogger.git" + }, + "author": "Loggly", + "keywords": [ + "loggly-jslogger", + "jslogger", + "loggly", + "log" + ], + "license": "MIT", + "devDependencies": { + "bower": "^1.3.1", + "grunt": "^0.4.4", + "grunt-contrib-uglify": "^0.4.0" + }, + "scripts": { + "postinstall": "bower install" + } +} \ No newline at end of file diff --git a/src/loggly.tracker.min.js b/src/loggly.tracker.min.js new file mode 100644 index 0000000..7798349 --- /dev/null +++ b/src/loggly.tracker.min.js @@ -0,0 +1,2 @@ +!function(a,b){function c(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(a){var b=16*Math.random()|0,c="x"==a?b:3&b|8;return c.toString(16)})}function d(){this.key=!1,this.sendConsoleErrors=!1}function e(a,b){a.key=b,a.setSession(),g(a)}function f(b,c){if(b.sendConsoleErrors=c,b.sendConsoleErrors===!0){var d=a.onerror;a.onerror=function(c,e,f,g){b.push({category:"BrowserJsException",exception:{message:c,url:e,lineno:f,colno:g}}),d&&"function"==typeof d&&d.apply(a,arguments)}}}function g(a){a.inputUrl=h+(a.logglyCollectorDomain||i)+"/inputs/"+a.key+j}var h="http"+("https:"===b.location.protocol?"s":"")+"://",i="logs-01.loggly.com",j=".gif?",k="logglytrackingsession",l=k.length+1;d.prototype={setSession:function(a){a?(this.session_id=a,this.setCookie(this.session_id)):this.session_id||(this.session_id=this.readCookie(),this.session_id||(this.session_id=c(),this.setCookie(this.session_id)))},push:function(a){var b=typeof a;if(a&&("object"===b||"string"===b)){var c=this;if("string"===b)a={text:a};else{if(a.logglyCollectorDomain)return void(c.logglyCollectorDomain=a.logglyCollectorDomain);if(void 0!==a.sendConsoleErrors&&f(c,a.sendConsoleErrors),a.logglyKey)return void e(c,a.logglyKey);if(a.session_id)return void c.setSession(a.session_id)}c.key&&c.track(a)}},track:function(b){b.sessionId=this.session_id;try{var c=new Image,d="PLAINTEXT="+encodeURIComponent(JSON.stringify(b));c.src=this.inputUrl+d}catch(e){a&&a.console&&"function"==typeof a.console.log&&(console.log("Failed to log to loggly because of this exception:\n"+e),console.log("Failed log data:",b))}},readCookie:function(){var a=b.cookie,c=a.indexOf(k);if(0>c)return!1;var d=a.indexOf(";",c+1);return d=0>d?a.length:d,a.slice(c+l,d)},setCookie:function(a){b.cookie=k+"="+a}};var m=a._LTracker,n=new d;if(m&&m.length){var o=0,p=m.length;for(o=0;p>o;o++)n.push(m[o])}a._LTracker=n,a.LogglyTracker=d}(window,document); +//# sourceMappingURL=loggly.tracker.min.map \ No newline at end of file diff --git a/src/loggly.tracker.min.map b/src/loggly.tracker.min.map new file mode 100644 index 0000000..2d5263f --- /dev/null +++ b/src/loggly.tracker.min.map @@ -0,0 +1 @@ +{"version":3,"file":"loggly.tracker.min.js","sources":["loggly.tracker.js"],"names":["window","document","uuid","replace","c","r","Math","random","v","toString","LogglyTracker","this","key","sendConsoleErrors","setKey","tracker","setSession","setInputUrl","setSendConsoleError","_onerror","onerror","msg","url","line","col","push","category","exception","message","lineno","colno","apply","arguments","inputUrl","LOGGLY_INPUT_PREFIX","logglyCollectorDomain","LOGGLY_COLLECTOR_DOMAIN","LOGGLY_INPUT_SUFFIX","location","protocol","LOGGLY_SESSION_KEY","LOGGLY_SESSION_KEY_LENGTH","length","prototype","session_id","setCookie","readCookie","data","type","self","text","undefined","logglyKey","track","sessionId","im","Image","q","encodeURIComponent","JSON","stringify","src","ex","console","log","cookie","i","indexOf","end","slice","value","existing","_LTracker","eLength"],"mappings":"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"} \ No newline at end of file