@microsoft/applicationinsights-channel-js 3.1.1-nightly3.2403-01 → 3.1.1-nightly3.2403-03
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/browser/es5/{applicationinsights-channel-js.3.1.1-nightly3.2403-01.cjs.js → applicationinsights-channel-js.3.1.1-nightly3.2403-03.cjs.js} +586 -331
- package/browser/es5/applicationinsights-channel-js.3.1.1-nightly3.2403-03.cjs.js.map +1 -0
- package/browser/es5/applicationinsights-channel-js.3.1.1-nightly3.2403-03.cjs.min.js +6 -0
- package/browser/es5/applicationinsights-channel-js.3.1.1-nightly3.2403-03.cjs.min.js.map +1 -0
- package/browser/es5/{applicationinsights-channel-js.3.1.1-nightly3.2403-01.gbl.js → applicationinsights-channel-js.3.1.1-nightly3.2403-03.gbl.js} +588 -333
- package/browser/es5/applicationinsights-channel-js.3.1.1-nightly3.2403-03.gbl.js.map +1 -0
- package/browser/es5/applicationinsights-channel-js.3.1.1-nightly3.2403-03.gbl.min.js +6 -0
- package/browser/es5/applicationinsights-channel-js.3.1.1-nightly3.2403-03.gbl.min.js.map +1 -0
- package/browser/es5/applicationinsights-channel-js.3.1.1-nightly3.2403-03.integrity.json +66 -0
- package/browser/es5/{applicationinsights-channel-js.3.1.1-nightly3.2403-01.js → applicationinsights-channel-js.3.1.1-nightly3.2403-03.js} +588 -333
- package/browser/es5/applicationinsights-channel-js.3.1.1-nightly3.2403-03.js.map +1 -0
- package/browser/es5/applicationinsights-channel-js.3.1.1-nightly3.2403-03.min.js +6 -0
- package/browser/es5/applicationinsights-channel-js.3.1.1-nightly3.2403-03.min.js.map +1 -0
- package/browser/es5/applicationinsights-channel-js.3.cjs.js +585 -330
- package/browser/es5/applicationinsights-channel-js.3.cjs.js.map +1 -1
- package/browser/es5/applicationinsights-channel-js.3.cjs.min.js +2 -2
- package/browser/es5/applicationinsights-channel-js.3.cjs.min.js.map +1 -1
- package/browser/es5/applicationinsights-channel-js.3.gbl.js +587 -332
- package/browser/es5/applicationinsights-channel-js.3.gbl.js.map +1 -1
- package/browser/es5/applicationinsights-channel-js.3.gbl.min.js +2 -2
- package/browser/es5/applicationinsights-channel-js.3.gbl.min.js.map +1 -1
- package/browser/es5/applicationinsights-channel-js.3.integrity.json +25 -25
- package/browser/es5/applicationinsights-channel-js.3.js +587 -332
- package/browser/es5/applicationinsights-channel-js.3.js.map +1 -1
- package/browser/es5/applicationinsights-channel-js.3.min.js +2 -2
- package/browser/es5/applicationinsights-channel-js.3.min.js.map +1 -1
- package/dist/es5/applicationinsights-channel-js.js +585 -330
- package/dist/es5/applicationinsights-channel-js.js.map +1 -1
- package/dist/es5/applicationinsights-channel-js.min.js +2 -2
- package/dist/es5/applicationinsights-channel-js.min.js.map +1 -1
- package/dist-es5/EnvelopeCreator.js +2 -2
- package/dist-es5/EnvelopeCreator.js.map +1 -1
- package/dist-es5/Interfaces.js +1 -1
- package/dist-es5/InternalConstants.js +1 -1
- package/dist-es5/SendBuffer.js +5 -5
- package/dist-es5/SendBuffer.js.map +1 -1
- package/dist-es5/Sender.js +138 -369
- package/dist-es5/Sender.js.map +1 -1
- package/dist-es5/Serializer.js +1 -1
- package/dist-es5/TelemetryProcessors/Sample.js +1 -1
- package/dist-es5/TelemetryProcessors/SamplingScoreGenerators/HashCodeScoreGenerator.js +3 -3
- package/dist-es5/TelemetryProcessors/SamplingScoreGenerators/HashCodeScoreGenerator.js.map +1 -1
- package/dist-es5/TelemetryProcessors/SamplingScoreGenerators/SamplingScoreGenerator.js +1 -1
- package/dist-es5/__DynamicConstants.js +14 -15
- package/dist-es5/__DynamicConstants.js.map +1 -1
- package/dist-es5/applicationinsights-channel-js.js +1 -1
- package/package.json +3 -3
- package/types/applicationinsights-channel-js.d.ts +1 -1
- package/types/applicationinsights-channel-js.namespaced.d.ts +6 -1
- package/browser/es5/applicationinsights-channel-js.3.1.1-nightly3.2403-01.cjs.js.map +0 -1
- package/browser/es5/applicationinsights-channel-js.3.1.1-nightly3.2403-01.cjs.min.js +0 -6
- package/browser/es5/applicationinsights-channel-js.3.1.1-nightly3.2403-01.cjs.min.js.map +0 -1
- package/browser/es5/applicationinsights-channel-js.3.1.1-nightly3.2403-01.gbl.js.map +0 -1
- package/browser/es5/applicationinsights-channel-js.3.1.1-nightly3.2403-01.gbl.min.js +0 -6
- package/browser/es5/applicationinsights-channel-js.3.1.1-nightly3.2403-01.gbl.min.js.map +0 -1
- package/browser/es5/applicationinsights-channel-js.3.1.1-nightly3.2403-01.integrity.json +0 -66
- package/browser/es5/applicationinsights-channel-js.3.1.1-nightly3.2403-01.js.map +0 -1
- package/browser/es5/applicationinsights-channel-js.3.1.1-nightly3.2403-01.min.js +0 -6
- package/browser/es5/applicationinsights-channel-js.3.1.1-nightly3.2403-01.min.js.map +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Application Insights JavaScript SDK - Channel, 3.1.1-nightly3.2403-
|
|
2
|
+
* Application Insights JavaScript SDK - Channel, 3.1.1-nightly3.2403-03
|
|
3
3
|
* Copyright (c) Microsoft and contributors. All rights reserved.
|
|
4
4
|
*/
|
|
5
5
|
(function (global, factory) {
|
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
typeof exports === "object" && typeof module !== undef ? factory(exports) :
|
|
8
8
|
typeof define === "function" && define.amd ? define(["exports"], factory) :
|
|
9
9
|
(function(global){
|
|
10
|
-
var nsKey, key, nm, theExports = {}, modName = "
|
|
11
|
-
var mods={}, modDetail=mods[modName]={}, ver="3.1.1-nightly3.2403-
|
|
10
|
+
var nsKey, key, nm, theExports = {}, modName = "es5_applicationinsights_channel_js_3_1_1_nightly3_2403_03", msMod="__ms$mod__";
|
|
11
|
+
var mods={}, modDetail=mods[modName]={}, ver="3.1.1-nightly3.2403-03";
|
|
12
12
|
var baseNs=global, nsKey="Microsoft", baseNs=baseNs[nsKey]=(baseNs[nsKey]||{});
|
|
13
13
|
// Versioned namespace "Microsoft.ApplicationInsights3"
|
|
14
14
|
var exportNs=baseNs, nsKey="ApplicationInsights3", exportNs=exportNs[nsKey]=(exportNs[nsKey]||{});
|
|
@@ -1148,7 +1148,7 @@ var _DYN_PUSH$2 = "push";
|
|
|
1148
1148
|
var _DYN_SPLICE = "splice";
|
|
1149
1149
|
var _DYN_HDLR = "hdlr";
|
|
1150
1150
|
var _DYN_CANCEL = "cancel";
|
|
1151
|
-
var _DYN_INITIALIZE = "initialize";
|
|
1151
|
+
var _DYN_INITIALIZE$1 = "initialize";
|
|
1152
1152
|
var _DYN_IDENTIFIER = "identifier";
|
|
1153
1153
|
var _DYN_IS_INITIALIZED = "isInitialized";
|
|
1154
1154
|
var _DYN_GET_PLUGIN = "getPlugin";
|
|
@@ -1497,7 +1497,7 @@ function createPromise(executor, timeout) {
|
|
|
1497
1497
|
}
|
|
1498
1498
|
|
|
1499
1499
|
var UNDEFINED_VALUE$1 = undefined;
|
|
1500
|
-
var STR_EMPTY = "";
|
|
1500
|
+
var STR_EMPTY$1 = "";
|
|
1501
1501
|
var STR_CORE = "core";
|
|
1502
1502
|
var STR_DISABLED = "disabled";
|
|
1503
1503
|
var STR_EXTENSION_CONFIG = "extensionConfig";
|
|
@@ -1538,7 +1538,7 @@ function getExceptionName(object) {
|
|
|
1538
1538
|
if (isError(object)) {
|
|
1539
1539
|
return object[_DYN_NAME$2 ];
|
|
1540
1540
|
}
|
|
1541
|
-
return STR_EMPTY;
|
|
1541
|
+
return STR_EMPTY$1;
|
|
1542
1542
|
}
|
|
1543
1543
|
function setValue(target, field, value, valChk, srcChk) {
|
|
1544
1544
|
var theValue = value;
|
|
@@ -1642,6 +1642,7 @@ function objExtend(obj1, obj2, obj3, obj4, obj5, obj6) {
|
|
|
1642
1642
|
}
|
|
1643
1643
|
|
|
1644
1644
|
var strDocumentMode = "documentMode";
|
|
1645
|
+
var strLocation = "location";
|
|
1645
1646
|
var strConsole = "console";
|
|
1646
1647
|
var strJSON = "JSON";
|
|
1647
1648
|
var strCrypto = "crypto";
|
|
@@ -1651,6 +1652,7 @@ var strTrident = "trident/";
|
|
|
1651
1652
|
var strXMLHttpRequest = "XMLHttpRequest";
|
|
1652
1653
|
var _isTrident = null;
|
|
1653
1654
|
var _navUserAgentCheck = null;
|
|
1655
|
+
var _enableMocks = false;
|
|
1654
1656
|
var _useXDomainRequest = null;
|
|
1655
1657
|
var _beaconsSupported = null;
|
|
1656
1658
|
function _hasProperty(theClass, property) {
|
|
@@ -1678,6 +1680,18 @@ function _hasProperty(theClass, property) {
|
|
|
1678
1680
|
}
|
|
1679
1681
|
return supported;
|
|
1680
1682
|
}
|
|
1683
|
+
function getLocation(checkForMock) {
|
|
1684
|
+
if (checkForMock && _enableMocks) {
|
|
1685
|
+
var mockLocation = getInst("__mockLocation");
|
|
1686
|
+
if (mockLocation) {
|
|
1687
|
+
return mockLocation;
|
|
1688
|
+
}
|
|
1689
|
+
}
|
|
1690
|
+
if (typeof location === strShimObject && location) {
|
|
1691
|
+
return location;
|
|
1692
|
+
}
|
|
1693
|
+
return getInst(strLocation);
|
|
1694
|
+
}
|
|
1681
1695
|
function getConsole() {
|
|
1682
1696
|
if (typeof console !== strShimUndefined) {
|
|
1683
1697
|
return console;
|
|
@@ -1703,7 +1717,7 @@ function isIE() {
|
|
|
1703
1717
|
var nav = getNavigator();
|
|
1704
1718
|
if (nav && (nav[_DYN_USER_AGENT ] !== _navUserAgentCheck || _isTrident === null)) {
|
|
1705
1719
|
_navUserAgentCheck = nav[_DYN_USER_AGENT ];
|
|
1706
|
-
var userAgent = (_navUserAgentCheck || STR_EMPTY)[_DYN_TO_LOWER_CASE$1 ]();
|
|
1720
|
+
var userAgent = (_navUserAgentCheck || STR_EMPTY$1)[_DYN_TO_LOWER_CASE$1 ]();
|
|
1707
1721
|
_isTrident = (strContains(userAgent, strMsie) || strContains(userAgent, strTrident));
|
|
1708
1722
|
}
|
|
1709
1723
|
return _isTrident;
|
|
@@ -1712,9 +1726,9 @@ function getIEVersion(userAgentStr) {
|
|
|
1712
1726
|
if (userAgentStr === void 0) { userAgentStr = null; }
|
|
1713
1727
|
if (!userAgentStr) {
|
|
1714
1728
|
var navigator_1 = getNavigator() || {};
|
|
1715
|
-
userAgentStr = navigator_1 ? (navigator_1.userAgent || STR_EMPTY)[_DYN_TO_LOWER_CASE$1 ]() : STR_EMPTY;
|
|
1729
|
+
userAgentStr = navigator_1 ? (navigator_1.userAgent || STR_EMPTY$1)[_DYN_TO_LOWER_CASE$1 ]() : STR_EMPTY$1;
|
|
1716
1730
|
}
|
|
1717
|
-
var ua = (userAgentStr || STR_EMPTY)[_DYN_TO_LOWER_CASE$1 ]();
|
|
1731
|
+
var ua = (userAgentStr || STR_EMPTY$1)[_DYN_TO_LOWER_CASE$1 ]();
|
|
1718
1732
|
if (strContains(ua, strMsie)) {
|
|
1719
1733
|
var doc = getDocument() || {};
|
|
1720
1734
|
return Math.max(parseInt(ua[_DYN_SPLIT$1 ](strMsie)[1]), (doc[strDocumentMode] || 0));
|
|
@@ -1823,7 +1837,7 @@ function newId(maxLength) {
|
|
|
1823
1837
|
var base64chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
|
|
1824
1838
|
var number = random32() >>> 0;
|
|
1825
1839
|
var chars = 0;
|
|
1826
|
-
var result = STR_EMPTY;
|
|
1840
|
+
var result = STR_EMPTY$1;
|
|
1827
1841
|
while (result[_DYN_LENGTH$2 ] < maxLength) {
|
|
1828
1842
|
chars++;
|
|
1829
1843
|
result += base64chars.charAt(number & 0x3F);
|
|
@@ -1861,11 +1875,11 @@ function _getCache(data, target) {
|
|
|
1861
1875
|
}
|
|
1862
1876
|
function createUniqueNamespace(name, includeVersion) {
|
|
1863
1877
|
if (includeVersion === void 0) { includeVersion = false; }
|
|
1864
|
-
return normalizeJsName(name + (_dataUid++) + (includeVersion ? "." + version : STR_EMPTY) + instanceName);
|
|
1878
|
+
return normalizeJsName(name + (_dataUid++) + (includeVersion ? "." + version : STR_EMPTY$1) + instanceName);
|
|
1865
1879
|
}
|
|
1866
1880
|
function createElmNodeData(name) {
|
|
1867
1881
|
var data = {
|
|
1868
|
-
id: createUniqueNamespace("_aiData-" + (name || STR_EMPTY) + "." + version),
|
|
1882
|
+
id: createUniqueNamespace("_aiData-" + (name || STR_EMPTY$1) + "." + version),
|
|
1869
1883
|
accept: function (target) {
|
|
1870
1884
|
return _canAcceptData(target);
|
|
1871
1885
|
},
|
|
@@ -2570,9 +2584,9 @@ var _logFuncs = (_a$2 = {},
|
|
|
2570
2584
|
_a$2);
|
|
2571
2585
|
function _sanitizeDiagnosticText(text) {
|
|
2572
2586
|
if (text) {
|
|
2573
|
-
return "\"" + text[_DYN_REPLACE ](/\"/g, STR_EMPTY) + "\"";
|
|
2587
|
+
return "\"" + text[_DYN_REPLACE ](/\"/g, STR_EMPTY$1) + "\"";
|
|
2574
2588
|
}
|
|
2575
|
-
return STR_EMPTY;
|
|
2589
|
+
return STR_EMPTY$1;
|
|
2576
2590
|
}
|
|
2577
2591
|
function _logToConsole(func, message) {
|
|
2578
2592
|
var theConsole = getConsole();
|
|
@@ -2594,12 +2608,12 @@ var _InternalLogMessage = /** @class */ (function () {
|
|
|
2594
2608
|
_self[_DYN_MESSAGE$1 ] =
|
|
2595
2609
|
(isUserAct ? AiUserActionablePrefix : AiNonUserActionablePrefix) +
|
|
2596
2610
|
msgId;
|
|
2597
|
-
var strProps = STR_EMPTY;
|
|
2611
|
+
var strProps = STR_EMPTY$1;
|
|
2598
2612
|
if (hasJSON()) {
|
|
2599
2613
|
strProps = getJSON().stringify(properties);
|
|
2600
2614
|
}
|
|
2601
|
-
var diagnosticText = (msg ? " message:" + _sanitizeDiagnosticText(msg) : STR_EMPTY) +
|
|
2602
|
-
(properties ? " props:" + _sanitizeDiagnosticText(strProps) : STR_EMPTY);
|
|
2615
|
+
var diagnosticText = (msg ? " message:" + _sanitizeDiagnosticText(msg) : STR_EMPTY$1) +
|
|
2616
|
+
(properties ? " props:" + _sanitizeDiagnosticText(strProps) : STR_EMPTY$1);
|
|
2603
2617
|
_self[_DYN_MESSAGE$1 ] += diagnosticText;
|
|
2604
2618
|
}
|
|
2605
2619
|
_InternalLogMessage.dataType = "MessageData";
|
|
@@ -3132,7 +3146,7 @@ function createTelemetryPluginProxy(plugin, config, core) {
|
|
|
3132
3146
|
doPerf(itemCtx[STR_CORE ](), function () { return identifier + ":" + name; }, function () {
|
|
3133
3147
|
hasRunContext[chainId] = true;
|
|
3134
3148
|
try {
|
|
3135
|
-
var nextId = nextProxy ? nextProxy._id : STR_EMPTY;
|
|
3149
|
+
var nextId = nextProxy ? nextProxy._id : STR_EMPTY$1;
|
|
3136
3150
|
if (nextId) {
|
|
3137
3151
|
hasRunContext[nextId] = false;
|
|
3138
3152
|
}
|
|
@@ -3277,7 +3291,7 @@ var BaseTelemetryPlugin = /** @class */ (function () {
|
|
|
3277
3291
|
var _hookContainer;
|
|
3278
3292
|
_initDefaults();
|
|
3279
3293
|
dynamicProto(BaseTelemetryPlugin, _self, function (_self) {
|
|
3280
|
-
_self[_DYN_INITIALIZE ] = function (config, core, extensions, pluginChain) {
|
|
3294
|
+
_self[_DYN_INITIALIZE$1 ] = function (config, core, extensions, pluginChain) {
|
|
3281
3295
|
_setDefaults(config, core, pluginChain);
|
|
3282
3296
|
_isinitialized = true;
|
|
3283
3297
|
};
|
|
@@ -3418,16 +3432,16 @@ var elmNodeData = createElmNodeData("events");
|
|
|
3418
3432
|
var eventNamespace = /^([^.]*)(?:\.(.+)|)/;
|
|
3419
3433
|
function _normalizeNamespace(name) {
|
|
3420
3434
|
if (name && name[_DYN_REPLACE ]) {
|
|
3421
|
-
return name[_DYN_REPLACE ](/^[\s\.]+|(?=[\s\.])[\.\s]+$/g, STR_EMPTY);
|
|
3435
|
+
return name[_DYN_REPLACE ](/^[\s\.]+|(?=[\s\.])[\.\s]+$/g, STR_EMPTY$1);
|
|
3422
3436
|
}
|
|
3423
3437
|
return name;
|
|
3424
3438
|
}
|
|
3425
3439
|
function _getEvtNamespace(eventName, evtNamespace) {
|
|
3426
3440
|
var _a;
|
|
3427
3441
|
if (evtNamespace) {
|
|
3428
|
-
var theNamespace_1 = STR_EMPTY;
|
|
3442
|
+
var theNamespace_1 = STR_EMPTY$1;
|
|
3429
3443
|
if (isArray(evtNamespace)) {
|
|
3430
|
-
theNamespace_1 = STR_EMPTY;
|
|
3444
|
+
theNamespace_1 = STR_EMPTY$1;
|
|
3431
3445
|
arrForEach(evtNamespace, function (name) {
|
|
3432
3446
|
name = _normalizeNamespace(name);
|
|
3433
3447
|
if (name) {
|
|
@@ -3445,13 +3459,13 @@ function _getEvtNamespace(eventName, evtNamespace) {
|
|
|
3445
3459
|
if (theNamespace_1[0] !== ".") {
|
|
3446
3460
|
theNamespace_1 = "." + theNamespace_1;
|
|
3447
3461
|
}
|
|
3448
|
-
eventName = (eventName || STR_EMPTY) + theNamespace_1;
|
|
3462
|
+
eventName = (eventName || STR_EMPTY$1) + theNamespace_1;
|
|
3449
3463
|
}
|
|
3450
3464
|
}
|
|
3451
|
-
var parsedEvent = (eventNamespace.exec(eventName || STR_EMPTY) || []);
|
|
3465
|
+
var parsedEvent = (eventNamespace.exec(eventName || STR_EMPTY$1) || []);
|
|
3452
3466
|
return _a = {},
|
|
3453
3467
|
_a[_DYN_TYPE ] = parsedEvent[1],
|
|
3454
|
-
_a.ns = ((parsedEvent[2] || STR_EMPTY).replace(rRemoveEmptyNs, ".").replace(rRemoveTrailingEmptyNs, STR_EMPTY)[_DYN_SPLIT$1 ](".").sort()).join("."),
|
|
3468
|
+
_a.ns = ((parsedEvent[2] || STR_EMPTY$1).replace(rRemoveEmptyNs, ".").replace(rRemoveTrailingEmptyNs, STR_EMPTY$1)[_DYN_SPLIT$1 ](".").sort()).join("."),
|
|
3455
3469
|
_a;
|
|
3456
3470
|
}
|
|
3457
3471
|
function _getRegisteredEvents(target, evtName, addDefault) {
|
|
@@ -3600,14 +3614,20 @@ var RequestHeaders = createValueMap({
|
|
|
3600
3614
|
var _DYN_SPLIT = "split";
|
|
3601
3615
|
var _DYN_LENGTH$1 = "length";
|
|
3602
3616
|
var _DYN_TO_LOWER_CASE = "toLowerCase";
|
|
3617
|
+
var _DYN_LOCATION = "location";
|
|
3603
3618
|
var _DYN_TO_STRING$1 = "toString";
|
|
3604
3619
|
var _DYN_PUSH$1 = "push";
|
|
3620
|
+
var _DYN_URL_STRING = "urlString";
|
|
3621
|
+
var _DYN_DATA$1 = "data";
|
|
3622
|
+
var _DYN_SET_REQUEST_HEADER = "setRequestHeader";
|
|
3623
|
+
var _DYN_REASON = "reason";
|
|
3624
|
+
var _DYN_MESSAGE = "message";
|
|
3605
3625
|
var _DYN_REMOVE_ITEM = "removeItem";
|
|
3606
3626
|
var _DYN_NAME$1 = "name";
|
|
3607
|
-
var _DYN_MESSAGE = "message";
|
|
3608
3627
|
var _DYN_COUNT$1 = "count";
|
|
3609
3628
|
var _DYN_STRINGIFY$1 = "stringify";
|
|
3610
3629
|
var _DYN_PATHNAME = "pathname";
|
|
3630
|
+
var _DYN_ITEMS_RECEIVED$1 = "itemsReceived";
|
|
3611
3631
|
var _DYN_EXCEPTIONS = "exceptions";
|
|
3612
3632
|
var _DYN_PARSED_STACK = "parsedStack";
|
|
3613
3633
|
var _DYN_PROPERTIES = "properties";
|
|
@@ -3829,6 +3849,54 @@ function AjaxHelperParseDependencyPath(logger, absoluteUrl, method, commandName)
|
|
|
3829
3849
|
data: data
|
|
3830
3850
|
};
|
|
3831
3851
|
}
|
|
3852
|
+
function getResponseText(xhr) {
|
|
3853
|
+
try {
|
|
3854
|
+
return xhr.responseText;
|
|
3855
|
+
}
|
|
3856
|
+
catch (e) {
|
|
3857
|
+
}
|
|
3858
|
+
return null;
|
|
3859
|
+
}
|
|
3860
|
+
function formatErrorMessageXdr(xdr, message) {
|
|
3861
|
+
if (xdr) {
|
|
3862
|
+
return "XDomainRequest,Response:" + getResponseText(xdr) || "";
|
|
3863
|
+
}
|
|
3864
|
+
return message;
|
|
3865
|
+
}
|
|
3866
|
+
function formatErrorMessageXhr(xhr, message) {
|
|
3867
|
+
if (xhr) {
|
|
3868
|
+
return "XMLHttpRequest,Status:" + xhr.status + ",Response:" + getResponseText(xhr) || xhr.response || "";
|
|
3869
|
+
}
|
|
3870
|
+
return message;
|
|
3871
|
+
}
|
|
3872
|
+
function prependTransports(theTransports, newTransports) {
|
|
3873
|
+
if (newTransports) {
|
|
3874
|
+
if (isNumber(newTransports)) {
|
|
3875
|
+
theTransports = [newTransports].concat(theTransports);
|
|
3876
|
+
}
|
|
3877
|
+
else if (isArray(newTransports)) {
|
|
3878
|
+
theTransports = newTransports.concat(theTransports);
|
|
3879
|
+
}
|
|
3880
|
+
}
|
|
3881
|
+
return theTransports;
|
|
3882
|
+
}
|
|
3883
|
+
function parseResponse(response, diagLog) {
|
|
3884
|
+
try {
|
|
3885
|
+
if (response && response !== "") {
|
|
3886
|
+
var result = getJSON().parse(response);
|
|
3887
|
+
if (result && result[_DYN_ITEMS_RECEIVED$1 ] && result[_DYN_ITEMS_RECEIVED$1 ] >= result.itemsAccepted &&
|
|
3888
|
+
result.itemsReceived - result.itemsAccepted === result.errors[_DYN_LENGTH$1 ]) {
|
|
3889
|
+
return result;
|
|
3890
|
+
}
|
|
3891
|
+
}
|
|
3892
|
+
}
|
|
3893
|
+
catch (e) {
|
|
3894
|
+
_throwInternal(diagLog, 1 , 43 , "Cannot parse the response. " + getExceptionName(e), {
|
|
3895
|
+
response: response
|
|
3896
|
+
});
|
|
3897
|
+
}
|
|
3898
|
+
return null;
|
|
3899
|
+
}
|
|
3832
3900
|
|
|
3833
3901
|
var StorageType = createEnumStyle({
|
|
3834
3902
|
LocalStorage: 0 ,
|
|
@@ -3907,7 +3975,7 @@ var Envelope = /** @class */ (function () {
|
|
|
3907
3975
|
_self.sampleRate = 100.0;
|
|
3908
3976
|
_self.tags = {};
|
|
3909
3977
|
_self[_DYN_NAME$1 ] = dataSanitizeString(logger, name) || strNotSpecified;
|
|
3910
|
-
_self
|
|
3978
|
+
_self[_DYN_DATA$1 ] = data;
|
|
3911
3979
|
_self.time = toISOString(new Date());
|
|
3912
3980
|
_self.aiDataContract = {
|
|
3913
3981
|
time: 1 ,
|
|
@@ -4064,8 +4132,8 @@ function _getStackFromErrorObj(errorObj) {
|
|
|
4064
4132
|
else if (getWindow() && getWindow()["opera"] && errorObj[strMessage]) {
|
|
4065
4133
|
details = _getOperaStack(errorObj[_DYN_MESSAGE ]);
|
|
4066
4134
|
}
|
|
4067
|
-
else if (errorObj["reason"] && errorObj
|
|
4068
|
-
details = _convertStackObj(errorObj
|
|
4135
|
+
else if (errorObj["reason"] && errorObj[_DYN_REASON ][strStack]) {
|
|
4136
|
+
details = _convertStackObj(errorObj[_DYN_REASON ][strStack]);
|
|
4069
4137
|
}
|
|
4070
4138
|
else if (isString(errorObj)) {
|
|
4071
4139
|
details = _convertStackObj(errorObj);
|
|
@@ -4536,7 +4604,7 @@ var RemoteDependencyData = /** @class */ (function () {
|
|
|
4536
4604
|
_self.resultCode = resultCode + "";
|
|
4537
4605
|
_self.type = dataSanitizeString(logger, requestAPI);
|
|
4538
4606
|
var dependencyFields = AjaxHelperParseDependencyPath(logger, absoluteUrl, method, commandName);
|
|
4539
|
-
_self
|
|
4607
|
+
_self[_DYN_DATA$1 ] = dataSanitizeUrl(logger, commandName) || dependencyFields[_DYN_DATA$1 ];
|
|
4540
4608
|
_self.target = dataSanitizeString(logger, dependencyFields.target);
|
|
4541
4609
|
if (correlationContext) {
|
|
4542
4610
|
_self.target = "".concat(_self.target, " | ").concat(correlationContext);
|
|
@@ -4702,6 +4770,360 @@ var ContextTagKeys = /** @class */ (function (_super) {
|
|
|
4702
4770
|
|
|
4703
4771
|
var CtxTagKeys = new ContextTagKeys();
|
|
4704
4772
|
|
|
4773
|
+
var STR_EMPTY = "";
|
|
4774
|
+
var SenderPostManager = /** @class */ (function () {
|
|
4775
|
+
function SenderPostManager() {
|
|
4776
|
+
var _syncFetchPayload = 0;
|
|
4777
|
+
var _enableSendPromise;
|
|
4778
|
+
var _isInitialized;
|
|
4779
|
+
var _diagLog;
|
|
4780
|
+
var _isOneDs;
|
|
4781
|
+
var _onCompleteFuncs;
|
|
4782
|
+
var _disableCredentials;
|
|
4783
|
+
var _fallbackInst;
|
|
4784
|
+
var _disableXhr;
|
|
4785
|
+
var _disableBeacon;
|
|
4786
|
+
var _disableBeaconSync;
|
|
4787
|
+
dynamicProto(SenderPostManager, this, function (_self, _base) {
|
|
4788
|
+
var _sendCredentials = true;
|
|
4789
|
+
_initDefaults();
|
|
4790
|
+
_self.initialize = function (config, diagLog) {
|
|
4791
|
+
_diagLog = diagLog;
|
|
4792
|
+
if (_isInitialized) {
|
|
4793
|
+
_throwInternal(_diagLog, 1 , 28 , "Sender is already initialized");
|
|
4794
|
+
}
|
|
4795
|
+
_self.SetConfig(config);
|
|
4796
|
+
_isInitialized = true;
|
|
4797
|
+
};
|
|
4798
|
+
_self["_getDbgPlgTargets"] = function () {
|
|
4799
|
+
return [_isInitialized, _isOneDs, _disableCredentials, _enableSendPromise];
|
|
4800
|
+
};
|
|
4801
|
+
_self.SetConfig = function (config) {
|
|
4802
|
+
try {
|
|
4803
|
+
_onCompleteFuncs = config.senderOnCompleteCallBack || {};
|
|
4804
|
+
_disableCredentials = !!config.disableCredentials;
|
|
4805
|
+
_isOneDs = !!config.isOneDs;
|
|
4806
|
+
_enableSendPromise = !!config.enableSendPromise;
|
|
4807
|
+
_disableXhr = !!config.disableXhr;
|
|
4808
|
+
_disableBeacon = !!config.disableBeacon;
|
|
4809
|
+
_disableBeaconSync = !!config.disableBeaconSync;
|
|
4810
|
+
_fallbackInst = { sendPOST: _xhrSender };
|
|
4811
|
+
if (_disableCredentials) {
|
|
4812
|
+
var location_1 = getLocation();
|
|
4813
|
+
if (location_1 && location_1.protocol && location_1.protocol[_DYN_TO_LOWER_CASE ]() === "file:") {
|
|
4814
|
+
_sendCredentials = false;
|
|
4815
|
+
}
|
|
4816
|
+
}
|
|
4817
|
+
return true;
|
|
4818
|
+
}
|
|
4819
|
+
catch (e) {
|
|
4820
|
+
}
|
|
4821
|
+
return false;
|
|
4822
|
+
};
|
|
4823
|
+
_self.getSyncFetchPayload = function () {
|
|
4824
|
+
return _syncFetchPayload;
|
|
4825
|
+
};
|
|
4826
|
+
_self.getXhrInst = function (transports, sync) {
|
|
4827
|
+
if (transports && transports[_DYN_LENGTH$1 ]) {
|
|
4828
|
+
return _getSenderInterface(transports, sync);
|
|
4829
|
+
}
|
|
4830
|
+
return null;
|
|
4831
|
+
};
|
|
4832
|
+
_self.getFallbackInst = function () {
|
|
4833
|
+
return _fallbackInst;
|
|
4834
|
+
};
|
|
4835
|
+
_self._doTeardown = function (unloadCtx, unloadState) {
|
|
4836
|
+
_initDefaults();
|
|
4837
|
+
};
|
|
4838
|
+
function _onSuccess(res, onComplete) {
|
|
4839
|
+
_doOnComplete(onComplete, 200, {}, res);
|
|
4840
|
+
}
|
|
4841
|
+
function _onError(message, onComplete) {
|
|
4842
|
+
_throwInternal(_diagLog, 2 , 26 , "Failed to send telemetry.", { message: message });
|
|
4843
|
+
_doOnComplete(onComplete, 400, {});
|
|
4844
|
+
}
|
|
4845
|
+
function _onNoPayloadUrl(onComplete) {
|
|
4846
|
+
_onError("No endpoint url is provided for the batch", onComplete);
|
|
4847
|
+
}
|
|
4848
|
+
function _getSenderInterface(transports, syncSupport) {
|
|
4849
|
+
var transportType = null;
|
|
4850
|
+
var sendPostFunc = null;
|
|
4851
|
+
var lp = 0;
|
|
4852
|
+
while (sendPostFunc == null && lp < transports[_DYN_LENGTH$1 ]) {
|
|
4853
|
+
transportType = transports[lp];
|
|
4854
|
+
if (!_disableXhr && transportType === 1 ) {
|
|
4855
|
+
if (useXDomainRequest()) {
|
|
4856
|
+
sendPostFunc = _xdrSender;
|
|
4857
|
+
}
|
|
4858
|
+
else if (isXhrSupported()) {
|
|
4859
|
+
sendPostFunc = _xhrSender;
|
|
4860
|
+
}
|
|
4861
|
+
}
|
|
4862
|
+
else if (transportType === 2 && isFetchSupported(syncSupport)) {
|
|
4863
|
+
sendPostFunc = _doFetchSender;
|
|
4864
|
+
}
|
|
4865
|
+
else if (transportType === 3 && isBeaconsSupported() && (syncSupport ? !_disableBeaconSync : !_disableBeacon)) {
|
|
4866
|
+
sendPostFunc = _beaconSender;
|
|
4867
|
+
}
|
|
4868
|
+
lp++;
|
|
4869
|
+
}
|
|
4870
|
+
if (sendPostFunc) {
|
|
4871
|
+
return {
|
|
4872
|
+
sendPOST: sendPostFunc
|
|
4873
|
+
};
|
|
4874
|
+
}
|
|
4875
|
+
return null;
|
|
4876
|
+
}
|
|
4877
|
+
function _doOnComplete(oncomplete, status, headers, response) {
|
|
4878
|
+
try {
|
|
4879
|
+
oncomplete && oncomplete(status, headers, response);
|
|
4880
|
+
}
|
|
4881
|
+
catch (e) {
|
|
4882
|
+
}
|
|
4883
|
+
}
|
|
4884
|
+
function _doBeaconSend(payload, oncomplete) {
|
|
4885
|
+
var nav = getNavigator();
|
|
4886
|
+
var url = payload[_DYN_URL_STRING ];
|
|
4887
|
+
if (!url) {
|
|
4888
|
+
_onNoPayloadUrl(oncomplete);
|
|
4889
|
+
return true;
|
|
4890
|
+
}
|
|
4891
|
+
var data = payload[_DYN_DATA$1 ];
|
|
4892
|
+
var plainTextBatch = new Blob([data], { type: "text/plain;charset=UTF-8" });
|
|
4893
|
+
var queued = nav.sendBeacon(url, plainTextBatch);
|
|
4894
|
+
return queued;
|
|
4895
|
+
}
|
|
4896
|
+
function _beaconSender(payload, oncomplete, sync) {
|
|
4897
|
+
var data = payload[_DYN_DATA$1 ];
|
|
4898
|
+
if (data) {
|
|
4899
|
+
if (!_doBeaconSend(payload, oncomplete)) {
|
|
4900
|
+
var onRetry = _onCompleteFuncs && _onCompleteFuncs.beaconOnRetry;
|
|
4901
|
+
if (onRetry && isFunction(onRetry)) {
|
|
4902
|
+
onRetry(payload, oncomplete, _doBeaconSend);
|
|
4903
|
+
}
|
|
4904
|
+
else {
|
|
4905
|
+
_fallbackInst && _fallbackInst.sendPOST(payload, oncomplete, true);
|
|
4906
|
+
_throwInternal(_diagLog, 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with normal sender.");
|
|
4907
|
+
}
|
|
4908
|
+
}
|
|
4909
|
+
else {
|
|
4910
|
+
_onSuccess(null, oncomplete);
|
|
4911
|
+
}
|
|
4912
|
+
}
|
|
4913
|
+
return;
|
|
4914
|
+
}
|
|
4915
|
+
function _xhrSender(payload, oncomplete, sync) {
|
|
4916
|
+
var thePromise;
|
|
4917
|
+
var resolveFunc;
|
|
4918
|
+
var rejectFunc;
|
|
4919
|
+
var headers = payload.headers || {};
|
|
4920
|
+
if (!sync && _enableSendPromise) {
|
|
4921
|
+
thePromise = createPromise(function (resolve, reject) {
|
|
4922
|
+
resolveFunc = resolve;
|
|
4923
|
+
rejectFunc = reject;
|
|
4924
|
+
});
|
|
4925
|
+
}
|
|
4926
|
+
var xhr = new XMLHttpRequest();
|
|
4927
|
+
var endPointUrl = payload[_DYN_URL_STRING ];
|
|
4928
|
+
if (!endPointUrl) {
|
|
4929
|
+
_onNoPayloadUrl(oncomplete);
|
|
4930
|
+
resolveFunc && resolveFunc(false);
|
|
4931
|
+
return;
|
|
4932
|
+
}
|
|
4933
|
+
try {
|
|
4934
|
+
xhr[DisabledPropertyName] = true;
|
|
4935
|
+
}
|
|
4936
|
+
catch (e) {
|
|
4937
|
+
}
|
|
4938
|
+
xhr.open("POST", endPointUrl, !sync);
|
|
4939
|
+
xhr[_DYN_SET_REQUEST_HEADER ]("Content-type", "application/json");
|
|
4940
|
+
if (isInternalApplicationInsightsEndpoint(endPointUrl)) {
|
|
4941
|
+
xhr[_DYN_SET_REQUEST_HEADER ](RequestHeaders[6 ], RequestHeaders[7 ]);
|
|
4942
|
+
}
|
|
4943
|
+
arrForEach(objKeys(headers), function (headerName) {
|
|
4944
|
+
xhr[_DYN_SET_REQUEST_HEADER ](headerName, headers[headerName]);
|
|
4945
|
+
});
|
|
4946
|
+
xhr.onreadystatechange = function () {
|
|
4947
|
+
var response = getResponseText(xhr);
|
|
4948
|
+
var onReadyFunc = _onCompleteFuncs && _onCompleteFuncs.xhrOnComplete;
|
|
4949
|
+
var onReadyFuncExist = onReadyFunc && isFunction(onReadyFunc);
|
|
4950
|
+
if (onReadyFuncExist) {
|
|
4951
|
+
onReadyFunc(xhr, oncomplete, payload);
|
|
4952
|
+
}
|
|
4953
|
+
if (xhr.readyState === 4) {
|
|
4954
|
+
if (!onReadyFuncExist) {
|
|
4955
|
+
_doOnComplete(oncomplete, xhr.status, {}, response);
|
|
4956
|
+
}
|
|
4957
|
+
resolveFunc && resolveFunc(true);
|
|
4958
|
+
}
|
|
4959
|
+
};
|
|
4960
|
+
xhr.onerror = function (event) {
|
|
4961
|
+
_doOnComplete(oncomplete, 400, {}, formatErrorMessageXhr(xhr));
|
|
4962
|
+
rejectFunc && rejectFunc(event);
|
|
4963
|
+
};
|
|
4964
|
+
xhr.ontimeout = function () {
|
|
4965
|
+
_doOnComplete(oncomplete, 500, {}, formatErrorMessageXhr(xhr));
|
|
4966
|
+
resolveFunc && resolveFunc(false);
|
|
4967
|
+
};
|
|
4968
|
+
xhr.send(payload[_DYN_DATA$1 ]);
|
|
4969
|
+
return thePromise;
|
|
4970
|
+
}
|
|
4971
|
+
function _doFetchSender(payload, oncomplete, sync) {
|
|
4972
|
+
var _a;
|
|
4973
|
+
var endPointUrl = payload[_DYN_URL_STRING ];
|
|
4974
|
+
var batch = payload[_DYN_DATA$1 ];
|
|
4975
|
+
var plainTextBatch = new Blob([batch], { type: "application/json" });
|
|
4976
|
+
var thePromise;
|
|
4977
|
+
var resolveFunc;
|
|
4978
|
+
var rejectFunc;
|
|
4979
|
+
var requestHeaders = new Headers();
|
|
4980
|
+
var batchLength = batch[_DYN_LENGTH$1 ];
|
|
4981
|
+
var ignoreResponse = false;
|
|
4982
|
+
var responseHandled = false;
|
|
4983
|
+
var headers = payload.headers || {};
|
|
4984
|
+
if (isInternalApplicationInsightsEndpoint(endPointUrl)) {
|
|
4985
|
+
requestHeaders.append(RequestHeaders[6 ], RequestHeaders[7 ]);
|
|
4986
|
+
}
|
|
4987
|
+
arrForEach(objKeys(headers), function (headerName) {
|
|
4988
|
+
requestHeaders.append(headerName, headers[headerName]);
|
|
4989
|
+
});
|
|
4990
|
+
var init = (_a = {
|
|
4991
|
+
method: "POST",
|
|
4992
|
+
headers: requestHeaders,
|
|
4993
|
+
body: plainTextBatch
|
|
4994
|
+
},
|
|
4995
|
+
_a[DisabledPropertyName] = true
|
|
4996
|
+
,
|
|
4997
|
+
_a);
|
|
4998
|
+
if (_sendCredentials && _isOneDs) {
|
|
4999
|
+
init.credentials = "include";
|
|
5000
|
+
}
|
|
5001
|
+
if (sync) {
|
|
5002
|
+
init.keepalive = true;
|
|
5003
|
+
ignoreResponse = true;
|
|
5004
|
+
_syncFetchPayload += batchLength;
|
|
5005
|
+
}
|
|
5006
|
+
var request = new Request(endPointUrl, init);
|
|
5007
|
+
try {
|
|
5008
|
+
request[DisabledPropertyName] = true;
|
|
5009
|
+
}
|
|
5010
|
+
catch (e) {
|
|
5011
|
+
}
|
|
5012
|
+
if (!sync && _enableSendPromise) {
|
|
5013
|
+
thePromise = createPromise(function (resolve, reject) {
|
|
5014
|
+
resolveFunc = resolve;
|
|
5015
|
+
rejectFunc = reject;
|
|
5016
|
+
});
|
|
5017
|
+
}
|
|
5018
|
+
if (!endPointUrl) {
|
|
5019
|
+
_onNoPayloadUrl(oncomplete);
|
|
5020
|
+
resolveFunc && resolveFunc(false);
|
|
5021
|
+
return;
|
|
5022
|
+
}
|
|
5023
|
+
try {
|
|
5024
|
+
doAwaitResponse(fetch(request), function (result) {
|
|
5025
|
+
if (sync) {
|
|
5026
|
+
_syncFetchPayload -= batchLength;
|
|
5027
|
+
batchLength = 0;
|
|
5028
|
+
}
|
|
5029
|
+
if (!responseHandled) {
|
|
5030
|
+
responseHandled = true;
|
|
5031
|
+
if (!result.rejected) {
|
|
5032
|
+
var response_1 = result.value;
|
|
5033
|
+
if (!response_1.ok) {
|
|
5034
|
+
_doOnComplete(oncomplete, 400, {}, response_1.statusText);
|
|
5035
|
+
resolveFunc && resolveFunc(false);
|
|
5036
|
+
}
|
|
5037
|
+
else {
|
|
5038
|
+
doAwaitResponse(response_1.text(), function (resp) {
|
|
5039
|
+
var status = response_1.status;
|
|
5040
|
+
var onCompleteFunc = _onCompleteFuncs.fetchOnComplete;
|
|
5041
|
+
if (onCompleteFunc && isFunction(onCompleteFunc)) {
|
|
5042
|
+
onCompleteFunc(response_1, oncomplete, resp.value || STR_EMPTY, payload);
|
|
5043
|
+
}
|
|
5044
|
+
else {
|
|
5045
|
+
_doOnComplete(oncomplete, status, {}, resp.value || STR_EMPTY);
|
|
5046
|
+
}
|
|
5047
|
+
resolveFunc && resolveFunc(true);
|
|
5048
|
+
});
|
|
5049
|
+
}
|
|
5050
|
+
}
|
|
5051
|
+
else {
|
|
5052
|
+
_doOnComplete(oncomplete, 400, {}, result[_DYN_REASON ] && result[_DYN_REASON ][_DYN_MESSAGE ]);
|
|
5053
|
+
rejectFunc && rejectFunc(result[_DYN_REASON ]);
|
|
5054
|
+
}
|
|
5055
|
+
}
|
|
5056
|
+
});
|
|
5057
|
+
}
|
|
5058
|
+
catch (e) {
|
|
5059
|
+
if (!responseHandled) {
|
|
5060
|
+
_doOnComplete(oncomplete, 400, {}, dumpObj(e));
|
|
5061
|
+
rejectFunc && rejectFunc(e);
|
|
5062
|
+
}
|
|
5063
|
+
}
|
|
5064
|
+
if (ignoreResponse && !responseHandled) {
|
|
5065
|
+
responseHandled = true;
|
|
5066
|
+
_doOnComplete(oncomplete, 200, {});
|
|
5067
|
+
resolveFunc && resolveFunc(true);
|
|
5068
|
+
}
|
|
5069
|
+
return thePromise;
|
|
5070
|
+
}
|
|
5071
|
+
function _xdrSender(payload, oncomplete, sync) {
|
|
5072
|
+
var _window = getWindow();
|
|
5073
|
+
var xdr = new XDomainRequest();
|
|
5074
|
+
var data = payload[_DYN_DATA$1 ];
|
|
5075
|
+
xdr.onload = function () {
|
|
5076
|
+
var response = getResponseText(xdr);
|
|
5077
|
+
var onloadFunc = _onCompleteFuncs && _onCompleteFuncs.xdrOnComplete;
|
|
5078
|
+
if (onloadFunc && isFunction(onloadFunc)) {
|
|
5079
|
+
onloadFunc(xdr, oncomplete, payload);
|
|
5080
|
+
}
|
|
5081
|
+
else {
|
|
5082
|
+
_doOnComplete(oncomplete, 200, {}, response);
|
|
5083
|
+
}
|
|
5084
|
+
};
|
|
5085
|
+
xdr.onerror = function () {
|
|
5086
|
+
_doOnComplete(oncomplete, 400, {}, formatErrorMessageXdr(xdr));
|
|
5087
|
+
};
|
|
5088
|
+
xdr.ontimeout = function () {
|
|
5089
|
+
_doOnComplete(oncomplete, 500, {});
|
|
5090
|
+
};
|
|
5091
|
+
xdr.onprogress = function () { };
|
|
5092
|
+
var hostingProtocol = _window && _window[_DYN_LOCATION ] && _window[_DYN_LOCATION ].protocol || "";
|
|
5093
|
+
var endpoint = payload[_DYN_URL_STRING ];
|
|
5094
|
+
if (!endpoint) {
|
|
5095
|
+
_onNoPayloadUrl(oncomplete);
|
|
5096
|
+
return;
|
|
5097
|
+
}
|
|
5098
|
+
if (endpoint.lastIndexOf(hostingProtocol, 0) !== 0) {
|
|
5099
|
+
var msg = "Cannot send XDomain request. The endpoint URL protocol doesn't match the hosting page protocol.";
|
|
5100
|
+
_throwInternal(_diagLog, 2 , 40 , ". " + msg);
|
|
5101
|
+
_onError(msg, oncomplete);
|
|
5102
|
+
return;
|
|
5103
|
+
}
|
|
5104
|
+
var endpointUrl = endpoint.replace(/^(https?:)/, "");
|
|
5105
|
+
xdr.open("POST", endpointUrl);
|
|
5106
|
+
xdr.send(data);
|
|
5107
|
+
}
|
|
5108
|
+
function _initDefaults() {
|
|
5109
|
+
_syncFetchPayload = 0;
|
|
5110
|
+
_isInitialized = false;
|
|
5111
|
+
_enableSendPromise = false;
|
|
5112
|
+
_diagLog = null;
|
|
5113
|
+
_isOneDs = null;
|
|
5114
|
+
_onCompleteFuncs = null;
|
|
5115
|
+
_disableCredentials = null;
|
|
5116
|
+
_fallbackInst = null;
|
|
5117
|
+
_disableXhr = false;
|
|
5118
|
+
_disableBeacon = false;
|
|
5119
|
+
_disableBeaconSync = false;
|
|
5120
|
+
}
|
|
5121
|
+
});
|
|
5122
|
+
}
|
|
5123
|
+
SenderPostManager.__ieDyn=1;
|
|
5124
|
+
return SenderPostManager;
|
|
5125
|
+
}());
|
|
5126
|
+
|
|
4705
5127
|
function _disableEvents(target, evtNamespace) {
|
|
4706
5128
|
eventOff(target, null, null, evtNamespace);
|
|
4707
5129
|
}
|
|
@@ -4840,43 +5262,42 @@ var _DYN_EVENTS_LIMIT_IN_MEM = "eventsLimitInMem";
|
|
|
4840
5262
|
var _DYN_PUSH = "push";
|
|
4841
5263
|
var _DYN_EMIT_LINE_DELIMITED_0 = "emitLineDelimitedJson";
|
|
4842
5264
|
var _DYN_CLEAR = "clear";
|
|
4843
|
-
var _DYN_BATCH_PAYLOADS = "batchPayloads";
|
|
4844
5265
|
var _DYN_CREATE_NEW = "createNew";
|
|
4845
5266
|
var _DYN_MARK_AS_SENT = "markAsSent";
|
|
4846
5267
|
var _DYN_CLEAR_SENT = "clearSent";
|
|
4847
5268
|
var _DYN_BUFFER_OVERRIDE = "bufferOverride";
|
|
4848
5269
|
var _DYN__BUFFER__KEY = "BUFFER_KEY";
|
|
4849
5270
|
var _DYN__SENT__BUFFER__KEY = "SENT_BUFFER_KEY";
|
|
4850
|
-
var _DYN_CONCAT = "concat";
|
|
4851
5271
|
var _DYN__MAX__BUFFER__SIZE = "MAX_BUFFER_SIZE";
|
|
4852
|
-
var _DYN_SEND_POST = "sendPOST";
|
|
4853
5272
|
var _DYN_TRIGGER_SEND = "triggerSend";
|
|
4854
5273
|
var _DYN_DIAG_LOG = "diagLog";
|
|
5274
|
+
var _DYN_INITIALIZE = "initialize";
|
|
4855
5275
|
var _DYN__SENDER = "_sender";
|
|
4856
5276
|
var _DYN_CUSTOM_HEADERS = "customHeaders";
|
|
4857
5277
|
var _DYN_MAX_BATCH_SIZE_IN_BY1 = "maxBatchSizeInBytes";
|
|
4858
5278
|
var _DYN_ONUNLOAD_DISABLE_BEA2 = "onunloadDisableBeacon";
|
|
4859
5279
|
var _DYN_IS_BEACON_API_DISABL3 = "isBeaconApiDisabled";
|
|
4860
5280
|
var _DYN_ALWAYS_USE_XHR_OVERR4 = "alwaysUseXhrOverride";
|
|
5281
|
+
var _DYN_DISABLE_XHR = "disableXhr";
|
|
4861
5282
|
var _DYN_ENABLE_SESSION_STORA5 = "enableSessionStorageBuffer";
|
|
4862
5283
|
var _DYN__BUFFER = "_buffer";
|
|
4863
5284
|
var _DYN_ONUNLOAD_DISABLE_FET6 = "onunloadDisableFetch";
|
|
4864
5285
|
var _DYN_DISABLE_SEND_BEACON_7 = "disableSendBeaconSplit";
|
|
4865
5286
|
var _DYN_INSTRUMENTATION_KEY = "instrumentationKey";
|
|
5287
|
+
var _DYN_ENABLE_SEND_PROMISE = "enableSendPromise";
|
|
5288
|
+
var _DYN_GET_XHR_INST = "getXhrInst";
|
|
4866
5289
|
var _DYN_UNLOAD_TRANSPORTS = "unloadTransports";
|
|
4867
5290
|
var _DYN_CONVERT_UNDEFINED = "convertUndefined";
|
|
4868
5291
|
var _DYN_MAX_BATCH_INTERVAL = "maxBatchInterval";
|
|
4869
5292
|
var _DYN_SERIALIZE = "serialize";
|
|
4870
|
-
var _DYN__XHR_READY_STATE_CHA8 = "_xhrReadyStateChange";
|
|
4871
5293
|
var _DYN__ON_ERROR = "_onError";
|
|
4872
5294
|
var _DYN__ON_PARTIAL_SUCCESS = "_onPartialSuccess";
|
|
4873
5295
|
var _DYN__ON_SUCCESS = "_onSuccess";
|
|
4874
5296
|
var _DYN_ITEMS_ACCEPTED = "itemsAccepted";
|
|
4875
5297
|
var _DYN_ITEMS_RECEIVED = "itemsReceived";
|
|
5298
|
+
var _DYN_ORI_PAYLOAD = "oriPayload";
|
|
4876
5299
|
var _DYN_BASE_TYPE = "baseType";
|
|
4877
5300
|
var _DYN_SAMPLE_RATE = "sampleRate";
|
|
4878
|
-
var _DYN_ORI_PAYLOAD = "oriPayload";
|
|
4879
|
-
var _DYN_SET_REQUEST_HEADER = "setRequestHeader";
|
|
4880
5301
|
var _DYN_EVENTS_SEND_REQUEST = "eventsSendRequest";
|
|
4881
5302
|
var _DYN_GET_SAMPLING_SCORE = "getSamplingScore";
|
|
4882
5303
|
var _DYN_GET_HASH_CODE_SCORE = "getHashCodeScore";
|
|
@@ -4990,7 +5411,7 @@ function EnvelopeCreatorInit(logger, telemetryItem) {
|
|
|
4990
5411
|
}
|
|
4991
5412
|
}
|
|
4992
5413
|
var EnvelopeCreator = {
|
|
4993
|
-
Version: '3.1.1-nightly3.2403-
|
|
5414
|
+
Version: '3.1.1-nightly3.2403-03'
|
|
4994
5415
|
};
|
|
4995
5416
|
function DependencyEnvelopeCreator(logger, telemetryItem, customUndefinedValue) {
|
|
4996
5417
|
EnvelopeCreatorInit(logger, telemetryItem);
|
|
@@ -5181,7 +5602,7 @@ var BaseSendBuffer = /** @class */ (function () {
|
|
|
5181
5602
|
_self.getItems = function () {
|
|
5182
5603
|
return _buffer.slice(0);
|
|
5183
5604
|
};
|
|
5184
|
-
_self
|
|
5605
|
+
_self.batchPayloads = function (payload) {
|
|
5185
5606
|
if (payload && payload[_DYN_LENGTH ] > 0) {
|
|
5186
5607
|
var batch = config[_DYN_EMIT_LINE_DELIMITED_0 ] ?
|
|
5187
5608
|
payload.join("\n") :
|
|
@@ -5231,7 +5652,7 @@ var SessionStorageSendBuffer = /** @class */ (function (_super) {
|
|
|
5231
5652
|
dynamicProto(SessionStorageSendBuffer, _this, function (_self, _base) {
|
|
5232
5653
|
var bufferItems = _getBuffer(SessionStorageSendBuffer[_DYN__BUFFER__KEY ]);
|
|
5233
5654
|
var notDeliveredItems = _getBuffer(SessionStorageSendBuffer[_DYN__SENT__BUFFER__KEY ]);
|
|
5234
|
-
var buffer = _self._set(bufferItems
|
|
5655
|
+
var buffer = _self._set(bufferItems.concat(notDeliveredItems));
|
|
5235
5656
|
if (buffer[_DYN_LENGTH ] > SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE ]) {
|
|
5236
5657
|
buffer[_DYN_LENGTH ] = SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE ];
|
|
5237
5658
|
}
|
|
@@ -5258,7 +5679,7 @@ var SessionStorageSendBuffer = /** @class */ (function (_super) {
|
|
|
5258
5679
|
_setBuffer(SessionStorageSendBuffer[_DYN__BUFFER__KEY ], _self._set(_removePayloadsFromBuffer(payload, _self[_DYN__GET ]())));
|
|
5259
5680
|
var sentElements = _getBuffer(SessionStorageSendBuffer[_DYN__SENT__BUFFER__KEY ]);
|
|
5260
5681
|
if (sentElements instanceof Array && payload instanceof Array) {
|
|
5261
|
-
sentElements = sentElements
|
|
5682
|
+
sentElements = sentElements.concat(payload);
|
|
5262
5683
|
if (sentElements[_DYN_LENGTH ] > SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE ]) {
|
|
5263
5684
|
_throwInternal(logger, 1 , 67 , "Sent buffer reached its maximum size: " + sentElements[_DYN_LENGTH ], true);
|
|
5264
5685
|
sentElements[_DYN_LENGTH ] = SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE ];
|
|
@@ -5491,7 +5912,7 @@ var HashCodeScoreGenerator = /** @class */ (function () {
|
|
|
5491
5912
|
return 0;
|
|
5492
5913
|
}
|
|
5493
5914
|
while (input[_DYN_LENGTH ] < MIN_INPUT_LENGTH) {
|
|
5494
|
-
input = input
|
|
5915
|
+
input = input.concat(input);
|
|
5495
5916
|
}
|
|
5496
5917
|
var hash = 5381;
|
|
5497
5918
|
for (var i = 0; i < input[_DYN_LENGTH ]; ++i) {
|
|
@@ -5571,18 +5992,7 @@ function _getResponseText(xhr) {
|
|
|
5571
5992
|
return null;
|
|
5572
5993
|
}
|
|
5573
5994
|
function isOverrideFn(httpXHROverride) {
|
|
5574
|
-
return httpXHROverride && httpXHROverride
|
|
5575
|
-
}
|
|
5576
|
-
function _prependTransports(theTransports, newTransports) {
|
|
5577
|
-
if (newTransports) {
|
|
5578
|
-
if (isNumber(newTransports)) {
|
|
5579
|
-
theTransports = [newTransports][_DYN_CONCAT ](theTransports);
|
|
5580
|
-
}
|
|
5581
|
-
else if (isArray(newTransports)) {
|
|
5582
|
-
theTransports = newTransports[_DYN_CONCAT ](theTransports);
|
|
5583
|
-
}
|
|
5584
|
-
}
|
|
5585
|
-
return theTransports;
|
|
5995
|
+
return httpXHROverride && httpXHROverride.sendPOST;
|
|
5586
5996
|
}
|
|
5587
5997
|
var defaultAppInsightsChannelConfig = objDeepFreeze((_a = {
|
|
5588
5998
|
endpointUrl: cfgDfValidate(isTruthy, DEFAULT_BREEZE_ENDPOINT + DEFAULT_BREEZE_PATH)
|
|
@@ -5595,7 +6005,7 @@ var defaultAppInsightsChannelConfig = objDeepFreeze((_a = {
|
|
|
5595
6005
|
_a.isRetryDisabled = cfgDfBoolean(),
|
|
5596
6006
|
_a[_DYN_IS_BEACON_API_DISABL3 ] = cfgDfBoolean(true),
|
|
5597
6007
|
_a[_DYN_DISABLE_SEND_BEACON_7 ] = cfgDfBoolean(true),
|
|
5598
|
-
_a
|
|
6008
|
+
_a[_DYN_DISABLE_XHR ] = cfgDfBoolean(),
|
|
5599
6009
|
_a[_DYN_ONUNLOAD_DISABLE_FET6 ] = cfgDfBoolean(),
|
|
5600
6010
|
_a[_DYN_ONUNLOAD_DISABLE_BEA2 ] = cfgDfBoolean(),
|
|
5601
6011
|
_a[_DYN_INSTRUMENTATION_KEY ] = UNDEFINED_VALUE,
|
|
@@ -5660,6 +6070,7 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5660
6070
|
var _xhrSend;
|
|
5661
6071
|
var _fallbackSend;
|
|
5662
6072
|
var _disableBeaconSplit;
|
|
6073
|
+
var _sendPostMgr;
|
|
5663
6074
|
dynamicProto(Sender, _this, function (_self, _base) {
|
|
5664
6075
|
_initDefaults();
|
|
5665
6076
|
_self.pause = function () {
|
|
@@ -5704,11 +6115,11 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5704
6115
|
_self.addHeader = function (name, value) {
|
|
5705
6116
|
_headers[name] = value;
|
|
5706
6117
|
};
|
|
5707
|
-
_self
|
|
6118
|
+
_self[_DYN_INITIALIZE ] = function (config, core, extensions, pluginChain) {
|
|
5708
6119
|
if (_self.isInitialized()) {
|
|
5709
6120
|
_throwInternal(_self[_DYN_DIAG_LOG ](), 1 , 28 , "Sender is already initialized");
|
|
5710
6121
|
}
|
|
5711
|
-
_base
|
|
6122
|
+
_base[_DYN_INITIALIZE ](config, core, extensions, pluginChain);
|
|
5712
6123
|
var identifier = _self.identifier;
|
|
5713
6124
|
_serializer = new Serializer(core.logger);
|
|
5714
6125
|
_consecutiveErrors = 0;
|
|
@@ -5743,7 +6154,7 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5743
6154
|
_beaconOnUnloadSupported = senderConfig[_DYN_ONUNLOAD_DISABLE_BEA2 ] === false && isBeaconsSupported();
|
|
5744
6155
|
_beaconNormalSupported = senderConfig[_DYN_IS_BEACON_API_DISABL3 ] === false && isBeaconsSupported();
|
|
5745
6156
|
_alwaysUseCustomSend = senderConfig[_DYN_ALWAYS_USE_XHR_OVERR4 ];
|
|
5746
|
-
_disableXhr = !!senderConfig
|
|
6157
|
+
_disableXhr = !!senderConfig[_DYN_DISABLE_XHR ];
|
|
5747
6158
|
var bufferOverride = senderConfig[_DYN_BUFFER_OVERRIDE ];
|
|
5748
6159
|
var canUseSessionStorage = !!senderConfig[_DYN_ENABLE_SESSION_STORA5 ] &&
|
|
5749
6160
|
(!!bufferOverride || utlCanUseSessionStorage());
|
|
@@ -5785,13 +6196,21 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5785
6196
|
else {
|
|
5786
6197
|
_customHeaders = null;
|
|
5787
6198
|
}
|
|
5788
|
-
_enableSendPromise = senderConfig
|
|
6199
|
+
_enableSendPromise = senderConfig[_DYN_ENABLE_SEND_PROMISE ];
|
|
6200
|
+
var sendPostConfig = _getSendPostMgrConfig();
|
|
6201
|
+
if (!_sendPostMgr) {
|
|
6202
|
+
_sendPostMgr = new SenderPostManager();
|
|
6203
|
+
_sendPostMgr[_DYN_INITIALIZE ](sendPostConfig, diagLog);
|
|
6204
|
+
}
|
|
6205
|
+
else {
|
|
6206
|
+
_sendPostMgr.SetConfig(sendPostConfig);
|
|
6207
|
+
}
|
|
5789
6208
|
var customInterface = senderConfig.httpXHROverride;
|
|
5790
6209
|
var httpInterface = null;
|
|
5791
6210
|
var syncInterface = null;
|
|
5792
|
-
var theTransports =
|
|
5793
|
-
httpInterface =
|
|
5794
|
-
var xhrInterface =
|
|
6211
|
+
var theTransports = prependTransports([3 , 1 , 2 ], senderConfig.transports);
|
|
6212
|
+
httpInterface = _sendPostMgr && _sendPostMgr[_DYN_GET_XHR_INST ](theTransports, false);
|
|
6213
|
+
var xhrInterface = _sendPostMgr && _sendPostMgr.getFallbackInst();
|
|
5795
6214
|
_xhrSend = function (payload, isAsync) {
|
|
5796
6215
|
return _doSend(xhrInterface, payload, isAsync);
|
|
5797
6216
|
};
|
|
@@ -5805,11 +6224,11 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5805
6224
|
if (_fetchKeepAlive) {
|
|
5806
6225
|
_syncUnloadSender = _fetchKeepAliveSender;
|
|
5807
6226
|
}
|
|
5808
|
-
var syncTransports =
|
|
6227
|
+
var syncTransports = prependTransports([3 , 1 ], senderConfig[_DYN_UNLOAD_TRANSPORTS ]);
|
|
5809
6228
|
if (!_fetchKeepAlive) {
|
|
5810
6229
|
syncTransports = syncTransports.filter(function (transport) { return transport !== 2 ; });
|
|
5811
6230
|
}
|
|
5812
|
-
syncInterface =
|
|
6231
|
+
syncInterface = _sendPostMgr && _sendPostMgr[_DYN_GET_XHR_INST ](syncTransports, true);
|
|
5813
6232
|
syncInterface = _alwaysUseCustomSend ? customInterface : (syncInterface || customInterface);
|
|
5814
6233
|
if ((_alwaysUseCustomSend || senderConfig[_DYN_UNLOAD_TRANSPORTS ] || !_syncUnloadSender) && syncInterface) {
|
|
5815
6234
|
_syncUnloadSender = function (payload, isAsync) {
|
|
@@ -5851,10 +6270,8 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5851
6270
|
_self.isCompletelyIdle = function () {
|
|
5852
6271
|
return !_paused && _syncFetchPayload === 0 && _self._buffer[_DYN_COUNT ]() === 0;
|
|
5853
6272
|
};
|
|
5854
|
-
_self
|
|
5855
|
-
|
|
5856
|
-
_checkResponsStatus(xhr.status, payload, xhr.responseURL, countOfItemsInPayload, _formatErrorMessageXhr(xhr), _getResponseText(xhr) || xhr.response);
|
|
5857
|
-
}
|
|
6273
|
+
_self._xhrReadyStateChange = function (xhr, payload, countOfItemsInPayload) {
|
|
6274
|
+
return _xhrReadyStateChange(xhr, payload, countOfItemsInPayload);
|
|
5858
6275
|
};
|
|
5859
6276
|
_self[_DYN_TRIGGER_SEND ] = function (async, forcedSender, sendReason) {
|
|
5860
6277
|
if (async === void 0) { async = true; }
|
|
@@ -5930,7 +6347,7 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5930
6347
|
_self[_DYN__ON_SUCCESS ](payload, results[_DYN_ITEMS_ACCEPTED ]);
|
|
5931
6348
|
}
|
|
5932
6349
|
if (failed[_DYN_LENGTH ] > 0) {
|
|
5933
|
-
_self[_DYN__ON_ERROR ](failed,
|
|
6350
|
+
_self[_DYN__ON_ERROR ](failed, formatErrorMessageXhr(null, ["partial success", results[_DYN_ITEMS_ACCEPTED ], "of", results.itemsReceived].join(" ")));
|
|
5934
6351
|
}
|
|
5935
6352
|
if (retry[_DYN_LENGTH ] > 0) {
|
|
5936
6353
|
_resendPayload(retry);
|
|
@@ -5943,22 +6360,89 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5943
6360
|
_self._buffer && _self._buffer[_DYN_CLEAR_SENT ](payload);
|
|
5944
6361
|
};
|
|
5945
6362
|
_self._xdrOnLoad = function (xdr, payload) {
|
|
6363
|
+
return _xdrOnLoad(xdr, payload);
|
|
6364
|
+
};
|
|
6365
|
+
function _xdrOnLoad(xdr, payload) {
|
|
5946
6366
|
var responseText = _getResponseText(xdr);
|
|
5947
6367
|
if (xdr && (responseText + "" === "200" || responseText === "")) {
|
|
5948
6368
|
_consecutiveErrors = 0;
|
|
5949
6369
|
_self[_DYN__ON_SUCCESS ](payload, 0);
|
|
5950
6370
|
}
|
|
5951
6371
|
else {
|
|
5952
|
-
var results =
|
|
6372
|
+
var results = parseResponse(responseText);
|
|
5953
6373
|
if (results && results.itemsReceived && results.itemsReceived > results[_DYN_ITEMS_ACCEPTED ]
|
|
5954
6374
|
&& !_isRetryDisabled) {
|
|
5955
6375
|
_self[_DYN__ON_PARTIAL_SUCCESS ](payload, results);
|
|
5956
6376
|
}
|
|
5957
6377
|
else {
|
|
5958
|
-
_self[_DYN__ON_ERROR ](payload,
|
|
6378
|
+
_self[_DYN__ON_ERROR ](payload, formatErrorMessageXdr(xdr));
|
|
5959
6379
|
}
|
|
5960
6380
|
}
|
|
5961
|
-
}
|
|
6381
|
+
}
|
|
6382
|
+
function _getSendPostMgrConfig() {
|
|
6383
|
+
var _a;
|
|
6384
|
+
try {
|
|
6385
|
+
var onCompleteFuncs = {
|
|
6386
|
+
xdrOnComplete: function (xdr, oncomplete, payload) {
|
|
6387
|
+
var data = _getPayloadArr(payload);
|
|
6388
|
+
if (!data) {
|
|
6389
|
+
return;
|
|
6390
|
+
}
|
|
6391
|
+
return _xdrOnLoad(xdr, data);
|
|
6392
|
+
},
|
|
6393
|
+
fetchOnComplete: function (response, onComplete, resValue, payload) {
|
|
6394
|
+
var data = _getPayloadArr(payload);
|
|
6395
|
+
if (!data) {
|
|
6396
|
+
return;
|
|
6397
|
+
}
|
|
6398
|
+
return _checkResponsStatus(response.status, data, response.url, data[_DYN_LENGTH ], response.statusText, resValue || "");
|
|
6399
|
+
},
|
|
6400
|
+
xhrOnComplete: function (request, oncomplete, payload) {
|
|
6401
|
+
var data = _getPayloadArr(payload);
|
|
6402
|
+
if (!data) {
|
|
6403
|
+
return;
|
|
6404
|
+
}
|
|
6405
|
+
return _xhrReadyStateChange(request, data, data[_DYN_LENGTH ]);
|
|
6406
|
+
},
|
|
6407
|
+
beaconOnRetry: function (data, onComplete, canSend) {
|
|
6408
|
+
return _onBeaconRetry(data, onComplete, canSend);
|
|
6409
|
+
}
|
|
6410
|
+
};
|
|
6411
|
+
var config = (_a = {},
|
|
6412
|
+
_a[_DYN_ENABLE_SEND_PROMISE ] = _enableSendPromise,
|
|
6413
|
+
_a.isOneDs = false,
|
|
6414
|
+
_a.disableCredentials = false,
|
|
6415
|
+
_a[_DYN_DISABLE_XHR ] = _disableXhr,
|
|
6416
|
+
_a.disableBeacon = !_beaconNormalSupported,
|
|
6417
|
+
_a.disableBeaconSync = !_beaconOnUnloadSupported,
|
|
6418
|
+
_a.senderOnCompleteCallBack = onCompleteFuncs,
|
|
6419
|
+
_a);
|
|
6420
|
+
return config;
|
|
6421
|
+
}
|
|
6422
|
+
catch (e) {
|
|
6423
|
+
}
|
|
6424
|
+
return null;
|
|
6425
|
+
}
|
|
6426
|
+
function _xhrReadyStateChange(xhr, payload, countOfItemsInPayload) {
|
|
6427
|
+
if (xhr.readyState === 4) {
|
|
6428
|
+
_checkResponsStatus(xhr.status, payload, xhr.responseURL, countOfItemsInPayload, formatErrorMessageXhr(xhr), _getResponseText(xhr) || xhr.response);
|
|
6429
|
+
}
|
|
6430
|
+
}
|
|
6431
|
+
function _getPayloadArr(payload) {
|
|
6432
|
+
try {
|
|
6433
|
+
if (payload) {
|
|
6434
|
+
var internalPayload = payload;
|
|
6435
|
+
var arr = internalPayload[_DYN_ORI_PAYLOAD ];
|
|
6436
|
+
if (arr && arr[_DYN_LENGTH ]) {
|
|
6437
|
+
return arr;
|
|
6438
|
+
}
|
|
6439
|
+
return null;
|
|
6440
|
+
}
|
|
6441
|
+
}
|
|
6442
|
+
catch (e) {
|
|
6443
|
+
}
|
|
6444
|
+
return null;
|
|
6445
|
+
}
|
|
5962
6446
|
function _validate(telemetryItem, diagLogger) {
|
|
5963
6447
|
if (_disableTelemetry) {
|
|
5964
6448
|
return false;
|
|
@@ -6054,36 +6538,6 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6054
6538
|
function _isSampledIn(envelope) {
|
|
6055
6539
|
return _self._sample.isSampledIn(envelope);
|
|
6056
6540
|
}
|
|
6057
|
-
function _getSenderInterface(transports, syncSupport) {
|
|
6058
|
-
var _a;
|
|
6059
|
-
var transportType = null;
|
|
6060
|
-
var sendPostFunc = null;
|
|
6061
|
-
var lp = 0;
|
|
6062
|
-
while (sendPostFunc == null && lp < transports[_DYN_LENGTH ]) {
|
|
6063
|
-
transportType = transports[lp];
|
|
6064
|
-
if (!_disableXhr && transportType === 1 ) {
|
|
6065
|
-
if (useXDomainRequest()) {
|
|
6066
|
-
sendPostFunc = _xdrSender;
|
|
6067
|
-
}
|
|
6068
|
-
else if (isXhrSupported()) {
|
|
6069
|
-
sendPostFunc = _xhrSender;
|
|
6070
|
-
}
|
|
6071
|
-
}
|
|
6072
|
-
else if (transportType === 2 && isFetchSupported(syncSupport)) {
|
|
6073
|
-
sendPostFunc = _fetchSender;
|
|
6074
|
-
}
|
|
6075
|
-
else if (transportType === 3 && (syncSupport ? _beaconOnUnloadSupported : _beaconNormalSupported)) {
|
|
6076
|
-
sendPostFunc = _beaconSender;
|
|
6077
|
-
}
|
|
6078
|
-
lp++;
|
|
6079
|
-
}
|
|
6080
|
-
if (sendPostFunc) {
|
|
6081
|
-
return _a = {},
|
|
6082
|
-
_a[_DYN_SEND_POST ] = sendPostFunc,
|
|
6083
|
-
_a;
|
|
6084
|
-
}
|
|
6085
|
-
return null;
|
|
6086
|
-
}
|
|
6087
6541
|
function _getOnComplete(payload, status, headers, response) {
|
|
6088
6542
|
if (status === 200 && payload) {
|
|
6089
6543
|
_self._onSuccess(payload, payload[_DYN_LENGTH ]);
|
|
@@ -6098,7 +6552,7 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6098
6552
|
return _getOnComplete(payload, status, headers, response);
|
|
6099
6553
|
};
|
|
6100
6554
|
var payloadData = _getPayload(payload);
|
|
6101
|
-
var sendPostFunc = sendInterface && sendInterface
|
|
6555
|
+
var sendPostFunc = sendInterface && sendInterface.sendPOST;
|
|
6102
6556
|
if (sendPostFunc && payloadData) {
|
|
6103
6557
|
if (markAsSent) {
|
|
6104
6558
|
_self._buffer[_DYN_MARK_AS_SENT ](payload);
|
|
@@ -6110,7 +6564,7 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6110
6564
|
function _getPayload(payload) {
|
|
6111
6565
|
var _a;
|
|
6112
6566
|
if (isArray(payload) && payload[_DYN_LENGTH ] > 0) {
|
|
6113
|
-
var batch = _self
|
|
6567
|
+
var batch = _self[_DYN__BUFFER ].batchPayloads(payload);
|
|
6114
6568
|
var payloadData = (_a = {},
|
|
6115
6569
|
_a[_DYN_DATA ] = batch,
|
|
6116
6570
|
_a.urlString = _endpointUrl,
|
|
@@ -6123,9 +6577,6 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6123
6577
|
}
|
|
6124
6578
|
return null;
|
|
6125
6579
|
}
|
|
6126
|
-
function _fetchSender(payload, oncomplete, sync) {
|
|
6127
|
-
return _doFetchSender(payload, oncomplete, false);
|
|
6128
|
-
}
|
|
6129
6580
|
function _checkMaxSize(incomingPayload) {
|
|
6130
6581
|
var incomingSize = incomingPayload ? incomingPayload[_DYN_LENGTH ] : 0;
|
|
6131
6582
|
if ((_self[_DYN__BUFFER ].size() + incomingSize) > _maxBatchSizeInBytes) {
|
|
@@ -6139,7 +6590,7 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6139
6590
|
function _checkResponsStatus(status, payload, responseUrl, countOfItemsInPayload, errorMessage, res) {
|
|
6140
6591
|
var response = null;
|
|
6141
6592
|
if (!_self._appId) {
|
|
6142
|
-
response =
|
|
6593
|
+
response = parseResponse(res);
|
|
6143
6594
|
if (response && response.appId) {
|
|
6144
6595
|
_self._appId = response.appId;
|
|
6145
6596
|
}
|
|
@@ -6171,7 +6622,7 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6171
6622
|
_checkAndUpdateEndPointUrl(responseUrl);
|
|
6172
6623
|
if (status === 206) {
|
|
6173
6624
|
if (!response) {
|
|
6174
|
-
response =
|
|
6625
|
+
response = parseResponse(res);
|
|
6175
6626
|
}
|
|
6176
6627
|
if (response && !_isRetryDisabled) {
|
|
6177
6628
|
_self[_DYN__ON_PARTIAL_SUCCESS ](payload, response);
|
|
@@ -6199,223 +6650,61 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6199
6650
|
}
|
|
6200
6651
|
return false;
|
|
6201
6652
|
}
|
|
6202
|
-
function _doOnComplete(oncomplete, status, headers, response) {
|
|
6203
|
-
try {
|
|
6204
|
-
oncomplete(status, headers, response);
|
|
6205
|
-
}
|
|
6206
|
-
catch (e) {
|
|
6207
|
-
}
|
|
6208
|
-
}
|
|
6209
6653
|
function _doUnloadSend(payload, isAsync) {
|
|
6210
6654
|
if (_syncUnloadSender) {
|
|
6211
6655
|
_syncUnloadSender(payload, false);
|
|
6212
6656
|
}
|
|
6213
6657
|
else {
|
|
6214
|
-
var
|
|
6215
|
-
|
|
6216
|
-
_beaconSender(payloadData);
|
|
6658
|
+
var beaconInst = _sendPostMgr && _sendPostMgr[_DYN_GET_XHR_INST ]([3 ], true);
|
|
6659
|
+
return _doSend(beaconInst, payload, isAsync);
|
|
6217
6660
|
}
|
|
6218
6661
|
}
|
|
6219
|
-
function
|
|
6220
|
-
var nav = getNavigator();
|
|
6221
|
-
var url = _endpointUrl;
|
|
6222
|
-
var buffer = _self[_DYN__BUFFER ];
|
|
6223
|
-
var batch = buffer[_DYN_BATCH_PAYLOADS ](payload);
|
|
6224
|
-
var plainTextBatch = new Blob([batch], { type: "text/plain;charset=UTF-8" });
|
|
6225
|
-
var queued = nav.sendBeacon(url, plainTextBatch);
|
|
6226
|
-
if (queued) {
|
|
6227
|
-
_self._onSuccess(payload, payload[_DYN_LENGTH ]);
|
|
6228
|
-
}
|
|
6229
|
-
return queued;
|
|
6230
|
-
}
|
|
6231
|
-
function _beaconSender(payload, oncomplete, sync) {
|
|
6662
|
+
function _onBeaconRetry(payload, onComplete, canSend) {
|
|
6232
6663
|
var internalPayload = payload;
|
|
6233
6664
|
var data = internalPayload && internalPayload[_DYN_ORI_PAYLOAD ];
|
|
6234
|
-
if (
|
|
6235
|
-
|
|
6236
|
-
|
|
6237
|
-
|
|
6238
|
-
|
|
6239
|
-
|
|
6240
|
-
|
|
6241
|
-
|
|
6242
|
-
}
|
|
6243
|
-
}
|
|
6244
|
-
if (droppedPayload[_DYN_LENGTH ] > 0) {
|
|
6245
|
-
_fallbackSend && _fallbackSend(droppedPayload, true);
|
|
6246
|
-
_throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with normal sender.");
|
|
6247
|
-
}
|
|
6665
|
+
if (!_disableBeaconSplit) {
|
|
6666
|
+
var droppedPayload = [];
|
|
6667
|
+
for (var lp = 0; lp < data[_DYN_LENGTH ]; lp++) {
|
|
6668
|
+
var thePayload = data[lp];
|
|
6669
|
+
var arr = [thePayload];
|
|
6670
|
+
var item = _getPayload(arr);
|
|
6671
|
+
if (!canSend(item, onComplete)) {
|
|
6672
|
+
droppedPayload[_DYN_PUSH ](thePayload);
|
|
6248
6673
|
}
|
|
6249
6674
|
else {
|
|
6250
|
-
|
|
6251
|
-
_throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with normal sender.");
|
|
6675
|
+
_self._onSuccess(arr, arr[_DYN_LENGTH ]);
|
|
6252
6676
|
}
|
|
6253
6677
|
}
|
|
6254
|
-
|
|
6255
|
-
|
|
6256
|
-
|
|
6257
|
-
var internalPayload = payload;
|
|
6258
|
-
var thePromise;
|
|
6259
|
-
var resolveFunc;
|
|
6260
|
-
var rejectFunc;
|
|
6261
|
-
var xhr = new XMLHttpRequest();
|
|
6262
|
-
var endPointUrl = _endpointUrl;
|
|
6263
|
-
try {
|
|
6264
|
-
xhr[DisabledPropertyName] = true;
|
|
6265
|
-
}
|
|
6266
|
-
catch (e) {
|
|
6267
|
-
}
|
|
6268
|
-
xhr.open("POST", endPointUrl, !sync);
|
|
6269
|
-
xhr[_DYN_SET_REQUEST_HEADER ]("Content-type", "application/json");
|
|
6270
|
-
if (isInternalApplicationInsightsEndpoint(endPointUrl)) {
|
|
6271
|
-
xhr[_DYN_SET_REQUEST_HEADER ](RequestHeaders[6 ], RequestHeaders[7 ]);
|
|
6272
|
-
}
|
|
6273
|
-
arrForEach(objKeys(_headers), function (headerName) {
|
|
6274
|
-
xhr[_DYN_SET_REQUEST_HEADER ](headerName, _headers[headerName]);
|
|
6275
|
-
});
|
|
6276
|
-
xhr.onreadystatechange = function () {
|
|
6277
|
-
var oriPayload = internalPayload[_DYN_ORI_PAYLOAD ];
|
|
6278
|
-
_self._xhrReadyStateChange(xhr, oriPayload, oriPayload[_DYN_LENGTH ]);
|
|
6279
|
-
if (xhr.readyState === 4) {
|
|
6280
|
-
resolveFunc && resolveFunc(true);
|
|
6678
|
+
if (droppedPayload[_DYN_LENGTH ] > 0) {
|
|
6679
|
+
_fallbackSend && _fallbackSend(droppedPayload, true);
|
|
6680
|
+
_throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with normal sender.");
|
|
6281
6681
|
}
|
|
6282
|
-
};
|
|
6283
|
-
xhr.onerror = function (event) {
|
|
6284
|
-
_doOnComplete(oncomplete, 400, {}, _formatErrorMessageXhr(xhr));
|
|
6285
|
-
rejectFunc && rejectFunc(event);
|
|
6286
|
-
};
|
|
6287
|
-
if (!sync && _enableSendPromise) {
|
|
6288
|
-
thePromise = createPromise(function (resolve, reject) {
|
|
6289
|
-
resolveFunc = resolve;
|
|
6290
|
-
rejectFunc = reject;
|
|
6291
|
-
});
|
|
6292
6682
|
}
|
|
6293
|
-
|
|
6294
|
-
|
|
6683
|
+
else {
|
|
6684
|
+
_fallbackSend && _fallbackSend(data, true);
|
|
6685
|
+
_throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with normal sender.");
|
|
6686
|
+
}
|
|
6295
6687
|
}
|
|
6296
6688
|
function _fetchKeepAliveSender(payload, isAsync) {
|
|
6297
|
-
var
|
|
6298
|
-
return _getOnComplete(payload, status, headers, response);
|
|
6299
|
-
};
|
|
6689
|
+
var transport = null;
|
|
6300
6690
|
if (isArray(payload)) {
|
|
6301
6691
|
var payloadSize = payload[_DYN_LENGTH ];
|
|
6302
6692
|
for (var lp = 0; lp < payload[_DYN_LENGTH ]; lp++) {
|
|
6303
6693
|
payloadSize += payload[lp][_DYN_LENGTH ];
|
|
6304
6694
|
}
|
|
6305
|
-
var
|
|
6306
|
-
|
|
6307
|
-
|
|
6308
|
-
_doFetchSender(payloadData, onComplete, true);
|
|
6695
|
+
var syncFetchPayload = _sendPostMgr.getSyncFetchPayload();
|
|
6696
|
+
if ((syncFetchPayload + payloadSize) <= FetchSyncRequestSizeLimitBytes) {
|
|
6697
|
+
transport = 2 ;
|
|
6309
6698
|
}
|
|
6310
6699
|
else if (isBeaconsSupported()) {
|
|
6311
|
-
|
|
6700
|
+
transport = 3 ;
|
|
6312
6701
|
}
|
|
6313
6702
|
else {
|
|
6314
|
-
|
|
6703
|
+
transport = 1 ;
|
|
6315
6704
|
_throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with xhrSender.");
|
|
6316
6705
|
}
|
|
6317
|
-
|
|
6318
|
-
|
|
6319
|
-
function _doFetchSender(payload, oncomplete, sync) {
|
|
6320
|
-
var _a;
|
|
6321
|
-
var endPointUrl = _endpointUrl;
|
|
6322
|
-
var internalPayload = payload;
|
|
6323
|
-
var batch = internalPayload[_DYN_DATA ];
|
|
6324
|
-
var plainTextBatch = new Blob([batch], { type: "application/json" });
|
|
6325
|
-
var thePromise;
|
|
6326
|
-
var resolveFunc;
|
|
6327
|
-
var rejectFunc;
|
|
6328
|
-
var requestHeaders = new Headers();
|
|
6329
|
-
var batchLength = batch[_DYN_LENGTH ];
|
|
6330
|
-
var ignoreResponse = false;
|
|
6331
|
-
var responseHandled = false;
|
|
6332
|
-
if (isInternalApplicationInsightsEndpoint(endPointUrl)) {
|
|
6333
|
-
requestHeaders.append(RequestHeaders[6 ], RequestHeaders[7 ]);
|
|
6334
|
-
}
|
|
6335
|
-
arrForEach(objKeys(_headers), function (headerName) {
|
|
6336
|
-
requestHeaders.append(headerName, _headers[headerName]);
|
|
6337
|
-
});
|
|
6338
|
-
var init = (_a = {
|
|
6339
|
-
method: "POST",
|
|
6340
|
-
headers: requestHeaders,
|
|
6341
|
-
body: plainTextBatch
|
|
6342
|
-
},
|
|
6343
|
-
_a[DisabledPropertyName] = true
|
|
6344
|
-
,
|
|
6345
|
-
_a);
|
|
6346
|
-
if (sync) {
|
|
6347
|
-
init.keepalive = true;
|
|
6348
|
-
ignoreResponse = true;
|
|
6349
|
-
_syncFetchPayload += batchLength;
|
|
6350
|
-
}
|
|
6351
|
-
var request = new Request(endPointUrl, init);
|
|
6352
|
-
try {
|
|
6353
|
-
request[DisabledPropertyName] = true;
|
|
6354
|
-
}
|
|
6355
|
-
catch (e) {
|
|
6356
|
-
}
|
|
6357
|
-
if (!sync && _enableSendPromise) {
|
|
6358
|
-
thePromise = createPromise(function (resolve, reject) {
|
|
6359
|
-
resolveFunc = resolve;
|
|
6360
|
-
rejectFunc = reject;
|
|
6361
|
-
});
|
|
6362
|
-
}
|
|
6363
|
-
try {
|
|
6364
|
-
doAwaitResponse(fetch(request), function (result) {
|
|
6365
|
-
if (sync) {
|
|
6366
|
-
_syncFetchPayload -= batchLength;
|
|
6367
|
-
batchLength = 0;
|
|
6368
|
-
}
|
|
6369
|
-
if (!responseHandled) {
|
|
6370
|
-
responseHandled = true;
|
|
6371
|
-
if (!result.rejected) {
|
|
6372
|
-
var response_1 = result.value;
|
|
6373
|
-
if (!response_1.ok) {
|
|
6374
|
-
_doOnComplete(oncomplete, 400, {}, response_1.statusText);
|
|
6375
|
-
resolveFunc && resolveFunc(false);
|
|
6376
|
-
}
|
|
6377
|
-
else {
|
|
6378
|
-
doAwaitResponse(response_1.text(), function (resp) {
|
|
6379
|
-
var oriPayload = internalPayload[_DYN_ORI_PAYLOAD ];
|
|
6380
|
-
_checkResponsStatus(response_1.status, oriPayload, response_1.url, oriPayload[_DYN_LENGTH ], response_1.statusText, resp.value || "");
|
|
6381
|
-
resolveFunc && resolveFunc(true);
|
|
6382
|
-
});
|
|
6383
|
-
}
|
|
6384
|
-
}
|
|
6385
|
-
else {
|
|
6386
|
-
_doOnComplete(oncomplete, 400, {}, result.reason && result.reason.message);
|
|
6387
|
-
rejectFunc && rejectFunc(result.reason);
|
|
6388
|
-
}
|
|
6389
|
-
}
|
|
6390
|
-
});
|
|
6391
|
-
}
|
|
6392
|
-
catch (e) {
|
|
6393
|
-
if (!responseHandled) {
|
|
6394
|
-
_doOnComplete(oncomplete, 400, {}, dumpObj(e));
|
|
6395
|
-
rejectFunc && rejectFunc(e);
|
|
6396
|
-
}
|
|
6397
|
-
}
|
|
6398
|
-
if (ignoreResponse && !responseHandled) {
|
|
6399
|
-
responseHandled = true;
|
|
6400
|
-
_doOnComplete(oncomplete, 200, {});
|
|
6401
|
-
resolveFunc && resolveFunc(true);
|
|
6402
|
-
}
|
|
6403
|
-
return thePromise;
|
|
6404
|
-
}
|
|
6405
|
-
function _parseResponse(response) {
|
|
6406
|
-
try {
|
|
6407
|
-
if (response && response !== "") {
|
|
6408
|
-
var result = getJSON().parse(response);
|
|
6409
|
-
if (result && result.itemsReceived && result.itemsReceived >= result[_DYN_ITEMS_ACCEPTED ] &&
|
|
6410
|
-
result.itemsReceived - result.itemsAccepted === result.errors[_DYN_LENGTH ]) {
|
|
6411
|
-
return result;
|
|
6412
|
-
}
|
|
6413
|
-
}
|
|
6414
|
-
}
|
|
6415
|
-
catch (e) {
|
|
6416
|
-
_throwInternal(_self[_DYN_DIAG_LOG ](), 1 , 43 , "Cannot parse the response. " + getExceptionName(e), {
|
|
6417
|
-
response: response
|
|
6418
|
-
});
|
|
6706
|
+
var inst = _sendPostMgr && _sendPostMgr[_DYN_GET_XHR_INST ]([transport], true);
|
|
6707
|
+
return _doSend(inst, payload, isAsync);
|
|
6419
6708
|
}
|
|
6420
6709
|
return null;
|
|
6421
6710
|
}
|
|
@@ -6474,41 +6763,6 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6474
6763
|
|| statusCode === 503
|
|
6475
6764
|
|| statusCode === 504;
|
|
6476
6765
|
}
|
|
6477
|
-
function _formatErrorMessageXhr(xhr, message) {
|
|
6478
|
-
if (xhr) {
|
|
6479
|
-
return "XMLHttpRequest,Status:" + xhr.status + ",Response:" + _getResponseText(xhr) || xhr.response || "";
|
|
6480
|
-
}
|
|
6481
|
-
return message;
|
|
6482
|
-
}
|
|
6483
|
-
function _xdrSender(payload, oncomplete, sync) {
|
|
6484
|
-
var internalPayload = payload;
|
|
6485
|
-
var _window = getWindow();
|
|
6486
|
-
var xdr = new XDomainRequest();
|
|
6487
|
-
var data = internalPayload[_DYN_DATA ];
|
|
6488
|
-
xdr.onload = function () {
|
|
6489
|
-
var oriPayload = internalPayload[_DYN_ORI_PAYLOAD ];
|
|
6490
|
-
_self._xdrOnLoad(xdr, oriPayload);
|
|
6491
|
-
};
|
|
6492
|
-
xdr.onerror = function () {
|
|
6493
|
-
_doOnComplete(oncomplete, 400, {}, _formatErrorMessageXdr(xdr));
|
|
6494
|
-
};
|
|
6495
|
-
var hostingProtocol = _window && _window.location && _window.location.protocol || "";
|
|
6496
|
-
if (_endpointUrl.lastIndexOf(hostingProtocol, 0) !== 0) {
|
|
6497
|
-
_throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " +
|
|
6498
|
-
"Cannot send XDomain request. The endpoint URL protocol doesn't match the hosting page protocol.");
|
|
6499
|
-
_self._buffer[_DYN_CLEAR ]();
|
|
6500
|
-
return;
|
|
6501
|
-
}
|
|
6502
|
-
var endpointUrl = _endpointUrl.replace(/^(https?:)/, "");
|
|
6503
|
-
xdr.open("POST", endpointUrl);
|
|
6504
|
-
xdr.send(data);
|
|
6505
|
-
}
|
|
6506
|
-
function _formatErrorMessageXdr(xdr, message) {
|
|
6507
|
-
if (xdr) {
|
|
6508
|
-
return "XDomainRequest,Response:" + _getResponseText(xdr) || "";
|
|
6509
|
-
}
|
|
6510
|
-
return message;
|
|
6511
|
-
}
|
|
6512
6766
|
function _getNotifyMgr() {
|
|
6513
6767
|
var func = "getNotifyMgr";
|
|
6514
6768
|
if (_self.core[func]) {
|
|
@@ -6569,6 +6823,7 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6569
6823
|
_disableBeaconSplit = false;
|
|
6570
6824
|
_xhrSend = null;
|
|
6571
6825
|
_fallbackSend = null;
|
|
6826
|
+
_sendPostMgr = null;
|
|
6572
6827
|
objDefine(_self, "_senderConfig", {
|
|
6573
6828
|
g: function () {
|
|
6574
6829
|
return objExtend({}, defaultAppInsightsChannelConfig);
|
|
@@ -6595,4 +6850,4 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6595
6850
|
exports.Sender = Sender;
|
|
6596
6851
|
|
|
6597
6852
|
}));
|
|
6598
|
-
//# sourceMappingURL=applicationinsights-channel-js.3.1.1-nightly3.2403-
|
|
6853
|
+
//# sourceMappingURL=applicationinsights-channel-js.3.1.1-nightly3.2403-03.js.map
|