diff --git a/package.json b/package.json index c68fa81..a177d71 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "loggly-jslogger", - "version": "2.2.2", + "version": "2.2.3", "description": "A Javascript client to send logs to Loggly.", "browser": "index.js", "repository": { diff --git a/src/loggly.tracker.js b/src/loggly.tracker.js index be46e49..53f0a93 100644 --- a/src/loggly.tracker.js +++ b/src/loggly.tracker.js @@ -18,6 +18,7 @@ this.sendConsoleErrors = false; this.tag = 'jslogger'; this.useDomainProxy = false; + this.useUtfEncoding = false; } function setKey(tracker, key) { @@ -36,6 +37,10 @@ setInputUrl(tracker); } + function setUtfEncoding(tracker, useUtfEncoding){ + tracker.useUtfEncoding = useUtfEncoding; + } + function setSendConsoleError(tracker, sendConsoleErrors) { tracker.sendConsoleErrors = sendConsoleErrors; @@ -124,6 +129,10 @@ setTag(self, data.tag); } + if (data.useUtfEncoding !== undefined) { + setUtfEncoding(self, data.useUtfEncoding); + } + if (data.useDomainProxy) { setDomainProxy(self, data.useDomainProxy); } @@ -155,7 +164,11 @@ //creating an asynchronous XMLHttpRequest var xmlHttp = new XMLHttpRequest(); xmlHttp.open('POST', this.inputUrl, true); //true for asynchronous request - xmlHttp.setRequestHeader('Content-Type', 'text/plain'); + if (tracker.useUtfEncoding === true) { + xmlHttp.setRequestHeader('Content-Type', 'text/plain; charset=utf-8'); + } else { + xmlHttp.setRequestHeader('Content-Type', 'text/plain'); + } xmlHttp.send(JSON.stringify(data)); } catch (ex) {