@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,11 +1,11 @@
|
|
|
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) {
|
|
6
6
|
var undef = "undefined";
|
|
7
|
-
var nsKey, key, nm, theExports = {}, modName = "
|
|
8
|
-
var mods={}, modDetail=mods[modName]={}, ver="3.1.1-nightly3.2403-
|
|
7
|
+
var nsKey, key, nm, theExports = {}, modName = "es5_applicationinsights_channel_js_3_1_1_nightly3_2403_03", msMod="__ms$mod__";
|
|
8
|
+
var mods={}, modDetail=mods[modName]={}, ver="3.1.1-nightly3.2403-03";
|
|
9
9
|
var baseNs=global, nsKey="Microsoft", baseNs=baseNs[nsKey]=(baseNs[nsKey]||{});
|
|
10
10
|
// Versioned namespace "Microsoft.ApplicationInsights3"
|
|
11
11
|
var exportNs=baseNs, nsKey="ApplicationInsights3", exportNs=exportNs[nsKey]=(exportNs[nsKey]||{});
|
|
@@ -1144,7 +1144,7 @@ var _DYN_PUSH$2 = "push";
|
|
|
1144
1144
|
var _DYN_SPLICE = "splice";
|
|
1145
1145
|
var _DYN_HDLR = "hdlr";
|
|
1146
1146
|
var _DYN_CANCEL = "cancel";
|
|
1147
|
-
var _DYN_INITIALIZE = "initialize";
|
|
1147
|
+
var _DYN_INITIALIZE$1 = "initialize";
|
|
1148
1148
|
var _DYN_IDENTIFIER = "identifier";
|
|
1149
1149
|
var _DYN_IS_INITIALIZED = "isInitialized";
|
|
1150
1150
|
var _DYN_GET_PLUGIN = "getPlugin";
|
|
@@ -1493,7 +1493,7 @@ function createPromise(executor, timeout) {
|
|
|
1493
1493
|
}
|
|
1494
1494
|
|
|
1495
1495
|
var UNDEFINED_VALUE$1 = undefined;
|
|
1496
|
-
var STR_EMPTY = "";
|
|
1496
|
+
var STR_EMPTY$1 = "";
|
|
1497
1497
|
var STR_CORE = "core";
|
|
1498
1498
|
var STR_DISABLED = "disabled";
|
|
1499
1499
|
var STR_EXTENSION_CONFIG = "extensionConfig";
|
|
@@ -1534,7 +1534,7 @@ function getExceptionName(object) {
|
|
|
1534
1534
|
if (isError(object)) {
|
|
1535
1535
|
return object[_DYN_NAME$2 ];
|
|
1536
1536
|
}
|
|
1537
|
-
return STR_EMPTY;
|
|
1537
|
+
return STR_EMPTY$1;
|
|
1538
1538
|
}
|
|
1539
1539
|
function setValue(target, field, value, valChk, srcChk) {
|
|
1540
1540
|
var theValue = value;
|
|
@@ -1638,6 +1638,7 @@ function objExtend(obj1, obj2, obj3, obj4, obj5, obj6) {
|
|
|
1638
1638
|
}
|
|
1639
1639
|
|
|
1640
1640
|
var strDocumentMode = "documentMode";
|
|
1641
|
+
var strLocation = "location";
|
|
1641
1642
|
var strConsole = "console";
|
|
1642
1643
|
var strJSON = "JSON";
|
|
1643
1644
|
var strCrypto = "crypto";
|
|
@@ -1647,6 +1648,7 @@ var strTrident = "trident/";
|
|
|
1647
1648
|
var strXMLHttpRequest = "XMLHttpRequest";
|
|
1648
1649
|
var _isTrident = null;
|
|
1649
1650
|
var _navUserAgentCheck = null;
|
|
1651
|
+
var _enableMocks = false;
|
|
1650
1652
|
var _useXDomainRequest = null;
|
|
1651
1653
|
var _beaconsSupported = null;
|
|
1652
1654
|
function _hasProperty(theClass, property) {
|
|
@@ -1674,6 +1676,18 @@ function _hasProperty(theClass, property) {
|
|
|
1674
1676
|
}
|
|
1675
1677
|
return supported;
|
|
1676
1678
|
}
|
|
1679
|
+
function getLocation(checkForMock) {
|
|
1680
|
+
if (checkForMock && _enableMocks) {
|
|
1681
|
+
var mockLocation = getInst("__mockLocation");
|
|
1682
|
+
if (mockLocation) {
|
|
1683
|
+
return mockLocation;
|
|
1684
|
+
}
|
|
1685
|
+
}
|
|
1686
|
+
if (typeof location === strShimObject && location) {
|
|
1687
|
+
return location;
|
|
1688
|
+
}
|
|
1689
|
+
return getInst(strLocation);
|
|
1690
|
+
}
|
|
1677
1691
|
function getConsole() {
|
|
1678
1692
|
if (typeof console !== strShimUndefined) {
|
|
1679
1693
|
return console;
|
|
@@ -1699,7 +1713,7 @@ function isIE() {
|
|
|
1699
1713
|
var nav = getNavigator();
|
|
1700
1714
|
if (nav && (nav[_DYN_USER_AGENT ] !== _navUserAgentCheck || _isTrident === null)) {
|
|
1701
1715
|
_navUserAgentCheck = nav[_DYN_USER_AGENT ];
|
|
1702
|
-
var userAgent = (_navUserAgentCheck || STR_EMPTY)[_DYN_TO_LOWER_CASE$1 ]();
|
|
1716
|
+
var userAgent = (_navUserAgentCheck || STR_EMPTY$1)[_DYN_TO_LOWER_CASE$1 ]();
|
|
1703
1717
|
_isTrident = (strContains(userAgent, strMsie) || strContains(userAgent, strTrident));
|
|
1704
1718
|
}
|
|
1705
1719
|
return _isTrident;
|
|
@@ -1708,9 +1722,9 @@ function getIEVersion(userAgentStr) {
|
|
|
1708
1722
|
if (userAgentStr === void 0) { userAgentStr = null; }
|
|
1709
1723
|
if (!userAgentStr) {
|
|
1710
1724
|
var navigator_1 = getNavigator() || {};
|
|
1711
|
-
userAgentStr = navigator_1 ? (navigator_1.userAgent || STR_EMPTY)[_DYN_TO_LOWER_CASE$1 ]() : STR_EMPTY;
|
|
1725
|
+
userAgentStr = navigator_1 ? (navigator_1.userAgent || STR_EMPTY$1)[_DYN_TO_LOWER_CASE$1 ]() : STR_EMPTY$1;
|
|
1712
1726
|
}
|
|
1713
|
-
var ua = (userAgentStr || STR_EMPTY)[_DYN_TO_LOWER_CASE$1 ]();
|
|
1727
|
+
var ua = (userAgentStr || STR_EMPTY$1)[_DYN_TO_LOWER_CASE$1 ]();
|
|
1714
1728
|
if (strContains(ua, strMsie)) {
|
|
1715
1729
|
var doc = getDocument() || {};
|
|
1716
1730
|
return Math.max(parseInt(ua[_DYN_SPLIT$1 ](strMsie)[1]), (doc[strDocumentMode] || 0));
|
|
@@ -1819,7 +1833,7 @@ function newId(maxLength) {
|
|
|
1819
1833
|
var base64chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
|
|
1820
1834
|
var number = random32() >>> 0;
|
|
1821
1835
|
var chars = 0;
|
|
1822
|
-
var result = STR_EMPTY;
|
|
1836
|
+
var result = STR_EMPTY$1;
|
|
1823
1837
|
while (result[_DYN_LENGTH$2 ] < maxLength) {
|
|
1824
1838
|
chars++;
|
|
1825
1839
|
result += base64chars.charAt(number & 0x3F);
|
|
@@ -1857,11 +1871,11 @@ function _getCache(data, target) {
|
|
|
1857
1871
|
}
|
|
1858
1872
|
function createUniqueNamespace(name, includeVersion) {
|
|
1859
1873
|
if (includeVersion === void 0) { includeVersion = false; }
|
|
1860
|
-
return normalizeJsName(name + (_dataUid++) + (includeVersion ? "." + version : STR_EMPTY) + instanceName);
|
|
1874
|
+
return normalizeJsName(name + (_dataUid++) + (includeVersion ? "." + version : STR_EMPTY$1) + instanceName);
|
|
1861
1875
|
}
|
|
1862
1876
|
function createElmNodeData(name) {
|
|
1863
1877
|
var data = {
|
|
1864
|
-
id: createUniqueNamespace("_aiData-" + (name || STR_EMPTY) + "." + version),
|
|
1878
|
+
id: createUniqueNamespace("_aiData-" + (name || STR_EMPTY$1) + "." + version),
|
|
1865
1879
|
accept: function (target) {
|
|
1866
1880
|
return _canAcceptData(target);
|
|
1867
1881
|
},
|
|
@@ -2566,9 +2580,9 @@ var _logFuncs = (_a$2 = {},
|
|
|
2566
2580
|
_a$2);
|
|
2567
2581
|
function _sanitizeDiagnosticText(text) {
|
|
2568
2582
|
if (text) {
|
|
2569
|
-
return "\"" + text[_DYN_REPLACE ](/\"/g, STR_EMPTY) + "\"";
|
|
2583
|
+
return "\"" + text[_DYN_REPLACE ](/\"/g, STR_EMPTY$1) + "\"";
|
|
2570
2584
|
}
|
|
2571
|
-
return STR_EMPTY;
|
|
2585
|
+
return STR_EMPTY$1;
|
|
2572
2586
|
}
|
|
2573
2587
|
function _logToConsole(func, message) {
|
|
2574
2588
|
var theConsole = getConsole();
|
|
@@ -2590,12 +2604,12 @@ var _InternalLogMessage = /** @class */ (function () {
|
|
|
2590
2604
|
_self[_DYN_MESSAGE$1 ] =
|
|
2591
2605
|
(isUserAct ? AiUserActionablePrefix : AiNonUserActionablePrefix) +
|
|
2592
2606
|
msgId;
|
|
2593
|
-
var strProps = STR_EMPTY;
|
|
2607
|
+
var strProps = STR_EMPTY$1;
|
|
2594
2608
|
if (hasJSON()) {
|
|
2595
2609
|
strProps = getJSON().stringify(properties);
|
|
2596
2610
|
}
|
|
2597
|
-
var diagnosticText = (msg ? " message:" + _sanitizeDiagnosticText(msg) : STR_EMPTY) +
|
|
2598
|
-
(properties ? " props:" + _sanitizeDiagnosticText(strProps) : STR_EMPTY);
|
|
2611
|
+
var diagnosticText = (msg ? " message:" + _sanitizeDiagnosticText(msg) : STR_EMPTY$1) +
|
|
2612
|
+
(properties ? " props:" + _sanitizeDiagnosticText(strProps) : STR_EMPTY$1);
|
|
2599
2613
|
_self[_DYN_MESSAGE$1 ] += diagnosticText;
|
|
2600
2614
|
}
|
|
2601
2615
|
_InternalLogMessage.dataType = "MessageData";
|
|
@@ -3128,7 +3142,7 @@ function createTelemetryPluginProxy(plugin, config, core) {
|
|
|
3128
3142
|
doPerf(itemCtx[STR_CORE ](), function () { return identifier + ":" + name; }, function () {
|
|
3129
3143
|
hasRunContext[chainId] = true;
|
|
3130
3144
|
try {
|
|
3131
|
-
var nextId = nextProxy ? nextProxy._id : STR_EMPTY;
|
|
3145
|
+
var nextId = nextProxy ? nextProxy._id : STR_EMPTY$1;
|
|
3132
3146
|
if (nextId) {
|
|
3133
3147
|
hasRunContext[nextId] = false;
|
|
3134
3148
|
}
|
|
@@ -3273,7 +3287,7 @@ var BaseTelemetryPlugin = /** @class */ (function () {
|
|
|
3273
3287
|
var _hookContainer;
|
|
3274
3288
|
_initDefaults();
|
|
3275
3289
|
dynamicProto(BaseTelemetryPlugin, _self, function (_self) {
|
|
3276
|
-
_self[_DYN_INITIALIZE ] = function (config, core, extensions, pluginChain) {
|
|
3290
|
+
_self[_DYN_INITIALIZE$1 ] = function (config, core, extensions, pluginChain) {
|
|
3277
3291
|
_setDefaults(config, core, pluginChain);
|
|
3278
3292
|
_isinitialized = true;
|
|
3279
3293
|
};
|
|
@@ -3414,16 +3428,16 @@ var elmNodeData = createElmNodeData("events");
|
|
|
3414
3428
|
var eventNamespace = /^([^.]*)(?:\.(.+)|)/;
|
|
3415
3429
|
function _normalizeNamespace(name) {
|
|
3416
3430
|
if (name && name[_DYN_REPLACE ]) {
|
|
3417
|
-
return name[_DYN_REPLACE ](/^[\s\.]+|(?=[\s\.])[\.\s]+$/g, STR_EMPTY);
|
|
3431
|
+
return name[_DYN_REPLACE ](/^[\s\.]+|(?=[\s\.])[\.\s]+$/g, STR_EMPTY$1);
|
|
3418
3432
|
}
|
|
3419
3433
|
return name;
|
|
3420
3434
|
}
|
|
3421
3435
|
function _getEvtNamespace(eventName, evtNamespace) {
|
|
3422
3436
|
var _a;
|
|
3423
3437
|
if (evtNamespace) {
|
|
3424
|
-
var theNamespace_1 = STR_EMPTY;
|
|
3438
|
+
var theNamespace_1 = STR_EMPTY$1;
|
|
3425
3439
|
if (isArray(evtNamespace)) {
|
|
3426
|
-
theNamespace_1 = STR_EMPTY;
|
|
3440
|
+
theNamespace_1 = STR_EMPTY$1;
|
|
3427
3441
|
arrForEach(evtNamespace, function (name) {
|
|
3428
3442
|
name = _normalizeNamespace(name);
|
|
3429
3443
|
if (name) {
|
|
@@ -3441,13 +3455,13 @@ function _getEvtNamespace(eventName, evtNamespace) {
|
|
|
3441
3455
|
if (theNamespace_1[0] !== ".") {
|
|
3442
3456
|
theNamespace_1 = "." + theNamespace_1;
|
|
3443
3457
|
}
|
|
3444
|
-
eventName = (eventName || STR_EMPTY) + theNamespace_1;
|
|
3458
|
+
eventName = (eventName || STR_EMPTY$1) + theNamespace_1;
|
|
3445
3459
|
}
|
|
3446
3460
|
}
|
|
3447
|
-
var parsedEvent = (eventNamespace.exec(eventName || STR_EMPTY) || []);
|
|
3461
|
+
var parsedEvent = (eventNamespace.exec(eventName || STR_EMPTY$1) || []);
|
|
3448
3462
|
return _a = {},
|
|
3449
3463
|
_a[_DYN_TYPE ] = parsedEvent[1],
|
|
3450
|
-
_a.ns = ((parsedEvent[2] || STR_EMPTY).replace(rRemoveEmptyNs, ".").replace(rRemoveTrailingEmptyNs, STR_EMPTY)[_DYN_SPLIT$1 ](".").sort()).join("."),
|
|
3464
|
+
_a.ns = ((parsedEvent[2] || STR_EMPTY$1).replace(rRemoveEmptyNs, ".").replace(rRemoveTrailingEmptyNs, STR_EMPTY$1)[_DYN_SPLIT$1 ](".").sort()).join("."),
|
|
3451
3465
|
_a;
|
|
3452
3466
|
}
|
|
3453
3467
|
function _getRegisteredEvents(target, evtName, addDefault) {
|
|
@@ -3596,14 +3610,20 @@ var RequestHeaders = createValueMap({
|
|
|
3596
3610
|
var _DYN_SPLIT = "split";
|
|
3597
3611
|
var _DYN_LENGTH$1 = "length";
|
|
3598
3612
|
var _DYN_TO_LOWER_CASE = "toLowerCase";
|
|
3613
|
+
var _DYN_LOCATION = "location";
|
|
3599
3614
|
var _DYN_TO_STRING$1 = "toString";
|
|
3600
3615
|
var _DYN_PUSH$1 = "push";
|
|
3616
|
+
var _DYN_URL_STRING = "urlString";
|
|
3617
|
+
var _DYN_DATA$1 = "data";
|
|
3618
|
+
var _DYN_SET_REQUEST_HEADER = "setRequestHeader";
|
|
3619
|
+
var _DYN_REASON = "reason";
|
|
3620
|
+
var _DYN_MESSAGE = "message";
|
|
3601
3621
|
var _DYN_REMOVE_ITEM = "removeItem";
|
|
3602
3622
|
var _DYN_NAME$1 = "name";
|
|
3603
|
-
var _DYN_MESSAGE = "message";
|
|
3604
3623
|
var _DYN_COUNT$1 = "count";
|
|
3605
3624
|
var _DYN_STRINGIFY$1 = "stringify";
|
|
3606
3625
|
var _DYN_PATHNAME = "pathname";
|
|
3626
|
+
var _DYN_ITEMS_RECEIVED$1 = "itemsReceived";
|
|
3607
3627
|
var _DYN_EXCEPTIONS = "exceptions";
|
|
3608
3628
|
var _DYN_PARSED_STACK = "parsedStack";
|
|
3609
3629
|
var _DYN_PROPERTIES = "properties";
|
|
@@ -3825,6 +3845,54 @@ function AjaxHelperParseDependencyPath(logger, absoluteUrl, method, commandName)
|
|
|
3825
3845
|
data: data
|
|
3826
3846
|
};
|
|
3827
3847
|
}
|
|
3848
|
+
function getResponseText(xhr) {
|
|
3849
|
+
try {
|
|
3850
|
+
return xhr.responseText;
|
|
3851
|
+
}
|
|
3852
|
+
catch (e) {
|
|
3853
|
+
}
|
|
3854
|
+
return null;
|
|
3855
|
+
}
|
|
3856
|
+
function formatErrorMessageXdr(xdr, message) {
|
|
3857
|
+
if (xdr) {
|
|
3858
|
+
return "XDomainRequest,Response:" + getResponseText(xdr) || "";
|
|
3859
|
+
}
|
|
3860
|
+
return message;
|
|
3861
|
+
}
|
|
3862
|
+
function formatErrorMessageXhr(xhr, message) {
|
|
3863
|
+
if (xhr) {
|
|
3864
|
+
return "XMLHttpRequest,Status:" + xhr.status + ",Response:" + getResponseText(xhr) || xhr.response || "";
|
|
3865
|
+
}
|
|
3866
|
+
return message;
|
|
3867
|
+
}
|
|
3868
|
+
function prependTransports(theTransports, newTransports) {
|
|
3869
|
+
if (newTransports) {
|
|
3870
|
+
if (isNumber(newTransports)) {
|
|
3871
|
+
theTransports = [newTransports].concat(theTransports);
|
|
3872
|
+
}
|
|
3873
|
+
else if (isArray(newTransports)) {
|
|
3874
|
+
theTransports = newTransports.concat(theTransports);
|
|
3875
|
+
}
|
|
3876
|
+
}
|
|
3877
|
+
return theTransports;
|
|
3878
|
+
}
|
|
3879
|
+
function parseResponse(response, diagLog) {
|
|
3880
|
+
try {
|
|
3881
|
+
if (response && response !== "") {
|
|
3882
|
+
var result = getJSON().parse(response);
|
|
3883
|
+
if (result && result[_DYN_ITEMS_RECEIVED$1 ] && result[_DYN_ITEMS_RECEIVED$1 ] >= result.itemsAccepted &&
|
|
3884
|
+
result.itemsReceived - result.itemsAccepted === result.errors[_DYN_LENGTH$1 ]) {
|
|
3885
|
+
return result;
|
|
3886
|
+
}
|
|
3887
|
+
}
|
|
3888
|
+
}
|
|
3889
|
+
catch (e) {
|
|
3890
|
+
_throwInternal(diagLog, 1 , 43 , "Cannot parse the response. " + getExceptionName(e), {
|
|
3891
|
+
response: response
|
|
3892
|
+
});
|
|
3893
|
+
}
|
|
3894
|
+
return null;
|
|
3895
|
+
}
|
|
3828
3896
|
|
|
3829
3897
|
var StorageType = createEnumStyle({
|
|
3830
3898
|
LocalStorage: 0 ,
|
|
@@ -3903,7 +3971,7 @@ var Envelope = /** @class */ (function () {
|
|
|
3903
3971
|
_self.sampleRate = 100.0;
|
|
3904
3972
|
_self.tags = {};
|
|
3905
3973
|
_self[_DYN_NAME$1 ] = dataSanitizeString(logger, name) || strNotSpecified;
|
|
3906
|
-
_self
|
|
3974
|
+
_self[_DYN_DATA$1 ] = data;
|
|
3907
3975
|
_self.time = toISOString(new Date());
|
|
3908
3976
|
_self.aiDataContract = {
|
|
3909
3977
|
time: 1 ,
|
|
@@ -4060,8 +4128,8 @@ function _getStackFromErrorObj(errorObj) {
|
|
|
4060
4128
|
else if (getWindow() && getWindow()["opera"] && errorObj[strMessage]) {
|
|
4061
4129
|
details = _getOperaStack(errorObj[_DYN_MESSAGE ]);
|
|
4062
4130
|
}
|
|
4063
|
-
else if (errorObj["reason"] && errorObj
|
|
4064
|
-
details = _convertStackObj(errorObj
|
|
4131
|
+
else if (errorObj["reason"] && errorObj[_DYN_REASON ][strStack]) {
|
|
4132
|
+
details = _convertStackObj(errorObj[_DYN_REASON ][strStack]);
|
|
4065
4133
|
}
|
|
4066
4134
|
else if (isString(errorObj)) {
|
|
4067
4135
|
details = _convertStackObj(errorObj);
|
|
@@ -4532,7 +4600,7 @@ var RemoteDependencyData = /** @class */ (function () {
|
|
|
4532
4600
|
_self.resultCode = resultCode + "";
|
|
4533
4601
|
_self.type = dataSanitizeString(logger, requestAPI);
|
|
4534
4602
|
var dependencyFields = AjaxHelperParseDependencyPath(logger, absoluteUrl, method, commandName);
|
|
4535
|
-
_self
|
|
4603
|
+
_self[_DYN_DATA$1 ] = dataSanitizeUrl(logger, commandName) || dependencyFields[_DYN_DATA$1 ];
|
|
4536
4604
|
_self.target = dataSanitizeString(logger, dependencyFields.target);
|
|
4537
4605
|
if (correlationContext) {
|
|
4538
4606
|
_self.target = "".concat(_self.target, " | ").concat(correlationContext);
|
|
@@ -4698,6 +4766,360 @@ var ContextTagKeys = /** @class */ (function (_super) {
|
|
|
4698
4766
|
|
|
4699
4767
|
var CtxTagKeys = new ContextTagKeys();
|
|
4700
4768
|
|
|
4769
|
+
var STR_EMPTY = "";
|
|
4770
|
+
var SenderPostManager = /** @class */ (function () {
|
|
4771
|
+
function SenderPostManager() {
|
|
4772
|
+
var _syncFetchPayload = 0;
|
|
4773
|
+
var _enableSendPromise;
|
|
4774
|
+
var _isInitialized;
|
|
4775
|
+
var _diagLog;
|
|
4776
|
+
var _isOneDs;
|
|
4777
|
+
var _onCompleteFuncs;
|
|
4778
|
+
var _disableCredentials;
|
|
4779
|
+
var _fallbackInst;
|
|
4780
|
+
var _disableXhr;
|
|
4781
|
+
var _disableBeacon;
|
|
4782
|
+
var _disableBeaconSync;
|
|
4783
|
+
dynamicProto(SenderPostManager, this, function (_self, _base) {
|
|
4784
|
+
var _sendCredentials = true;
|
|
4785
|
+
_initDefaults();
|
|
4786
|
+
_self.initialize = function (config, diagLog) {
|
|
4787
|
+
_diagLog = diagLog;
|
|
4788
|
+
if (_isInitialized) {
|
|
4789
|
+
_throwInternal(_diagLog, 1 , 28 , "Sender is already initialized");
|
|
4790
|
+
}
|
|
4791
|
+
_self.SetConfig(config);
|
|
4792
|
+
_isInitialized = true;
|
|
4793
|
+
};
|
|
4794
|
+
_self["_getDbgPlgTargets"] = function () {
|
|
4795
|
+
return [_isInitialized, _isOneDs, _disableCredentials, _enableSendPromise];
|
|
4796
|
+
};
|
|
4797
|
+
_self.SetConfig = function (config) {
|
|
4798
|
+
try {
|
|
4799
|
+
_onCompleteFuncs = config.senderOnCompleteCallBack || {};
|
|
4800
|
+
_disableCredentials = !!config.disableCredentials;
|
|
4801
|
+
_isOneDs = !!config.isOneDs;
|
|
4802
|
+
_enableSendPromise = !!config.enableSendPromise;
|
|
4803
|
+
_disableXhr = !!config.disableXhr;
|
|
4804
|
+
_disableBeacon = !!config.disableBeacon;
|
|
4805
|
+
_disableBeaconSync = !!config.disableBeaconSync;
|
|
4806
|
+
_fallbackInst = { sendPOST: _xhrSender };
|
|
4807
|
+
if (_disableCredentials) {
|
|
4808
|
+
var location_1 = getLocation();
|
|
4809
|
+
if (location_1 && location_1.protocol && location_1.protocol[_DYN_TO_LOWER_CASE ]() === "file:") {
|
|
4810
|
+
_sendCredentials = false;
|
|
4811
|
+
}
|
|
4812
|
+
}
|
|
4813
|
+
return true;
|
|
4814
|
+
}
|
|
4815
|
+
catch (e) {
|
|
4816
|
+
}
|
|
4817
|
+
return false;
|
|
4818
|
+
};
|
|
4819
|
+
_self.getSyncFetchPayload = function () {
|
|
4820
|
+
return _syncFetchPayload;
|
|
4821
|
+
};
|
|
4822
|
+
_self.getXhrInst = function (transports, sync) {
|
|
4823
|
+
if (transports && transports[_DYN_LENGTH$1 ]) {
|
|
4824
|
+
return _getSenderInterface(transports, sync);
|
|
4825
|
+
}
|
|
4826
|
+
return null;
|
|
4827
|
+
};
|
|
4828
|
+
_self.getFallbackInst = function () {
|
|
4829
|
+
return _fallbackInst;
|
|
4830
|
+
};
|
|
4831
|
+
_self._doTeardown = function (unloadCtx, unloadState) {
|
|
4832
|
+
_initDefaults();
|
|
4833
|
+
};
|
|
4834
|
+
function _onSuccess(res, onComplete) {
|
|
4835
|
+
_doOnComplete(onComplete, 200, {}, res);
|
|
4836
|
+
}
|
|
4837
|
+
function _onError(message, onComplete) {
|
|
4838
|
+
_throwInternal(_diagLog, 2 , 26 , "Failed to send telemetry.", { message: message });
|
|
4839
|
+
_doOnComplete(onComplete, 400, {});
|
|
4840
|
+
}
|
|
4841
|
+
function _onNoPayloadUrl(onComplete) {
|
|
4842
|
+
_onError("No endpoint url is provided for the batch", onComplete);
|
|
4843
|
+
}
|
|
4844
|
+
function _getSenderInterface(transports, syncSupport) {
|
|
4845
|
+
var transportType = null;
|
|
4846
|
+
var sendPostFunc = null;
|
|
4847
|
+
var lp = 0;
|
|
4848
|
+
while (sendPostFunc == null && lp < transports[_DYN_LENGTH$1 ]) {
|
|
4849
|
+
transportType = transports[lp];
|
|
4850
|
+
if (!_disableXhr && transportType === 1 ) {
|
|
4851
|
+
if (useXDomainRequest()) {
|
|
4852
|
+
sendPostFunc = _xdrSender;
|
|
4853
|
+
}
|
|
4854
|
+
else if (isXhrSupported()) {
|
|
4855
|
+
sendPostFunc = _xhrSender;
|
|
4856
|
+
}
|
|
4857
|
+
}
|
|
4858
|
+
else if (transportType === 2 && isFetchSupported(syncSupport)) {
|
|
4859
|
+
sendPostFunc = _doFetchSender;
|
|
4860
|
+
}
|
|
4861
|
+
else if (transportType === 3 && isBeaconsSupported() && (syncSupport ? !_disableBeaconSync : !_disableBeacon)) {
|
|
4862
|
+
sendPostFunc = _beaconSender;
|
|
4863
|
+
}
|
|
4864
|
+
lp++;
|
|
4865
|
+
}
|
|
4866
|
+
if (sendPostFunc) {
|
|
4867
|
+
return {
|
|
4868
|
+
sendPOST: sendPostFunc
|
|
4869
|
+
};
|
|
4870
|
+
}
|
|
4871
|
+
return null;
|
|
4872
|
+
}
|
|
4873
|
+
function _doOnComplete(oncomplete, status, headers, response) {
|
|
4874
|
+
try {
|
|
4875
|
+
oncomplete && oncomplete(status, headers, response);
|
|
4876
|
+
}
|
|
4877
|
+
catch (e) {
|
|
4878
|
+
}
|
|
4879
|
+
}
|
|
4880
|
+
function _doBeaconSend(payload, oncomplete) {
|
|
4881
|
+
var nav = getNavigator();
|
|
4882
|
+
var url = payload[_DYN_URL_STRING ];
|
|
4883
|
+
if (!url) {
|
|
4884
|
+
_onNoPayloadUrl(oncomplete);
|
|
4885
|
+
return true;
|
|
4886
|
+
}
|
|
4887
|
+
var data = payload[_DYN_DATA$1 ];
|
|
4888
|
+
var plainTextBatch = new Blob([data], { type: "text/plain;charset=UTF-8" });
|
|
4889
|
+
var queued = nav.sendBeacon(url, plainTextBatch);
|
|
4890
|
+
return queued;
|
|
4891
|
+
}
|
|
4892
|
+
function _beaconSender(payload, oncomplete, sync) {
|
|
4893
|
+
var data = payload[_DYN_DATA$1 ];
|
|
4894
|
+
if (data) {
|
|
4895
|
+
if (!_doBeaconSend(payload, oncomplete)) {
|
|
4896
|
+
var onRetry = _onCompleteFuncs && _onCompleteFuncs.beaconOnRetry;
|
|
4897
|
+
if (onRetry && isFunction(onRetry)) {
|
|
4898
|
+
onRetry(payload, oncomplete, _doBeaconSend);
|
|
4899
|
+
}
|
|
4900
|
+
else {
|
|
4901
|
+
_fallbackInst && _fallbackInst.sendPOST(payload, oncomplete, true);
|
|
4902
|
+
_throwInternal(_diagLog, 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with normal sender.");
|
|
4903
|
+
}
|
|
4904
|
+
}
|
|
4905
|
+
else {
|
|
4906
|
+
_onSuccess(null, oncomplete);
|
|
4907
|
+
}
|
|
4908
|
+
}
|
|
4909
|
+
return;
|
|
4910
|
+
}
|
|
4911
|
+
function _xhrSender(payload, oncomplete, sync) {
|
|
4912
|
+
var thePromise;
|
|
4913
|
+
var resolveFunc;
|
|
4914
|
+
var rejectFunc;
|
|
4915
|
+
var headers = payload.headers || {};
|
|
4916
|
+
if (!sync && _enableSendPromise) {
|
|
4917
|
+
thePromise = createPromise(function (resolve, reject) {
|
|
4918
|
+
resolveFunc = resolve;
|
|
4919
|
+
rejectFunc = reject;
|
|
4920
|
+
});
|
|
4921
|
+
}
|
|
4922
|
+
var xhr = new XMLHttpRequest();
|
|
4923
|
+
var endPointUrl = payload[_DYN_URL_STRING ];
|
|
4924
|
+
if (!endPointUrl) {
|
|
4925
|
+
_onNoPayloadUrl(oncomplete);
|
|
4926
|
+
resolveFunc && resolveFunc(false);
|
|
4927
|
+
return;
|
|
4928
|
+
}
|
|
4929
|
+
try {
|
|
4930
|
+
xhr[DisabledPropertyName] = true;
|
|
4931
|
+
}
|
|
4932
|
+
catch (e) {
|
|
4933
|
+
}
|
|
4934
|
+
xhr.open("POST", endPointUrl, !sync);
|
|
4935
|
+
xhr[_DYN_SET_REQUEST_HEADER ]("Content-type", "application/json");
|
|
4936
|
+
if (isInternalApplicationInsightsEndpoint(endPointUrl)) {
|
|
4937
|
+
xhr[_DYN_SET_REQUEST_HEADER ](RequestHeaders[6 ], RequestHeaders[7 ]);
|
|
4938
|
+
}
|
|
4939
|
+
arrForEach(objKeys(headers), function (headerName) {
|
|
4940
|
+
xhr[_DYN_SET_REQUEST_HEADER ](headerName, headers[headerName]);
|
|
4941
|
+
});
|
|
4942
|
+
xhr.onreadystatechange = function () {
|
|
4943
|
+
var response = getResponseText(xhr);
|
|
4944
|
+
var onReadyFunc = _onCompleteFuncs && _onCompleteFuncs.xhrOnComplete;
|
|
4945
|
+
var onReadyFuncExist = onReadyFunc && isFunction(onReadyFunc);
|
|
4946
|
+
if (onReadyFuncExist) {
|
|
4947
|
+
onReadyFunc(xhr, oncomplete, payload);
|
|
4948
|
+
}
|
|
4949
|
+
if (xhr.readyState === 4) {
|
|
4950
|
+
if (!onReadyFuncExist) {
|
|
4951
|
+
_doOnComplete(oncomplete, xhr.status, {}, response);
|
|
4952
|
+
}
|
|
4953
|
+
resolveFunc && resolveFunc(true);
|
|
4954
|
+
}
|
|
4955
|
+
};
|
|
4956
|
+
xhr.onerror = function (event) {
|
|
4957
|
+
_doOnComplete(oncomplete, 400, {}, formatErrorMessageXhr(xhr));
|
|
4958
|
+
rejectFunc && rejectFunc(event);
|
|
4959
|
+
};
|
|
4960
|
+
xhr.ontimeout = function () {
|
|
4961
|
+
_doOnComplete(oncomplete, 500, {}, formatErrorMessageXhr(xhr));
|
|
4962
|
+
resolveFunc && resolveFunc(false);
|
|
4963
|
+
};
|
|
4964
|
+
xhr.send(payload[_DYN_DATA$1 ]);
|
|
4965
|
+
return thePromise;
|
|
4966
|
+
}
|
|
4967
|
+
function _doFetchSender(payload, oncomplete, sync) {
|
|
4968
|
+
var _a;
|
|
4969
|
+
var endPointUrl = payload[_DYN_URL_STRING ];
|
|
4970
|
+
var batch = payload[_DYN_DATA$1 ];
|
|
4971
|
+
var plainTextBatch = new Blob([batch], { type: "application/json" });
|
|
4972
|
+
var thePromise;
|
|
4973
|
+
var resolveFunc;
|
|
4974
|
+
var rejectFunc;
|
|
4975
|
+
var requestHeaders = new Headers();
|
|
4976
|
+
var batchLength = batch[_DYN_LENGTH$1 ];
|
|
4977
|
+
var ignoreResponse = false;
|
|
4978
|
+
var responseHandled = false;
|
|
4979
|
+
var headers = payload.headers || {};
|
|
4980
|
+
if (isInternalApplicationInsightsEndpoint(endPointUrl)) {
|
|
4981
|
+
requestHeaders.append(RequestHeaders[6 ], RequestHeaders[7 ]);
|
|
4982
|
+
}
|
|
4983
|
+
arrForEach(objKeys(headers), function (headerName) {
|
|
4984
|
+
requestHeaders.append(headerName, headers[headerName]);
|
|
4985
|
+
});
|
|
4986
|
+
var init = (_a = {
|
|
4987
|
+
method: "POST",
|
|
4988
|
+
headers: requestHeaders,
|
|
4989
|
+
body: plainTextBatch
|
|
4990
|
+
},
|
|
4991
|
+
_a[DisabledPropertyName] = true
|
|
4992
|
+
,
|
|
4993
|
+
_a);
|
|
4994
|
+
if (_sendCredentials && _isOneDs) {
|
|
4995
|
+
init.credentials = "include";
|
|
4996
|
+
}
|
|
4997
|
+
if (sync) {
|
|
4998
|
+
init.keepalive = true;
|
|
4999
|
+
ignoreResponse = true;
|
|
5000
|
+
_syncFetchPayload += batchLength;
|
|
5001
|
+
}
|
|
5002
|
+
var request = new Request(endPointUrl, init);
|
|
5003
|
+
try {
|
|
5004
|
+
request[DisabledPropertyName] = true;
|
|
5005
|
+
}
|
|
5006
|
+
catch (e) {
|
|
5007
|
+
}
|
|
5008
|
+
if (!sync && _enableSendPromise) {
|
|
5009
|
+
thePromise = createPromise(function (resolve, reject) {
|
|
5010
|
+
resolveFunc = resolve;
|
|
5011
|
+
rejectFunc = reject;
|
|
5012
|
+
});
|
|
5013
|
+
}
|
|
5014
|
+
if (!endPointUrl) {
|
|
5015
|
+
_onNoPayloadUrl(oncomplete);
|
|
5016
|
+
resolveFunc && resolveFunc(false);
|
|
5017
|
+
return;
|
|
5018
|
+
}
|
|
5019
|
+
try {
|
|
5020
|
+
doAwaitResponse(fetch(request), function (result) {
|
|
5021
|
+
if (sync) {
|
|
5022
|
+
_syncFetchPayload -= batchLength;
|
|
5023
|
+
batchLength = 0;
|
|
5024
|
+
}
|
|
5025
|
+
if (!responseHandled) {
|
|
5026
|
+
responseHandled = true;
|
|
5027
|
+
if (!result.rejected) {
|
|
5028
|
+
var response_1 = result.value;
|
|
5029
|
+
if (!response_1.ok) {
|
|
5030
|
+
_doOnComplete(oncomplete, 400, {}, response_1.statusText);
|
|
5031
|
+
resolveFunc && resolveFunc(false);
|
|
5032
|
+
}
|
|
5033
|
+
else {
|
|
5034
|
+
doAwaitResponse(response_1.text(), function (resp) {
|
|
5035
|
+
var status = response_1.status;
|
|
5036
|
+
var onCompleteFunc = _onCompleteFuncs.fetchOnComplete;
|
|
5037
|
+
if (onCompleteFunc && isFunction(onCompleteFunc)) {
|
|
5038
|
+
onCompleteFunc(response_1, oncomplete, resp.value || STR_EMPTY, payload);
|
|
5039
|
+
}
|
|
5040
|
+
else {
|
|
5041
|
+
_doOnComplete(oncomplete, status, {}, resp.value || STR_EMPTY);
|
|
5042
|
+
}
|
|
5043
|
+
resolveFunc && resolveFunc(true);
|
|
5044
|
+
});
|
|
5045
|
+
}
|
|
5046
|
+
}
|
|
5047
|
+
else {
|
|
5048
|
+
_doOnComplete(oncomplete, 400, {}, result[_DYN_REASON ] && result[_DYN_REASON ][_DYN_MESSAGE ]);
|
|
5049
|
+
rejectFunc && rejectFunc(result[_DYN_REASON ]);
|
|
5050
|
+
}
|
|
5051
|
+
}
|
|
5052
|
+
});
|
|
5053
|
+
}
|
|
5054
|
+
catch (e) {
|
|
5055
|
+
if (!responseHandled) {
|
|
5056
|
+
_doOnComplete(oncomplete, 400, {}, dumpObj(e));
|
|
5057
|
+
rejectFunc && rejectFunc(e);
|
|
5058
|
+
}
|
|
5059
|
+
}
|
|
5060
|
+
if (ignoreResponse && !responseHandled) {
|
|
5061
|
+
responseHandled = true;
|
|
5062
|
+
_doOnComplete(oncomplete, 200, {});
|
|
5063
|
+
resolveFunc && resolveFunc(true);
|
|
5064
|
+
}
|
|
5065
|
+
return thePromise;
|
|
5066
|
+
}
|
|
5067
|
+
function _xdrSender(payload, oncomplete, sync) {
|
|
5068
|
+
var _window = getWindow();
|
|
5069
|
+
var xdr = new XDomainRequest();
|
|
5070
|
+
var data = payload[_DYN_DATA$1 ];
|
|
5071
|
+
xdr.onload = function () {
|
|
5072
|
+
var response = getResponseText(xdr);
|
|
5073
|
+
var onloadFunc = _onCompleteFuncs && _onCompleteFuncs.xdrOnComplete;
|
|
5074
|
+
if (onloadFunc && isFunction(onloadFunc)) {
|
|
5075
|
+
onloadFunc(xdr, oncomplete, payload);
|
|
5076
|
+
}
|
|
5077
|
+
else {
|
|
5078
|
+
_doOnComplete(oncomplete, 200, {}, response);
|
|
5079
|
+
}
|
|
5080
|
+
};
|
|
5081
|
+
xdr.onerror = function () {
|
|
5082
|
+
_doOnComplete(oncomplete, 400, {}, formatErrorMessageXdr(xdr));
|
|
5083
|
+
};
|
|
5084
|
+
xdr.ontimeout = function () {
|
|
5085
|
+
_doOnComplete(oncomplete, 500, {});
|
|
5086
|
+
};
|
|
5087
|
+
xdr.onprogress = function () { };
|
|
5088
|
+
var hostingProtocol = _window && _window[_DYN_LOCATION ] && _window[_DYN_LOCATION ].protocol || "";
|
|
5089
|
+
var endpoint = payload[_DYN_URL_STRING ];
|
|
5090
|
+
if (!endpoint) {
|
|
5091
|
+
_onNoPayloadUrl(oncomplete);
|
|
5092
|
+
return;
|
|
5093
|
+
}
|
|
5094
|
+
if (endpoint.lastIndexOf(hostingProtocol, 0) !== 0) {
|
|
5095
|
+
var msg = "Cannot send XDomain request. The endpoint URL protocol doesn't match the hosting page protocol.";
|
|
5096
|
+
_throwInternal(_diagLog, 2 , 40 , ". " + msg);
|
|
5097
|
+
_onError(msg, oncomplete);
|
|
5098
|
+
return;
|
|
5099
|
+
}
|
|
5100
|
+
var endpointUrl = endpoint.replace(/^(https?:)/, "");
|
|
5101
|
+
xdr.open("POST", endpointUrl);
|
|
5102
|
+
xdr.send(data);
|
|
5103
|
+
}
|
|
5104
|
+
function _initDefaults() {
|
|
5105
|
+
_syncFetchPayload = 0;
|
|
5106
|
+
_isInitialized = false;
|
|
5107
|
+
_enableSendPromise = false;
|
|
5108
|
+
_diagLog = null;
|
|
5109
|
+
_isOneDs = null;
|
|
5110
|
+
_onCompleteFuncs = null;
|
|
5111
|
+
_disableCredentials = null;
|
|
5112
|
+
_fallbackInst = null;
|
|
5113
|
+
_disableXhr = false;
|
|
5114
|
+
_disableBeacon = false;
|
|
5115
|
+
_disableBeaconSync = false;
|
|
5116
|
+
}
|
|
5117
|
+
});
|
|
5118
|
+
}
|
|
5119
|
+
SenderPostManager.__ieDyn=1;
|
|
5120
|
+
return SenderPostManager;
|
|
5121
|
+
}());
|
|
5122
|
+
|
|
4701
5123
|
function _disableEvents(target, evtNamespace) {
|
|
4702
5124
|
eventOff(target, null, null, evtNamespace);
|
|
4703
5125
|
}
|
|
@@ -4836,43 +5258,42 @@ var _DYN_EVENTS_LIMIT_IN_MEM = "eventsLimitInMem";
|
|
|
4836
5258
|
var _DYN_PUSH = "push";
|
|
4837
5259
|
var _DYN_EMIT_LINE_DELIMITED_0 = "emitLineDelimitedJson";
|
|
4838
5260
|
var _DYN_CLEAR = "clear";
|
|
4839
|
-
var _DYN_BATCH_PAYLOADS = "batchPayloads";
|
|
4840
5261
|
var _DYN_CREATE_NEW = "createNew";
|
|
4841
5262
|
var _DYN_MARK_AS_SENT = "markAsSent";
|
|
4842
5263
|
var _DYN_CLEAR_SENT = "clearSent";
|
|
4843
5264
|
var _DYN_BUFFER_OVERRIDE = "bufferOverride";
|
|
4844
5265
|
var _DYN__BUFFER__KEY = "BUFFER_KEY";
|
|
4845
5266
|
var _DYN__SENT__BUFFER__KEY = "SENT_BUFFER_KEY";
|
|
4846
|
-
var _DYN_CONCAT = "concat";
|
|
4847
5267
|
var _DYN__MAX__BUFFER__SIZE = "MAX_BUFFER_SIZE";
|
|
4848
|
-
var _DYN_SEND_POST = "sendPOST";
|
|
4849
5268
|
var _DYN_TRIGGER_SEND = "triggerSend";
|
|
4850
5269
|
var _DYN_DIAG_LOG = "diagLog";
|
|
5270
|
+
var _DYN_INITIALIZE = "initialize";
|
|
4851
5271
|
var _DYN__SENDER = "_sender";
|
|
4852
5272
|
var _DYN_CUSTOM_HEADERS = "customHeaders";
|
|
4853
5273
|
var _DYN_MAX_BATCH_SIZE_IN_BY1 = "maxBatchSizeInBytes";
|
|
4854
5274
|
var _DYN_ONUNLOAD_DISABLE_BEA2 = "onunloadDisableBeacon";
|
|
4855
5275
|
var _DYN_IS_BEACON_API_DISABL3 = "isBeaconApiDisabled";
|
|
4856
5276
|
var _DYN_ALWAYS_USE_XHR_OVERR4 = "alwaysUseXhrOverride";
|
|
5277
|
+
var _DYN_DISABLE_XHR = "disableXhr";
|
|
4857
5278
|
var _DYN_ENABLE_SESSION_STORA5 = "enableSessionStorageBuffer";
|
|
4858
5279
|
var _DYN__BUFFER = "_buffer";
|
|
4859
5280
|
var _DYN_ONUNLOAD_DISABLE_FET6 = "onunloadDisableFetch";
|
|
4860
5281
|
var _DYN_DISABLE_SEND_BEACON_7 = "disableSendBeaconSplit";
|
|
4861
5282
|
var _DYN_INSTRUMENTATION_KEY = "instrumentationKey";
|
|
5283
|
+
var _DYN_ENABLE_SEND_PROMISE = "enableSendPromise";
|
|
5284
|
+
var _DYN_GET_XHR_INST = "getXhrInst";
|
|
4862
5285
|
var _DYN_UNLOAD_TRANSPORTS = "unloadTransports";
|
|
4863
5286
|
var _DYN_CONVERT_UNDEFINED = "convertUndefined";
|
|
4864
5287
|
var _DYN_MAX_BATCH_INTERVAL = "maxBatchInterval";
|
|
4865
5288
|
var _DYN_SERIALIZE = "serialize";
|
|
4866
|
-
var _DYN__XHR_READY_STATE_CHA8 = "_xhrReadyStateChange";
|
|
4867
5289
|
var _DYN__ON_ERROR = "_onError";
|
|
4868
5290
|
var _DYN__ON_PARTIAL_SUCCESS = "_onPartialSuccess";
|
|
4869
5291
|
var _DYN__ON_SUCCESS = "_onSuccess";
|
|
4870
5292
|
var _DYN_ITEMS_ACCEPTED = "itemsAccepted";
|
|
4871
5293
|
var _DYN_ITEMS_RECEIVED = "itemsReceived";
|
|
5294
|
+
var _DYN_ORI_PAYLOAD = "oriPayload";
|
|
4872
5295
|
var _DYN_BASE_TYPE = "baseType";
|
|
4873
5296
|
var _DYN_SAMPLE_RATE = "sampleRate";
|
|
4874
|
-
var _DYN_ORI_PAYLOAD = "oriPayload";
|
|
4875
|
-
var _DYN_SET_REQUEST_HEADER = "setRequestHeader";
|
|
4876
5297
|
var _DYN_EVENTS_SEND_REQUEST = "eventsSendRequest";
|
|
4877
5298
|
var _DYN_GET_SAMPLING_SCORE = "getSamplingScore";
|
|
4878
5299
|
var _DYN_GET_HASH_CODE_SCORE = "getHashCodeScore";
|
|
@@ -4986,7 +5407,7 @@ function EnvelopeCreatorInit(logger, telemetryItem) {
|
|
|
4986
5407
|
}
|
|
4987
5408
|
}
|
|
4988
5409
|
var EnvelopeCreator = {
|
|
4989
|
-
Version: '3.1.1-nightly3.2403-
|
|
5410
|
+
Version: '3.1.1-nightly3.2403-03'
|
|
4990
5411
|
};
|
|
4991
5412
|
function DependencyEnvelopeCreator(logger, telemetryItem, customUndefinedValue) {
|
|
4992
5413
|
EnvelopeCreatorInit(logger, telemetryItem);
|
|
@@ -5177,7 +5598,7 @@ var BaseSendBuffer = /** @class */ (function () {
|
|
|
5177
5598
|
_self.getItems = function () {
|
|
5178
5599
|
return _buffer.slice(0);
|
|
5179
5600
|
};
|
|
5180
|
-
_self
|
|
5601
|
+
_self.batchPayloads = function (payload) {
|
|
5181
5602
|
if (payload && payload[_DYN_LENGTH ] > 0) {
|
|
5182
5603
|
var batch = config[_DYN_EMIT_LINE_DELIMITED_0 ] ?
|
|
5183
5604
|
payload.join("\n") :
|
|
@@ -5227,7 +5648,7 @@ var SessionStorageSendBuffer = /** @class */ (function (_super) {
|
|
|
5227
5648
|
dynamicProto(SessionStorageSendBuffer, _this, function (_self, _base) {
|
|
5228
5649
|
var bufferItems = _getBuffer(SessionStorageSendBuffer[_DYN__BUFFER__KEY ]);
|
|
5229
5650
|
var notDeliveredItems = _getBuffer(SessionStorageSendBuffer[_DYN__SENT__BUFFER__KEY ]);
|
|
5230
|
-
var buffer = _self._set(bufferItems
|
|
5651
|
+
var buffer = _self._set(bufferItems.concat(notDeliveredItems));
|
|
5231
5652
|
if (buffer[_DYN_LENGTH ] > SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE ]) {
|
|
5232
5653
|
buffer[_DYN_LENGTH ] = SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE ];
|
|
5233
5654
|
}
|
|
@@ -5254,7 +5675,7 @@ var SessionStorageSendBuffer = /** @class */ (function (_super) {
|
|
|
5254
5675
|
_setBuffer(SessionStorageSendBuffer[_DYN__BUFFER__KEY ], _self._set(_removePayloadsFromBuffer(payload, _self[_DYN__GET ]())));
|
|
5255
5676
|
var sentElements = _getBuffer(SessionStorageSendBuffer[_DYN__SENT__BUFFER__KEY ]);
|
|
5256
5677
|
if (sentElements instanceof Array && payload instanceof Array) {
|
|
5257
|
-
sentElements = sentElements
|
|
5678
|
+
sentElements = sentElements.concat(payload);
|
|
5258
5679
|
if (sentElements[_DYN_LENGTH ] > SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE ]) {
|
|
5259
5680
|
_throwInternal(logger, 1 , 67 , "Sent buffer reached its maximum size: " + sentElements[_DYN_LENGTH ], true);
|
|
5260
5681
|
sentElements[_DYN_LENGTH ] = SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE ];
|
|
@@ -5487,7 +5908,7 @@ var HashCodeScoreGenerator = /** @class */ (function () {
|
|
|
5487
5908
|
return 0;
|
|
5488
5909
|
}
|
|
5489
5910
|
while (input[_DYN_LENGTH ] < MIN_INPUT_LENGTH) {
|
|
5490
|
-
input = input
|
|
5911
|
+
input = input.concat(input);
|
|
5491
5912
|
}
|
|
5492
5913
|
var hash = 5381;
|
|
5493
5914
|
for (var i = 0; i < input[_DYN_LENGTH ]; ++i) {
|
|
@@ -5567,18 +5988,7 @@ function _getResponseText(xhr) {
|
|
|
5567
5988
|
return null;
|
|
5568
5989
|
}
|
|
5569
5990
|
function isOverrideFn(httpXHROverride) {
|
|
5570
|
-
return httpXHROverride && httpXHROverride
|
|
5571
|
-
}
|
|
5572
|
-
function _prependTransports(theTransports, newTransports) {
|
|
5573
|
-
if (newTransports) {
|
|
5574
|
-
if (isNumber(newTransports)) {
|
|
5575
|
-
theTransports = [newTransports][_DYN_CONCAT ](theTransports);
|
|
5576
|
-
}
|
|
5577
|
-
else if (isArray(newTransports)) {
|
|
5578
|
-
theTransports = newTransports[_DYN_CONCAT ](theTransports);
|
|
5579
|
-
}
|
|
5580
|
-
}
|
|
5581
|
-
return theTransports;
|
|
5991
|
+
return httpXHROverride && httpXHROverride.sendPOST;
|
|
5582
5992
|
}
|
|
5583
5993
|
var defaultAppInsightsChannelConfig = objDeepFreeze((_a = {
|
|
5584
5994
|
endpointUrl: cfgDfValidate(isTruthy, DEFAULT_BREEZE_ENDPOINT + DEFAULT_BREEZE_PATH)
|
|
@@ -5591,7 +6001,7 @@ var defaultAppInsightsChannelConfig = objDeepFreeze((_a = {
|
|
|
5591
6001
|
_a.isRetryDisabled = cfgDfBoolean(),
|
|
5592
6002
|
_a[_DYN_IS_BEACON_API_DISABL3 ] = cfgDfBoolean(true),
|
|
5593
6003
|
_a[_DYN_DISABLE_SEND_BEACON_7 ] = cfgDfBoolean(true),
|
|
5594
|
-
_a
|
|
6004
|
+
_a[_DYN_DISABLE_XHR ] = cfgDfBoolean(),
|
|
5595
6005
|
_a[_DYN_ONUNLOAD_DISABLE_FET6 ] = cfgDfBoolean(),
|
|
5596
6006
|
_a[_DYN_ONUNLOAD_DISABLE_BEA2 ] = cfgDfBoolean(),
|
|
5597
6007
|
_a[_DYN_INSTRUMENTATION_KEY ] = UNDEFINED_VALUE,
|
|
@@ -5656,6 +6066,7 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5656
6066
|
var _xhrSend;
|
|
5657
6067
|
var _fallbackSend;
|
|
5658
6068
|
var _disableBeaconSplit;
|
|
6069
|
+
var _sendPostMgr;
|
|
5659
6070
|
dynamicProto(Sender, _this, function (_self, _base) {
|
|
5660
6071
|
_initDefaults();
|
|
5661
6072
|
_self.pause = function () {
|
|
@@ -5700,11 +6111,11 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5700
6111
|
_self.addHeader = function (name, value) {
|
|
5701
6112
|
_headers[name] = value;
|
|
5702
6113
|
};
|
|
5703
|
-
_self
|
|
6114
|
+
_self[_DYN_INITIALIZE ] = function (config, core, extensions, pluginChain) {
|
|
5704
6115
|
if (_self.isInitialized()) {
|
|
5705
6116
|
_throwInternal(_self[_DYN_DIAG_LOG ](), 1 , 28 , "Sender is already initialized");
|
|
5706
6117
|
}
|
|
5707
|
-
_base
|
|
6118
|
+
_base[_DYN_INITIALIZE ](config, core, extensions, pluginChain);
|
|
5708
6119
|
var identifier = _self.identifier;
|
|
5709
6120
|
_serializer = new Serializer(core.logger);
|
|
5710
6121
|
_consecutiveErrors = 0;
|
|
@@ -5739,7 +6150,7 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5739
6150
|
_beaconOnUnloadSupported = senderConfig[_DYN_ONUNLOAD_DISABLE_BEA2 ] === false && isBeaconsSupported();
|
|
5740
6151
|
_beaconNormalSupported = senderConfig[_DYN_IS_BEACON_API_DISABL3 ] === false && isBeaconsSupported();
|
|
5741
6152
|
_alwaysUseCustomSend = senderConfig[_DYN_ALWAYS_USE_XHR_OVERR4 ];
|
|
5742
|
-
_disableXhr = !!senderConfig
|
|
6153
|
+
_disableXhr = !!senderConfig[_DYN_DISABLE_XHR ];
|
|
5743
6154
|
var bufferOverride = senderConfig[_DYN_BUFFER_OVERRIDE ];
|
|
5744
6155
|
var canUseSessionStorage = !!senderConfig[_DYN_ENABLE_SESSION_STORA5 ] &&
|
|
5745
6156
|
(!!bufferOverride || utlCanUseSessionStorage());
|
|
@@ -5781,13 +6192,21 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5781
6192
|
else {
|
|
5782
6193
|
_customHeaders = null;
|
|
5783
6194
|
}
|
|
5784
|
-
_enableSendPromise = senderConfig
|
|
6195
|
+
_enableSendPromise = senderConfig[_DYN_ENABLE_SEND_PROMISE ];
|
|
6196
|
+
var sendPostConfig = _getSendPostMgrConfig();
|
|
6197
|
+
if (!_sendPostMgr) {
|
|
6198
|
+
_sendPostMgr = new SenderPostManager();
|
|
6199
|
+
_sendPostMgr[_DYN_INITIALIZE ](sendPostConfig, diagLog);
|
|
6200
|
+
}
|
|
6201
|
+
else {
|
|
6202
|
+
_sendPostMgr.SetConfig(sendPostConfig);
|
|
6203
|
+
}
|
|
5785
6204
|
var customInterface = senderConfig.httpXHROverride;
|
|
5786
6205
|
var httpInterface = null;
|
|
5787
6206
|
var syncInterface = null;
|
|
5788
|
-
var theTransports =
|
|
5789
|
-
httpInterface =
|
|
5790
|
-
var xhrInterface =
|
|
6207
|
+
var theTransports = prependTransports([3 , 1 , 2 ], senderConfig.transports);
|
|
6208
|
+
httpInterface = _sendPostMgr && _sendPostMgr[_DYN_GET_XHR_INST ](theTransports, false);
|
|
6209
|
+
var xhrInterface = _sendPostMgr && _sendPostMgr.getFallbackInst();
|
|
5791
6210
|
_xhrSend = function (payload, isAsync) {
|
|
5792
6211
|
return _doSend(xhrInterface, payload, isAsync);
|
|
5793
6212
|
};
|
|
@@ -5801,11 +6220,11 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5801
6220
|
if (_fetchKeepAlive) {
|
|
5802
6221
|
_syncUnloadSender = _fetchKeepAliveSender;
|
|
5803
6222
|
}
|
|
5804
|
-
var syncTransports =
|
|
6223
|
+
var syncTransports = prependTransports([3 , 1 ], senderConfig[_DYN_UNLOAD_TRANSPORTS ]);
|
|
5805
6224
|
if (!_fetchKeepAlive) {
|
|
5806
6225
|
syncTransports = syncTransports.filter(function (transport) { return transport !== 2 ; });
|
|
5807
6226
|
}
|
|
5808
|
-
syncInterface =
|
|
6227
|
+
syncInterface = _sendPostMgr && _sendPostMgr[_DYN_GET_XHR_INST ](syncTransports, true);
|
|
5809
6228
|
syncInterface = _alwaysUseCustomSend ? customInterface : (syncInterface || customInterface);
|
|
5810
6229
|
if ((_alwaysUseCustomSend || senderConfig[_DYN_UNLOAD_TRANSPORTS ] || !_syncUnloadSender) && syncInterface) {
|
|
5811
6230
|
_syncUnloadSender = function (payload, isAsync) {
|
|
@@ -5847,10 +6266,8 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5847
6266
|
_self.isCompletelyIdle = function () {
|
|
5848
6267
|
return !_paused && _syncFetchPayload === 0 && _self._buffer[_DYN_COUNT ]() === 0;
|
|
5849
6268
|
};
|
|
5850
|
-
_self
|
|
5851
|
-
|
|
5852
|
-
_checkResponsStatus(xhr.status, payload, xhr.responseURL, countOfItemsInPayload, _formatErrorMessageXhr(xhr), _getResponseText(xhr) || xhr.response);
|
|
5853
|
-
}
|
|
6269
|
+
_self._xhrReadyStateChange = function (xhr, payload, countOfItemsInPayload) {
|
|
6270
|
+
return _xhrReadyStateChange(xhr, payload, countOfItemsInPayload);
|
|
5854
6271
|
};
|
|
5855
6272
|
_self[_DYN_TRIGGER_SEND ] = function (async, forcedSender, sendReason) {
|
|
5856
6273
|
if (async === void 0) { async = true; }
|
|
@@ -5926,7 +6343,7 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5926
6343
|
_self[_DYN__ON_SUCCESS ](payload, results[_DYN_ITEMS_ACCEPTED ]);
|
|
5927
6344
|
}
|
|
5928
6345
|
if (failed[_DYN_LENGTH ] > 0) {
|
|
5929
|
-
_self[_DYN__ON_ERROR ](failed,
|
|
6346
|
+
_self[_DYN__ON_ERROR ](failed, formatErrorMessageXhr(null, ["partial success", results[_DYN_ITEMS_ACCEPTED ], "of", results.itemsReceived].join(" ")));
|
|
5930
6347
|
}
|
|
5931
6348
|
if (retry[_DYN_LENGTH ] > 0) {
|
|
5932
6349
|
_resendPayload(retry);
|
|
@@ -5939,22 +6356,89 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5939
6356
|
_self._buffer && _self._buffer[_DYN_CLEAR_SENT ](payload);
|
|
5940
6357
|
};
|
|
5941
6358
|
_self._xdrOnLoad = function (xdr, payload) {
|
|
6359
|
+
return _xdrOnLoad(xdr, payload);
|
|
6360
|
+
};
|
|
6361
|
+
function _xdrOnLoad(xdr, payload) {
|
|
5942
6362
|
var responseText = _getResponseText(xdr);
|
|
5943
6363
|
if (xdr && (responseText + "" === "200" || responseText === "")) {
|
|
5944
6364
|
_consecutiveErrors = 0;
|
|
5945
6365
|
_self[_DYN__ON_SUCCESS ](payload, 0);
|
|
5946
6366
|
}
|
|
5947
6367
|
else {
|
|
5948
|
-
var results =
|
|
6368
|
+
var results = parseResponse(responseText);
|
|
5949
6369
|
if (results && results.itemsReceived && results.itemsReceived > results[_DYN_ITEMS_ACCEPTED ]
|
|
5950
6370
|
&& !_isRetryDisabled) {
|
|
5951
6371
|
_self[_DYN__ON_PARTIAL_SUCCESS ](payload, results);
|
|
5952
6372
|
}
|
|
5953
6373
|
else {
|
|
5954
|
-
_self[_DYN__ON_ERROR ](payload,
|
|
6374
|
+
_self[_DYN__ON_ERROR ](payload, formatErrorMessageXdr(xdr));
|
|
5955
6375
|
}
|
|
5956
6376
|
}
|
|
5957
|
-
}
|
|
6377
|
+
}
|
|
6378
|
+
function _getSendPostMgrConfig() {
|
|
6379
|
+
var _a;
|
|
6380
|
+
try {
|
|
6381
|
+
var onCompleteFuncs = {
|
|
6382
|
+
xdrOnComplete: function (xdr, oncomplete, payload) {
|
|
6383
|
+
var data = _getPayloadArr(payload);
|
|
6384
|
+
if (!data) {
|
|
6385
|
+
return;
|
|
6386
|
+
}
|
|
6387
|
+
return _xdrOnLoad(xdr, data);
|
|
6388
|
+
},
|
|
6389
|
+
fetchOnComplete: function (response, onComplete, resValue, payload) {
|
|
6390
|
+
var data = _getPayloadArr(payload);
|
|
6391
|
+
if (!data) {
|
|
6392
|
+
return;
|
|
6393
|
+
}
|
|
6394
|
+
return _checkResponsStatus(response.status, data, response.url, data[_DYN_LENGTH ], response.statusText, resValue || "");
|
|
6395
|
+
},
|
|
6396
|
+
xhrOnComplete: function (request, oncomplete, payload) {
|
|
6397
|
+
var data = _getPayloadArr(payload);
|
|
6398
|
+
if (!data) {
|
|
6399
|
+
return;
|
|
6400
|
+
}
|
|
6401
|
+
return _xhrReadyStateChange(request, data, data[_DYN_LENGTH ]);
|
|
6402
|
+
},
|
|
6403
|
+
beaconOnRetry: function (data, onComplete, canSend) {
|
|
6404
|
+
return _onBeaconRetry(data, onComplete, canSend);
|
|
6405
|
+
}
|
|
6406
|
+
};
|
|
6407
|
+
var config = (_a = {},
|
|
6408
|
+
_a[_DYN_ENABLE_SEND_PROMISE ] = _enableSendPromise,
|
|
6409
|
+
_a.isOneDs = false,
|
|
6410
|
+
_a.disableCredentials = false,
|
|
6411
|
+
_a[_DYN_DISABLE_XHR ] = _disableXhr,
|
|
6412
|
+
_a.disableBeacon = !_beaconNormalSupported,
|
|
6413
|
+
_a.disableBeaconSync = !_beaconOnUnloadSupported,
|
|
6414
|
+
_a.senderOnCompleteCallBack = onCompleteFuncs,
|
|
6415
|
+
_a);
|
|
6416
|
+
return config;
|
|
6417
|
+
}
|
|
6418
|
+
catch (e) {
|
|
6419
|
+
}
|
|
6420
|
+
return null;
|
|
6421
|
+
}
|
|
6422
|
+
function _xhrReadyStateChange(xhr, payload, countOfItemsInPayload) {
|
|
6423
|
+
if (xhr.readyState === 4) {
|
|
6424
|
+
_checkResponsStatus(xhr.status, payload, xhr.responseURL, countOfItemsInPayload, formatErrorMessageXhr(xhr), _getResponseText(xhr) || xhr.response);
|
|
6425
|
+
}
|
|
6426
|
+
}
|
|
6427
|
+
function _getPayloadArr(payload) {
|
|
6428
|
+
try {
|
|
6429
|
+
if (payload) {
|
|
6430
|
+
var internalPayload = payload;
|
|
6431
|
+
var arr = internalPayload[_DYN_ORI_PAYLOAD ];
|
|
6432
|
+
if (arr && arr[_DYN_LENGTH ]) {
|
|
6433
|
+
return arr;
|
|
6434
|
+
}
|
|
6435
|
+
return null;
|
|
6436
|
+
}
|
|
6437
|
+
}
|
|
6438
|
+
catch (e) {
|
|
6439
|
+
}
|
|
6440
|
+
return null;
|
|
6441
|
+
}
|
|
5958
6442
|
function _validate(telemetryItem, diagLogger) {
|
|
5959
6443
|
if (_disableTelemetry) {
|
|
5960
6444
|
return false;
|
|
@@ -6050,36 +6534,6 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6050
6534
|
function _isSampledIn(envelope) {
|
|
6051
6535
|
return _self._sample.isSampledIn(envelope);
|
|
6052
6536
|
}
|
|
6053
|
-
function _getSenderInterface(transports, syncSupport) {
|
|
6054
|
-
var _a;
|
|
6055
|
-
var transportType = null;
|
|
6056
|
-
var sendPostFunc = null;
|
|
6057
|
-
var lp = 0;
|
|
6058
|
-
while (sendPostFunc == null && lp < transports[_DYN_LENGTH ]) {
|
|
6059
|
-
transportType = transports[lp];
|
|
6060
|
-
if (!_disableXhr && transportType === 1 ) {
|
|
6061
|
-
if (useXDomainRequest()) {
|
|
6062
|
-
sendPostFunc = _xdrSender;
|
|
6063
|
-
}
|
|
6064
|
-
else if (isXhrSupported()) {
|
|
6065
|
-
sendPostFunc = _xhrSender;
|
|
6066
|
-
}
|
|
6067
|
-
}
|
|
6068
|
-
else if (transportType === 2 && isFetchSupported(syncSupport)) {
|
|
6069
|
-
sendPostFunc = _fetchSender;
|
|
6070
|
-
}
|
|
6071
|
-
else if (transportType === 3 && (syncSupport ? _beaconOnUnloadSupported : _beaconNormalSupported)) {
|
|
6072
|
-
sendPostFunc = _beaconSender;
|
|
6073
|
-
}
|
|
6074
|
-
lp++;
|
|
6075
|
-
}
|
|
6076
|
-
if (sendPostFunc) {
|
|
6077
|
-
return _a = {},
|
|
6078
|
-
_a[_DYN_SEND_POST ] = sendPostFunc,
|
|
6079
|
-
_a;
|
|
6080
|
-
}
|
|
6081
|
-
return null;
|
|
6082
|
-
}
|
|
6083
6537
|
function _getOnComplete(payload, status, headers, response) {
|
|
6084
6538
|
if (status === 200 && payload) {
|
|
6085
6539
|
_self._onSuccess(payload, payload[_DYN_LENGTH ]);
|
|
@@ -6094,7 +6548,7 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6094
6548
|
return _getOnComplete(payload, status, headers, response);
|
|
6095
6549
|
};
|
|
6096
6550
|
var payloadData = _getPayload(payload);
|
|
6097
|
-
var sendPostFunc = sendInterface && sendInterface
|
|
6551
|
+
var sendPostFunc = sendInterface && sendInterface.sendPOST;
|
|
6098
6552
|
if (sendPostFunc && payloadData) {
|
|
6099
6553
|
if (markAsSent) {
|
|
6100
6554
|
_self._buffer[_DYN_MARK_AS_SENT ](payload);
|
|
@@ -6106,7 +6560,7 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6106
6560
|
function _getPayload(payload) {
|
|
6107
6561
|
var _a;
|
|
6108
6562
|
if (isArray(payload) && payload[_DYN_LENGTH ] > 0) {
|
|
6109
|
-
var batch = _self
|
|
6563
|
+
var batch = _self[_DYN__BUFFER ].batchPayloads(payload);
|
|
6110
6564
|
var payloadData = (_a = {},
|
|
6111
6565
|
_a[_DYN_DATA ] = batch,
|
|
6112
6566
|
_a.urlString = _endpointUrl,
|
|
@@ -6119,9 +6573,6 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6119
6573
|
}
|
|
6120
6574
|
return null;
|
|
6121
6575
|
}
|
|
6122
|
-
function _fetchSender(payload, oncomplete, sync) {
|
|
6123
|
-
return _doFetchSender(payload, oncomplete, false);
|
|
6124
|
-
}
|
|
6125
6576
|
function _checkMaxSize(incomingPayload) {
|
|
6126
6577
|
var incomingSize = incomingPayload ? incomingPayload[_DYN_LENGTH ] : 0;
|
|
6127
6578
|
if ((_self[_DYN__BUFFER ].size() + incomingSize) > _maxBatchSizeInBytes) {
|
|
@@ -6135,7 +6586,7 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6135
6586
|
function _checkResponsStatus(status, payload, responseUrl, countOfItemsInPayload, errorMessage, res) {
|
|
6136
6587
|
var response = null;
|
|
6137
6588
|
if (!_self._appId) {
|
|
6138
|
-
response =
|
|
6589
|
+
response = parseResponse(res);
|
|
6139
6590
|
if (response && response.appId) {
|
|
6140
6591
|
_self._appId = response.appId;
|
|
6141
6592
|
}
|
|
@@ -6167,7 +6618,7 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6167
6618
|
_checkAndUpdateEndPointUrl(responseUrl);
|
|
6168
6619
|
if (status === 206) {
|
|
6169
6620
|
if (!response) {
|
|
6170
|
-
response =
|
|
6621
|
+
response = parseResponse(res);
|
|
6171
6622
|
}
|
|
6172
6623
|
if (response && !_isRetryDisabled) {
|
|
6173
6624
|
_self[_DYN__ON_PARTIAL_SUCCESS ](payload, response);
|
|
@@ -6195,223 +6646,61 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6195
6646
|
}
|
|
6196
6647
|
return false;
|
|
6197
6648
|
}
|
|
6198
|
-
function _doOnComplete(oncomplete, status, headers, response) {
|
|
6199
|
-
try {
|
|
6200
|
-
oncomplete(status, headers, response);
|
|
6201
|
-
}
|
|
6202
|
-
catch (e) {
|
|
6203
|
-
}
|
|
6204
|
-
}
|
|
6205
6649
|
function _doUnloadSend(payload, isAsync) {
|
|
6206
6650
|
if (_syncUnloadSender) {
|
|
6207
6651
|
_syncUnloadSender(payload, false);
|
|
6208
6652
|
}
|
|
6209
6653
|
else {
|
|
6210
|
-
var
|
|
6211
|
-
|
|
6212
|
-
_beaconSender(payloadData);
|
|
6654
|
+
var beaconInst = _sendPostMgr && _sendPostMgr[_DYN_GET_XHR_INST ]([3 ], true);
|
|
6655
|
+
return _doSend(beaconInst, payload, isAsync);
|
|
6213
6656
|
}
|
|
6214
6657
|
}
|
|
6215
|
-
function
|
|
6216
|
-
var nav = getNavigator();
|
|
6217
|
-
var url = _endpointUrl;
|
|
6218
|
-
var buffer = _self[_DYN__BUFFER ];
|
|
6219
|
-
var batch = buffer[_DYN_BATCH_PAYLOADS ](payload);
|
|
6220
|
-
var plainTextBatch = new Blob([batch], { type: "text/plain;charset=UTF-8" });
|
|
6221
|
-
var queued = nav.sendBeacon(url, plainTextBatch);
|
|
6222
|
-
if (queued) {
|
|
6223
|
-
_self._onSuccess(payload, payload[_DYN_LENGTH ]);
|
|
6224
|
-
}
|
|
6225
|
-
return queued;
|
|
6226
|
-
}
|
|
6227
|
-
function _beaconSender(payload, oncomplete, sync) {
|
|
6658
|
+
function _onBeaconRetry(payload, onComplete, canSend) {
|
|
6228
6659
|
var internalPayload = payload;
|
|
6229
6660
|
var data = internalPayload && internalPayload[_DYN_ORI_PAYLOAD ];
|
|
6230
|
-
if (
|
|
6231
|
-
|
|
6232
|
-
|
|
6233
|
-
|
|
6234
|
-
|
|
6235
|
-
|
|
6236
|
-
|
|
6237
|
-
|
|
6238
|
-
}
|
|
6239
|
-
}
|
|
6240
|
-
if (droppedPayload[_DYN_LENGTH ] > 0) {
|
|
6241
|
-
_fallbackSend && _fallbackSend(droppedPayload, true);
|
|
6242
|
-
_throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with normal sender.");
|
|
6243
|
-
}
|
|
6661
|
+
if (!_disableBeaconSplit) {
|
|
6662
|
+
var droppedPayload = [];
|
|
6663
|
+
for (var lp = 0; lp < data[_DYN_LENGTH ]; lp++) {
|
|
6664
|
+
var thePayload = data[lp];
|
|
6665
|
+
var arr = [thePayload];
|
|
6666
|
+
var item = _getPayload(arr);
|
|
6667
|
+
if (!canSend(item, onComplete)) {
|
|
6668
|
+
droppedPayload[_DYN_PUSH ](thePayload);
|
|
6244
6669
|
}
|
|
6245
6670
|
else {
|
|
6246
|
-
|
|
6247
|
-
_throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with normal sender.");
|
|
6671
|
+
_self._onSuccess(arr, arr[_DYN_LENGTH ]);
|
|
6248
6672
|
}
|
|
6249
6673
|
}
|
|
6250
|
-
|
|
6251
|
-
|
|
6252
|
-
|
|
6253
|
-
var internalPayload = payload;
|
|
6254
|
-
var thePromise;
|
|
6255
|
-
var resolveFunc;
|
|
6256
|
-
var rejectFunc;
|
|
6257
|
-
var xhr = new XMLHttpRequest();
|
|
6258
|
-
var endPointUrl = _endpointUrl;
|
|
6259
|
-
try {
|
|
6260
|
-
xhr[DisabledPropertyName] = true;
|
|
6261
|
-
}
|
|
6262
|
-
catch (e) {
|
|
6263
|
-
}
|
|
6264
|
-
xhr.open("POST", endPointUrl, !sync);
|
|
6265
|
-
xhr[_DYN_SET_REQUEST_HEADER ]("Content-type", "application/json");
|
|
6266
|
-
if (isInternalApplicationInsightsEndpoint(endPointUrl)) {
|
|
6267
|
-
xhr[_DYN_SET_REQUEST_HEADER ](RequestHeaders[6 ], RequestHeaders[7 ]);
|
|
6268
|
-
}
|
|
6269
|
-
arrForEach(objKeys(_headers), function (headerName) {
|
|
6270
|
-
xhr[_DYN_SET_REQUEST_HEADER ](headerName, _headers[headerName]);
|
|
6271
|
-
});
|
|
6272
|
-
xhr.onreadystatechange = function () {
|
|
6273
|
-
var oriPayload = internalPayload[_DYN_ORI_PAYLOAD ];
|
|
6274
|
-
_self._xhrReadyStateChange(xhr, oriPayload, oriPayload[_DYN_LENGTH ]);
|
|
6275
|
-
if (xhr.readyState === 4) {
|
|
6276
|
-
resolveFunc && resolveFunc(true);
|
|
6674
|
+
if (droppedPayload[_DYN_LENGTH ] > 0) {
|
|
6675
|
+
_fallbackSend && _fallbackSend(droppedPayload, true);
|
|
6676
|
+
_throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with normal sender.");
|
|
6277
6677
|
}
|
|
6278
|
-
};
|
|
6279
|
-
xhr.onerror = function (event) {
|
|
6280
|
-
_doOnComplete(oncomplete, 400, {}, _formatErrorMessageXhr(xhr));
|
|
6281
|
-
rejectFunc && rejectFunc(event);
|
|
6282
|
-
};
|
|
6283
|
-
if (!sync && _enableSendPromise) {
|
|
6284
|
-
thePromise = createPromise(function (resolve, reject) {
|
|
6285
|
-
resolveFunc = resolve;
|
|
6286
|
-
rejectFunc = reject;
|
|
6287
|
-
});
|
|
6288
6678
|
}
|
|
6289
|
-
|
|
6290
|
-
|
|
6679
|
+
else {
|
|
6680
|
+
_fallbackSend && _fallbackSend(data, true);
|
|
6681
|
+
_throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with normal sender.");
|
|
6682
|
+
}
|
|
6291
6683
|
}
|
|
6292
6684
|
function _fetchKeepAliveSender(payload, isAsync) {
|
|
6293
|
-
var
|
|
6294
|
-
return _getOnComplete(payload, status, headers, response);
|
|
6295
|
-
};
|
|
6685
|
+
var transport = null;
|
|
6296
6686
|
if (isArray(payload)) {
|
|
6297
6687
|
var payloadSize = payload[_DYN_LENGTH ];
|
|
6298
6688
|
for (var lp = 0; lp < payload[_DYN_LENGTH ]; lp++) {
|
|
6299
6689
|
payloadSize += payload[lp][_DYN_LENGTH ];
|
|
6300
6690
|
}
|
|
6301
|
-
var
|
|
6302
|
-
|
|
6303
|
-
|
|
6304
|
-
_doFetchSender(payloadData, onComplete, true);
|
|
6691
|
+
var syncFetchPayload = _sendPostMgr.getSyncFetchPayload();
|
|
6692
|
+
if ((syncFetchPayload + payloadSize) <= FetchSyncRequestSizeLimitBytes) {
|
|
6693
|
+
transport = 2 ;
|
|
6305
6694
|
}
|
|
6306
6695
|
else if (isBeaconsSupported()) {
|
|
6307
|
-
|
|
6696
|
+
transport = 3 ;
|
|
6308
6697
|
}
|
|
6309
6698
|
else {
|
|
6310
|
-
|
|
6699
|
+
transport = 1 ;
|
|
6311
6700
|
_throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with xhrSender.");
|
|
6312
6701
|
}
|
|
6313
|
-
|
|
6314
|
-
|
|
6315
|
-
function _doFetchSender(payload, oncomplete, sync) {
|
|
6316
|
-
var _a;
|
|
6317
|
-
var endPointUrl = _endpointUrl;
|
|
6318
|
-
var internalPayload = payload;
|
|
6319
|
-
var batch = internalPayload[_DYN_DATA ];
|
|
6320
|
-
var plainTextBatch = new Blob([batch], { type: "application/json" });
|
|
6321
|
-
var thePromise;
|
|
6322
|
-
var resolveFunc;
|
|
6323
|
-
var rejectFunc;
|
|
6324
|
-
var requestHeaders = new Headers();
|
|
6325
|
-
var batchLength = batch[_DYN_LENGTH ];
|
|
6326
|
-
var ignoreResponse = false;
|
|
6327
|
-
var responseHandled = false;
|
|
6328
|
-
if (isInternalApplicationInsightsEndpoint(endPointUrl)) {
|
|
6329
|
-
requestHeaders.append(RequestHeaders[6 ], RequestHeaders[7 ]);
|
|
6330
|
-
}
|
|
6331
|
-
arrForEach(objKeys(_headers), function (headerName) {
|
|
6332
|
-
requestHeaders.append(headerName, _headers[headerName]);
|
|
6333
|
-
});
|
|
6334
|
-
var init = (_a = {
|
|
6335
|
-
method: "POST",
|
|
6336
|
-
headers: requestHeaders,
|
|
6337
|
-
body: plainTextBatch
|
|
6338
|
-
},
|
|
6339
|
-
_a[DisabledPropertyName] = true
|
|
6340
|
-
,
|
|
6341
|
-
_a);
|
|
6342
|
-
if (sync) {
|
|
6343
|
-
init.keepalive = true;
|
|
6344
|
-
ignoreResponse = true;
|
|
6345
|
-
_syncFetchPayload += batchLength;
|
|
6346
|
-
}
|
|
6347
|
-
var request = new Request(endPointUrl, init);
|
|
6348
|
-
try {
|
|
6349
|
-
request[DisabledPropertyName] = true;
|
|
6350
|
-
}
|
|
6351
|
-
catch (e) {
|
|
6352
|
-
}
|
|
6353
|
-
if (!sync && _enableSendPromise) {
|
|
6354
|
-
thePromise = createPromise(function (resolve, reject) {
|
|
6355
|
-
resolveFunc = resolve;
|
|
6356
|
-
rejectFunc = reject;
|
|
6357
|
-
});
|
|
6358
|
-
}
|
|
6359
|
-
try {
|
|
6360
|
-
doAwaitResponse(fetch(request), function (result) {
|
|
6361
|
-
if (sync) {
|
|
6362
|
-
_syncFetchPayload -= batchLength;
|
|
6363
|
-
batchLength = 0;
|
|
6364
|
-
}
|
|
6365
|
-
if (!responseHandled) {
|
|
6366
|
-
responseHandled = true;
|
|
6367
|
-
if (!result.rejected) {
|
|
6368
|
-
var response_1 = result.value;
|
|
6369
|
-
if (!response_1.ok) {
|
|
6370
|
-
_doOnComplete(oncomplete, 400, {}, response_1.statusText);
|
|
6371
|
-
resolveFunc && resolveFunc(false);
|
|
6372
|
-
}
|
|
6373
|
-
else {
|
|
6374
|
-
doAwaitResponse(response_1.text(), function (resp) {
|
|
6375
|
-
var oriPayload = internalPayload[_DYN_ORI_PAYLOAD ];
|
|
6376
|
-
_checkResponsStatus(response_1.status, oriPayload, response_1.url, oriPayload[_DYN_LENGTH ], response_1.statusText, resp.value || "");
|
|
6377
|
-
resolveFunc && resolveFunc(true);
|
|
6378
|
-
});
|
|
6379
|
-
}
|
|
6380
|
-
}
|
|
6381
|
-
else {
|
|
6382
|
-
_doOnComplete(oncomplete, 400, {}, result.reason && result.reason.message);
|
|
6383
|
-
rejectFunc && rejectFunc(result.reason);
|
|
6384
|
-
}
|
|
6385
|
-
}
|
|
6386
|
-
});
|
|
6387
|
-
}
|
|
6388
|
-
catch (e) {
|
|
6389
|
-
if (!responseHandled) {
|
|
6390
|
-
_doOnComplete(oncomplete, 400, {}, dumpObj(e));
|
|
6391
|
-
rejectFunc && rejectFunc(e);
|
|
6392
|
-
}
|
|
6393
|
-
}
|
|
6394
|
-
if (ignoreResponse && !responseHandled) {
|
|
6395
|
-
responseHandled = true;
|
|
6396
|
-
_doOnComplete(oncomplete, 200, {});
|
|
6397
|
-
resolveFunc && resolveFunc(true);
|
|
6398
|
-
}
|
|
6399
|
-
return thePromise;
|
|
6400
|
-
}
|
|
6401
|
-
function _parseResponse(response) {
|
|
6402
|
-
try {
|
|
6403
|
-
if (response && response !== "") {
|
|
6404
|
-
var result = getJSON().parse(response);
|
|
6405
|
-
if (result && result.itemsReceived && result.itemsReceived >= result[_DYN_ITEMS_ACCEPTED ] &&
|
|
6406
|
-
result.itemsReceived - result.itemsAccepted === result.errors[_DYN_LENGTH ]) {
|
|
6407
|
-
return result;
|
|
6408
|
-
}
|
|
6409
|
-
}
|
|
6410
|
-
}
|
|
6411
|
-
catch (e) {
|
|
6412
|
-
_throwInternal(_self[_DYN_DIAG_LOG ](), 1 , 43 , "Cannot parse the response. " + getExceptionName(e), {
|
|
6413
|
-
response: response
|
|
6414
|
-
});
|
|
6702
|
+
var inst = _sendPostMgr && _sendPostMgr[_DYN_GET_XHR_INST ]([transport], true);
|
|
6703
|
+
return _doSend(inst, payload, isAsync);
|
|
6415
6704
|
}
|
|
6416
6705
|
return null;
|
|
6417
6706
|
}
|
|
@@ -6470,41 +6759,6 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6470
6759
|
|| statusCode === 503
|
|
6471
6760
|
|| statusCode === 504;
|
|
6472
6761
|
}
|
|
6473
|
-
function _formatErrorMessageXhr(xhr, message) {
|
|
6474
|
-
if (xhr) {
|
|
6475
|
-
return "XMLHttpRequest,Status:" + xhr.status + ",Response:" + _getResponseText(xhr) || xhr.response || "";
|
|
6476
|
-
}
|
|
6477
|
-
return message;
|
|
6478
|
-
}
|
|
6479
|
-
function _xdrSender(payload, oncomplete, sync) {
|
|
6480
|
-
var internalPayload = payload;
|
|
6481
|
-
var _window = getWindow();
|
|
6482
|
-
var xdr = new XDomainRequest();
|
|
6483
|
-
var data = internalPayload[_DYN_DATA ];
|
|
6484
|
-
xdr.onload = function () {
|
|
6485
|
-
var oriPayload = internalPayload[_DYN_ORI_PAYLOAD ];
|
|
6486
|
-
_self._xdrOnLoad(xdr, oriPayload);
|
|
6487
|
-
};
|
|
6488
|
-
xdr.onerror = function () {
|
|
6489
|
-
_doOnComplete(oncomplete, 400, {}, _formatErrorMessageXdr(xdr));
|
|
6490
|
-
};
|
|
6491
|
-
var hostingProtocol = _window && _window.location && _window.location.protocol || "";
|
|
6492
|
-
if (_endpointUrl.lastIndexOf(hostingProtocol, 0) !== 0) {
|
|
6493
|
-
_throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " +
|
|
6494
|
-
"Cannot send XDomain request. The endpoint URL protocol doesn't match the hosting page protocol.");
|
|
6495
|
-
_self._buffer[_DYN_CLEAR ]();
|
|
6496
|
-
return;
|
|
6497
|
-
}
|
|
6498
|
-
var endpointUrl = _endpointUrl.replace(/^(https?:)/, "");
|
|
6499
|
-
xdr.open("POST", endpointUrl);
|
|
6500
|
-
xdr.send(data);
|
|
6501
|
-
}
|
|
6502
|
-
function _formatErrorMessageXdr(xdr, message) {
|
|
6503
|
-
if (xdr) {
|
|
6504
|
-
return "XDomainRequest,Response:" + _getResponseText(xdr) || "";
|
|
6505
|
-
}
|
|
6506
|
-
return message;
|
|
6507
|
-
}
|
|
6508
6762
|
function _getNotifyMgr() {
|
|
6509
6763
|
var func = "getNotifyMgr";
|
|
6510
6764
|
if (_self.core[func]) {
|
|
@@ -6565,6 +6819,7 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6565
6819
|
_disableBeaconSplit = false;
|
|
6566
6820
|
_xhrSend = null;
|
|
6567
6821
|
_fallbackSend = null;
|
|
6822
|
+
_sendPostMgr = null;
|
|
6568
6823
|
objDefine(_self, "_senderConfig", {
|
|
6569
6824
|
g: function () {
|
|
6570
6825
|
return objExtend({}, defaultAppInsightsChannelConfig);
|
|
@@ -6591,4 +6846,4 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6591
6846
|
exports.Sender = Sender;
|
|
6592
6847
|
|
|
6593
6848
|
}));
|
|
6594
|
-
//# sourceMappingURL=applicationinsights-channel-js.3.1.1-nightly3.2403-
|
|
6849
|
+
//# sourceMappingURL=applicationinsights-channel-js.3.1.1-nightly3.2403-03.gbl.js.map
|