@microsoft/applicationinsights-common 2.8.0-nightly.2204-06 → 2.8.0-nightly.2204-07
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/applicationinsights-common.integrity.json +9 -9
- package/browser/applicationinsights-common.js +201 -55
- package/browser/applicationinsights-common.js.map +1 -1
- package/browser/applicationinsights-common.min.js +2 -2
- package/browser/applicationinsights-common.min.js.map +1 -1
- package/dist/applicationinsights-common.api.json +1198 -400
- package/dist/applicationinsights-common.api.md +101 -25
- package/dist/applicationinsights-common.d.ts +165 -28
- package/dist/applicationinsights-common.js +201 -55
- package/dist/applicationinsights-common.js.map +1 -1
- package/dist/applicationinsights-common.min.js +2 -2
- package/dist/applicationinsights-common.min.js.map +1 -1
- package/dist/applicationinsights-common.rollup.d.ts +165 -28
- package/dist-esm/ConnectionStringParser.js +1 -1
- package/dist-esm/Constants.js +1 -1
- package/dist-esm/DomHelperFuncs.js +1 -1
- package/dist-esm/Enums.js +1 -1
- package/dist-esm/HelperFuncs.js +1 -1
- package/dist-esm/Interfaces/ConnectionString.js +1 -1
- package/dist-esm/Interfaces/Context/IApplication.js +1 -1
- package/dist-esm/Interfaces/Context/IDevice.js +1 -1
- package/dist-esm/Interfaces/Context/IInternal.js +1 -1
- package/dist-esm/Interfaces/Context/ILocation.js +1 -1
- package/dist-esm/Interfaces/Context/IOperatingSystem.js +1 -1
- package/dist-esm/Interfaces/Context/ISample.js +1 -1
- package/dist-esm/Interfaces/Context/ISession.js +1 -1
- package/dist-esm/Interfaces/Context/ITelemetryTrace.js +1 -1
- package/dist-esm/Interfaces/Context/IUser.js +1 -1
- package/dist-esm/Interfaces/Context/IWeb.js +1 -1
- package/dist-esm/Interfaces/Contracts/AvailabilityData.js +1 -1
- package/dist-esm/Interfaces/Contracts/ContextTagKeys.js +1 -1
- package/dist-esm/Interfaces/Contracts/DataPointType.js +1 -1
- package/dist-esm/Interfaces/Contracts/DependencyKind.js +1 -1
- package/dist-esm/Interfaces/Contracts/DependencySourceType.js +1 -1
- package/dist-esm/Interfaces/Contracts/IBase.js +1 -1
- package/dist-esm/Interfaces/Contracts/IData.js +1 -1
- package/dist-esm/Interfaces/Contracts/IDataPoint.js +1 -1
- package/dist-esm/Interfaces/Contracts/IDomain.js +1 -1
- package/dist-esm/Interfaces/Contracts/IEnvelope.js +1 -1
- package/dist-esm/Interfaces/Contracts/IEventData.js +1 -1
- package/dist-esm/Interfaces/Contracts/IExceptionData.js +1 -1
- package/dist-esm/Interfaces/Contracts/IExceptionDetails.js +1 -1
- package/dist-esm/Interfaces/Contracts/IMessageData.js +1 -1
- package/dist-esm/Interfaces/Contracts/IMetricData.js +1 -1
- package/dist-esm/Interfaces/Contracts/IPageViewData.js +1 -1
- package/dist-esm/Interfaces/Contracts/IPageViewPerfData.js +1 -1
- package/dist-esm/Interfaces/Contracts/IRemoteDependencyData.js +1 -1
- package/dist-esm/Interfaces/Contracts/IStackFrame.js +1 -1
- package/dist-esm/Interfaces/Contracts/RequestData.js +1 -1
- package/dist-esm/Interfaces/Contracts/SeverityLevel.js +9 -10
- package/dist-esm/Interfaces/Contracts/SeverityLevel.js.map +1 -1
- package/dist-esm/Interfaces/IAppInsights.js +1 -1
- package/dist-esm/Interfaces/IChannelControlsAI.js +1 -1
- package/dist-esm/Interfaces/IConfig.js +1 -1
- package/dist-esm/Interfaces/ICorrelationConfig.js +1 -1
- package/dist-esm/Interfaces/IDependencyTelemetry.js +1 -1
- package/dist-esm/Interfaces/IEventTelemetry.js +1 -1
- package/dist-esm/Interfaces/IExceptionTelemetry.js +1 -1
- package/dist-esm/Interfaces/IMetricTelemetry.js +1 -1
- package/dist-esm/Interfaces/IPageViewPerformanceTelemetry.js +1 -1
- package/dist-esm/Interfaces/IPageViewTelemetry.js +1 -1
- package/dist-esm/Interfaces/IPartC.js +1 -1
- package/dist-esm/Interfaces/IPropertiesPlugin.js +1 -1
- package/dist-esm/Interfaces/IRequestContext.js +1 -1
- package/dist-esm/Interfaces/ITelemetryContext.js +1 -1
- package/dist-esm/Interfaces/ITraceParent.js +8 -0
- package/dist-esm/Interfaces/ITraceParent.js.map +1 -0
- package/dist-esm/Interfaces/ITraceTelemetry.js +1 -1
- package/dist-esm/Interfaces/PartAExtensions.js +1 -1
- package/dist-esm/Interfaces/Telemetry/IEnvelope.js +1 -1
- package/dist-esm/Interfaces/Telemetry/ISerializable.js +1 -1
- package/dist-esm/RequestResponseHeaders.js +13 -12
- package/dist-esm/RequestResponseHeaders.js.map +1 -1
- package/dist-esm/StorageHelperFuncs.js +5 -5
- package/dist-esm/StorageHelperFuncs.js.map +1 -1
- package/dist-esm/Telemetry/Common/Data.js +1 -1
- package/dist-esm/Telemetry/Common/DataPoint.js +1 -1
- package/dist-esm/Telemetry/Common/DataSanitizer.js +1 -1
- package/dist-esm/Telemetry/Common/Envelope.js +1 -1
- package/dist-esm/Telemetry/Event.js +1 -1
- package/dist-esm/Telemetry/Exception.js +1 -1
- package/dist-esm/Telemetry/Metric.js +1 -1
- package/dist-esm/Telemetry/PageView.js +1 -1
- package/dist-esm/Telemetry/PageViewPerformance.js +1 -1
- package/dist-esm/Telemetry/RemoteDependencyData.js +1 -1
- package/dist-esm/Telemetry/Trace.js +1 -1
- package/dist-esm/TelemetryItemCreator.js +42 -32
- package/dist-esm/TelemetryItemCreator.js.map +1 -1
- package/dist-esm/UrlHelperFuncs.js +1 -1
- package/dist-esm/Util.js +2 -2
- package/dist-esm/Util.js.map +1 -1
- package/dist-esm/W3cTraceParent.js +192 -0
- package/dist-esm/W3cTraceParent.js.map +1 -0
- package/dist-esm/applicationinsights-common.js +3 -2
- package/dist-esm/applicationinsights-common.js.map +1 -1
- package/package.json +2 -2
- package/src/Enums.ts +2 -3
- package/src/Interfaces/Contracts/SeverityLevel.ts +15 -2
- package/src/Interfaces/IConfig.ts +2 -9
- package/src/Interfaces/ITraceParent.ts +38 -0
- package/src/RequestResponseHeaders.ts +38 -2
- package/src/StorageHelperFuncs.ts +4 -4
- package/src/TelemetryItemCreator.ts +56 -44
- package/src/Util.ts +3 -3
- package/src/W3cTraceParent.ts +219 -0
- package/src/applicationinsights-common.ts +8 -3
- package/types/Enums.d.ts +2 -9
- package/types/Interfaces/Contracts/SeverityLevel.d.ts +6 -1
- package/types/Interfaces/IConfig.d.ts +3 -9
- package/types/Interfaces/ITraceParent.d.ts +32 -0
- package/types/RequestResponseHeaders.d.ts +31 -1
- package/types/TelemetryItemCreator.d.ts +15 -5
- package/types/W3cTraceParent.d.ts +59 -0
- package/types/applicationinsights-common.d.ts +5 -3
|
@@ -1,25 +1,25 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "applicationinsights-common",
|
|
3
|
-
"version": "2.8.0-nightly.2204-
|
|
3
|
+
"version": "2.8.0-nightly.2204-07",
|
|
4
4
|
"ext": {
|
|
5
5
|
"@js": {
|
|
6
6
|
"file": "applicationinsights-common.js",
|
|
7
7
|
"type": "text/javascript; charset=utf-8",
|
|
8
|
-
"integrity": "sha256-
|
|
8
|
+
"integrity": "sha256-o0yi5uFLb+c9WGvXbU1x6CZEsjQ3WCoS2Cwhjv3NOXY= sha384-0ltiB/ZTJrkgy5o+Q8DhVRraajpLbmH0F+U0odoTurjlEAwHiCYZL7avvgw4Ems3 sha512-KgZn/EbJZf65v+EoEIIcfcGBWFighYOWwzWQGWJakgcGzmapv0e9TGFys0INzimRJgXlLB0gvHg2tk+BW2Q2Uw==",
|
|
9
9
|
"hashes": {
|
|
10
|
-
"sha256": "
|
|
11
|
-
"sha384": "
|
|
12
|
-
"sha512": "
|
|
10
|
+
"sha256": "o0yi5uFLb+c9WGvXbU1x6CZEsjQ3WCoS2Cwhjv3NOXY=",
|
|
11
|
+
"sha384": "0ltiB/ZTJrkgy5o+Q8DhVRraajpLbmH0F+U0odoTurjlEAwHiCYZL7avvgw4Ems3",
|
|
12
|
+
"sha512": "KgZn/EbJZf65v+EoEIIcfcGBWFighYOWwzWQGWJakgcGzmapv0e9TGFys0INzimRJgXlLB0gvHg2tk+BW2Q2Uw=="
|
|
13
13
|
}
|
|
14
14
|
},
|
|
15
15
|
"@min.js": {
|
|
16
16
|
"file": "applicationinsights-common.min.js",
|
|
17
17
|
"type": "text/javascript; charset=utf-8",
|
|
18
|
-
"integrity": "sha256-
|
|
18
|
+
"integrity": "sha256-fsiRqcn0fQ9E+cbj5Rw6mowJ02mI5CIGZ5Rrv4GtSNY= sha384-zqIXJqGC91SmF70JCd2+lUg0cMo5L/QeJpZb0rhC09vfIuM6kjtTy6v9FgOnVo7R sha512-vJcIREGtgm+uFaLaoYO1++WP/V8Tf5rz/JJHeicoMquEi6P9fmg9xKp/Uiur5nCyTK3gCnW+65U/MTw/F90MBA==",
|
|
19
19
|
"hashes": {
|
|
20
|
-
"sha256": "
|
|
21
|
-
"sha384": "
|
|
22
|
-
"sha512": "
|
|
20
|
+
"sha256": "fsiRqcn0fQ9E+cbj5Rw6mowJ02mI5CIGZ5Rrv4GtSNY=",
|
|
21
|
+
"sha384": "zqIXJqGC91SmF70JCd2+lUg0cMo5L/QeJpZb0rhC09vfIuM6kjtTy6v9FgOnVo7R",
|
|
22
|
+
"sha512": "vJcIREGtgm+uFaLaoYO1++WP/V8Tf5rz/JJHeicoMquEi6P9fmg9xKp/Uiur5nCyTK3gCnW+65U/MTw/F90MBA=="
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
25
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Application Insights JavaScript SDK - Common, 2.8.0-nightly.2204-
|
|
2
|
+
* Application Insights JavaScript SDK - Common, 2.8.0-nightly.2204-07
|
|
3
3
|
* Copyright (c) Microsoft and contributors. All rights reserved.
|
|
4
4
|
*/
|
|
5
5
|
(function (global, factory) {
|
|
@@ -416,6 +416,9 @@
|
|
|
416
416
|
function isTruthy(value) {
|
|
417
417
|
return !!value;
|
|
418
418
|
}
|
|
419
|
+
function throwError(message) {
|
|
420
|
+
throw new Error(message);
|
|
421
|
+
}
|
|
419
422
|
function createClassFromInterface(defaults) {
|
|
420
423
|
return /** @class */ (function () {
|
|
421
424
|
function class_1() {
|
|
@@ -438,6 +441,14 @@
|
|
|
438
441
|
});
|
|
439
442
|
return deepFreeze(enumClass);
|
|
440
443
|
}
|
|
444
|
+
function createValueMap(values) {
|
|
445
|
+
var mapClass = {};
|
|
446
|
+
objForEachKey(values, function (field, value) {
|
|
447
|
+
mapClass[field] = value[1];
|
|
448
|
+
mapClass[value[0]] = value[1];
|
|
449
|
+
});
|
|
450
|
+
return deepFreeze(mapClass);
|
|
451
|
+
}
|
|
441
452
|
|
|
442
453
|
/*!
|
|
443
454
|
* Microsoft Dynamic Proto Utility, 1.1.4
|
|
@@ -1067,7 +1078,7 @@
|
|
|
1067
1078
|
}
|
|
1068
1079
|
|
|
1069
1080
|
var _objDefineProperty = ObjDefineProperty;
|
|
1070
|
-
var version = "2.8.0-nightly.2204-
|
|
1081
|
+
var version = "2.8.0-nightly.2204-07";
|
|
1071
1082
|
var instanceName = "." + newId(6);
|
|
1072
1083
|
var _dataUid = 0;
|
|
1073
1084
|
function _createAccessor(target, prop, value) {
|
|
@@ -1590,17 +1601,17 @@
|
|
|
1590
1601
|
return _legacyCookieMgr(null, logger).del(name);
|
|
1591
1602
|
}
|
|
1592
1603
|
|
|
1593
|
-
var RequestHeaders = {
|
|
1594
|
-
requestContextHeader: "Request-Context",
|
|
1595
|
-
requestContextTargetKey: "appId",
|
|
1596
|
-
requestContextAppIdFormat: "appId=cid-v1:",
|
|
1597
|
-
requestIdHeader: "Request-Id",
|
|
1598
|
-
traceParentHeader: "traceparent",
|
|
1599
|
-
traceStateHeader: "tracestate",
|
|
1600
|
-
sdkContextHeader: "Sdk-Context",
|
|
1601
|
-
sdkContextHeaderAppIdRequest: "appId",
|
|
1602
|
-
requestContextHeaderLowerCase: "request-context"
|
|
1603
|
-
};
|
|
1604
|
+
var RequestHeaders = createValueMap({
|
|
1605
|
+
requestContextHeader: [0 , "Request-Context"],
|
|
1606
|
+
requestContextTargetKey: [1 , "appId"],
|
|
1607
|
+
requestContextAppIdFormat: [2 , "appId=cid-v1:"],
|
|
1608
|
+
requestIdHeader: [3 , "Request-Id"],
|
|
1609
|
+
traceParentHeader: [4 , "traceparent"],
|
|
1610
|
+
traceStateHeader: [5 , "tracestate"],
|
|
1611
|
+
sdkContextHeader: [6 , "Sdk-Context"],
|
|
1612
|
+
sdkContextHeaderAppIdRequest: [7 , "appId"],
|
|
1613
|
+
requestContextHeaderLowerCase: [8 , "request-context"]
|
|
1614
|
+
});
|
|
1604
1615
|
|
|
1605
1616
|
function dataSanitizeKeyAndAddUniqueness(logger, key, map) {
|
|
1606
1617
|
var origLength = key.length;
|
|
@@ -1819,11 +1830,11 @@
|
|
|
1819
1830
|
if (isNullOrUndefined(getGlobal())) {
|
|
1820
1831
|
return null;
|
|
1821
1832
|
}
|
|
1822
|
-
var uid = new Date;
|
|
1833
|
+
var uid = (new Date).toString();
|
|
1823
1834
|
var storage = getGlobalInst(storageType === StorageType.LocalStorage ? "localStorage" : "sessionStorage");
|
|
1824
|
-
storage.setItem(uid
|
|
1825
|
-
var fail = storage.getItem(uid
|
|
1826
|
-
storage.removeItem(uid
|
|
1835
|
+
storage.setItem(uid, uid);
|
|
1836
|
+
var fail = storage.getItem(uid) !== uid;
|
|
1837
|
+
storage.removeItem(uid);
|
|
1827
1838
|
if (!fail) {
|
|
1828
1839
|
return storage;
|
|
1829
1840
|
}
|
|
@@ -2126,7 +2137,7 @@
|
|
|
2126
2137
|
},
|
|
2127
2138
|
getCorrelationContext: function (responseHeader) {
|
|
2128
2139
|
if (responseHeader) {
|
|
2129
|
-
var correlationId = CorrelationIdHelper.getCorrelationContextValue(responseHeader, RequestHeaders
|
|
2140
|
+
var correlationId = CorrelationIdHelper.getCorrelationContextValue(responseHeader, RequestHeaders[1 ]);
|
|
2130
2141
|
if (correlationId && correlationId !== CorrelationIdHelper.correlationIdPrefix) {
|
|
2131
2142
|
return correlationId;
|
|
2132
2143
|
}
|
|
@@ -2908,14 +2919,13 @@
|
|
|
2908
2919
|
return Data;
|
|
2909
2920
|
}());
|
|
2910
2921
|
|
|
2911
|
-
|
|
2912
|
-
|
|
2913
|
-
|
|
2914
|
-
|
|
2915
|
-
|
|
2916
|
-
|
|
2917
|
-
|
|
2918
|
-
})(exports.SeverityLevel || (exports.SeverityLevel = {}));
|
|
2922
|
+
var SeverityLevel = createEnumStyle({
|
|
2923
|
+
Verbose: 0 ,
|
|
2924
|
+
Information: 1 ,
|
|
2925
|
+
Warning: 2 ,
|
|
2926
|
+
Error: 3 ,
|
|
2927
|
+
Critical: 4
|
|
2928
|
+
});
|
|
2919
2929
|
|
|
2920
2930
|
var ConfigurationManager = /** @class */ (function () {
|
|
2921
2931
|
function ConfigurationManager() {
|
|
@@ -3014,38 +3024,39 @@
|
|
|
3014
3024
|
internalSdkSrc: _aiInternal("sdkSrc")
|
|
3015
3025
|
})));
|
|
3016
3026
|
|
|
3027
|
+
function createTelemetryItem(item, baseType, envelopeName, logger, customProperties, systemProperties) {
|
|
3028
|
+
envelopeName = dataSanitizeString(logger, envelopeName) || strNotSpecified;
|
|
3029
|
+
if (isNullOrUndefined(item) ||
|
|
3030
|
+
isNullOrUndefined(baseType) ||
|
|
3031
|
+
isNullOrUndefined(envelopeName)) {
|
|
3032
|
+
throwError("Input doesn't contain all required fields");
|
|
3033
|
+
}
|
|
3034
|
+
var iKey = "";
|
|
3035
|
+
if (item[strIkey]) {
|
|
3036
|
+
iKey = item[strIkey];
|
|
3037
|
+
delete item[strIkey];
|
|
3038
|
+
}
|
|
3039
|
+
var telemetryItem = {
|
|
3040
|
+
name: envelopeName,
|
|
3041
|
+
time: toISOString(new Date()),
|
|
3042
|
+
iKey: iKey,
|
|
3043
|
+
ext: systemProperties ? systemProperties : {},
|
|
3044
|
+
tags: [],
|
|
3045
|
+
data: {},
|
|
3046
|
+
baseType: baseType,
|
|
3047
|
+
baseData: item
|
|
3048
|
+
};
|
|
3049
|
+
if (!isNullOrUndefined(customProperties)) {
|
|
3050
|
+
objForEachKey(customProperties, function (prop, value) {
|
|
3051
|
+
telemetryItem.data[prop] = value;
|
|
3052
|
+
});
|
|
3053
|
+
}
|
|
3054
|
+
return telemetryItem;
|
|
3055
|
+
}
|
|
3017
3056
|
var TelemetryItemCreator = /** @class */ (function () {
|
|
3018
3057
|
function TelemetryItemCreator() {
|
|
3019
3058
|
}
|
|
3020
|
-
TelemetryItemCreator.create =
|
|
3021
|
-
envelopeName = dataSanitizeString(logger, envelopeName) || strNotSpecified;
|
|
3022
|
-
if (isNullOrUndefined(item) ||
|
|
3023
|
-
isNullOrUndefined(baseType) ||
|
|
3024
|
-
isNullOrUndefined(envelopeName)) {
|
|
3025
|
-
throw Error("Input doesn't contain all required fields");
|
|
3026
|
-
}
|
|
3027
|
-
var iKey = "";
|
|
3028
|
-
if (item[strIkey]) {
|
|
3029
|
-
iKey = item[strIkey];
|
|
3030
|
-
delete item[strIkey];
|
|
3031
|
-
}
|
|
3032
|
-
var telemetryItem = {
|
|
3033
|
-
name: envelopeName,
|
|
3034
|
-
time: toISOString(new Date()),
|
|
3035
|
-
iKey: iKey,
|
|
3036
|
-
ext: systemProperties ? systemProperties : {},
|
|
3037
|
-
tags: [],
|
|
3038
|
-
data: {},
|
|
3039
|
-
baseType: baseType,
|
|
3040
|
-
baseData: item
|
|
3041
|
-
};
|
|
3042
|
-
if (!isNullOrUndefined(customProperties)) {
|
|
3043
|
-
objForEachKey(customProperties, function (prop, value) {
|
|
3044
|
-
telemetryItem.data[prop] = value;
|
|
3045
|
-
});
|
|
3046
|
-
}
|
|
3047
|
-
return telemetryItem;
|
|
3048
|
-
};
|
|
3059
|
+
TelemetryItemCreator.create = createTelemetryItem;
|
|
3049
3060
|
return TelemetryItemCreator;
|
|
3050
3061
|
}());
|
|
3051
3062
|
|
|
@@ -3061,6 +3072,131 @@
|
|
|
3061
3072
|
};
|
|
3062
3073
|
var CtxTagKeys = new ContextTagKeys();
|
|
3063
3074
|
|
|
3075
|
+
var TRACE_PARENT_REGEX = /^([\da-f]{2})-([\da-f]{32})-([\da-f]{16})-([\da-f]{2})(-[^\s]*)?$/;
|
|
3076
|
+
var DEFAULT_VERSION = "00";
|
|
3077
|
+
var INVALID_VERSION = "ff";
|
|
3078
|
+
var INVALID_TRACE_ID = "00000000000000000000000000000000";
|
|
3079
|
+
var INVALID_SPAN_ID = "0000000000000000";
|
|
3080
|
+
var SAMPLED_FLAG = 0x01;
|
|
3081
|
+
function _isValid(value, len, invalidValue) {
|
|
3082
|
+
if (value && value.length === len && value !== invalidValue) {
|
|
3083
|
+
return !!value.match(/^[\da-f]*$/);
|
|
3084
|
+
}
|
|
3085
|
+
return false;
|
|
3086
|
+
}
|
|
3087
|
+
function _formatValue(value, len, defValue) {
|
|
3088
|
+
if (_isValid(value, len)) {
|
|
3089
|
+
return value;
|
|
3090
|
+
}
|
|
3091
|
+
return defValue;
|
|
3092
|
+
}
|
|
3093
|
+
function _formatFlags(value) {
|
|
3094
|
+
if (isNaN(value) || value < 0 || value > 255) {
|
|
3095
|
+
value = 0x01;
|
|
3096
|
+
}
|
|
3097
|
+
var result = value.toString(16);
|
|
3098
|
+
while (result.length < 2) {
|
|
3099
|
+
result = "0" + result;
|
|
3100
|
+
}
|
|
3101
|
+
return result;
|
|
3102
|
+
}
|
|
3103
|
+
function _getTraceParentValue(values) {
|
|
3104
|
+
if (values) {
|
|
3105
|
+
for (var i = 0; i < values.length; i++) {
|
|
3106
|
+
var value = values[i];
|
|
3107
|
+
if (value.name) {
|
|
3108
|
+
if (value.name === "traceparent") {
|
|
3109
|
+
return value;
|
|
3110
|
+
}
|
|
3111
|
+
}
|
|
3112
|
+
}
|
|
3113
|
+
}
|
|
3114
|
+
return {};
|
|
3115
|
+
}
|
|
3116
|
+
function createTraceParent(traceId, spanId, flags, version) {
|
|
3117
|
+
return {
|
|
3118
|
+
version: _isValid(version, 2, INVALID_VERSION) ? version : DEFAULT_VERSION,
|
|
3119
|
+
traceId: isValidTraceId(traceId) ? traceId : generateW3CId(),
|
|
3120
|
+
spanId: isValidSpanId(spanId) ? spanId : generateW3CId().substr(0, 16),
|
|
3121
|
+
traceFlags: flags >= 0 && flags <= 0xFF ? flags : 1
|
|
3122
|
+
};
|
|
3123
|
+
}
|
|
3124
|
+
function parseTraceParent(value) {
|
|
3125
|
+
if (!value) {
|
|
3126
|
+
return null;
|
|
3127
|
+
}
|
|
3128
|
+
if (isArray(value)) {
|
|
3129
|
+
value = value[0] || "";
|
|
3130
|
+
}
|
|
3131
|
+
if (!value || !isString(value) || value.length > 8192) {
|
|
3132
|
+
return null;
|
|
3133
|
+
}
|
|
3134
|
+
var match = TRACE_PARENT_REGEX.exec(strTrim(value));
|
|
3135
|
+
if (!match ||
|
|
3136
|
+
match[1] === INVALID_VERSION ||
|
|
3137
|
+
match[2] === INVALID_TRACE_ID ||
|
|
3138
|
+
match[3] === INVALID_SPAN_ID) {
|
|
3139
|
+
return null;
|
|
3140
|
+
}
|
|
3141
|
+
return {
|
|
3142
|
+
version: match[1],
|
|
3143
|
+
traceId: match[2],
|
|
3144
|
+
spanId: match[3],
|
|
3145
|
+
traceFlags: parseInt(match[4], 16)
|
|
3146
|
+
};
|
|
3147
|
+
}
|
|
3148
|
+
function isValidTraceId(value) {
|
|
3149
|
+
return _isValid(value, 32, INVALID_TRACE_ID);
|
|
3150
|
+
}
|
|
3151
|
+
function isValidSpanId(value) {
|
|
3152
|
+
return _isValid(value, 16, INVALID_SPAN_ID);
|
|
3153
|
+
}
|
|
3154
|
+
function isValidTraceParent(value) {
|
|
3155
|
+
if (!value ||
|
|
3156
|
+
!_isValid(value.version, 2, INVALID_VERSION) ||
|
|
3157
|
+
!_isValid(value.traceId, 32, INVALID_TRACE_ID) ||
|
|
3158
|
+
!_isValid(value.spanId, 16, INVALID_SPAN_ID) ||
|
|
3159
|
+
!_isValid(_formatFlags(value.traceFlags), 2)) {
|
|
3160
|
+
return false;
|
|
3161
|
+
}
|
|
3162
|
+
return true;
|
|
3163
|
+
}
|
|
3164
|
+
function isSampledFlag(value) {
|
|
3165
|
+
if (isValidTraceParent(value)) {
|
|
3166
|
+
return (value.traceFlags & SAMPLED_FLAG) === SAMPLED_FLAG;
|
|
3167
|
+
}
|
|
3168
|
+
return false;
|
|
3169
|
+
}
|
|
3170
|
+
function formatTraceParent(value) {
|
|
3171
|
+
if (value) {
|
|
3172
|
+
var flags = _formatFlags(value.traceFlags);
|
|
3173
|
+
if (!_isValid(flags, 2)) {
|
|
3174
|
+
flags = "01";
|
|
3175
|
+
}
|
|
3176
|
+
var version = value.version || DEFAULT_VERSION;
|
|
3177
|
+
if (version !== "00" && version !== "ff") {
|
|
3178
|
+
version = DEFAULT_VERSION;
|
|
3179
|
+
}
|
|
3180
|
+
return "".concat(version, "-").concat(_formatValue(value.traceId, 32, INVALID_TRACE_ID), "-").concat(_formatValue(value.spanId, 16, INVALID_SPAN_ID), "-").concat(flags);
|
|
3181
|
+
}
|
|
3182
|
+
return "";
|
|
3183
|
+
}
|
|
3184
|
+
function findW3cTraceParent() {
|
|
3185
|
+
var traceParent;
|
|
3186
|
+
var doc = getDocument();
|
|
3187
|
+
if (doc) {
|
|
3188
|
+
traceParent = parseTraceParent(_getTraceParentValue(doc.querySelectorAll("meta")).content);
|
|
3189
|
+
}
|
|
3190
|
+
if (!traceParent) {
|
|
3191
|
+
var perf = getPerformance();
|
|
3192
|
+
if (perf) {
|
|
3193
|
+
var navPerf = perf.getEntriesByType("navigation") || [];
|
|
3194
|
+
traceParent = parseTraceParent(_getTraceParentValue((navPerf.length > 0 ? navPerf[0] : {}).serverTiming).description);
|
|
3195
|
+
}
|
|
3196
|
+
}
|
|
3197
|
+
return traceParent;
|
|
3198
|
+
}
|
|
3199
|
+
|
|
3064
3200
|
var PropertiesPluginIdentifier = "AppInsightsPropertiesPlugin";
|
|
3065
3201
|
var BreezeChannelIdentifier = "AppInsightsChannelPlugin";
|
|
3066
3202
|
var AnalyticsPluginIdentifier = "ApplicationInsightsAnalytics";
|
|
@@ -3091,11 +3227,14 @@
|
|
|
3091
3227
|
exports.RemoteDependencyData = RemoteDependencyData;
|
|
3092
3228
|
exports.RequestHeaders = RequestHeaders;
|
|
3093
3229
|
exports.SampleRate = SampleRate;
|
|
3230
|
+
exports.SeverityLevel = SeverityLevel;
|
|
3094
3231
|
exports.TelemetryItemCreator = TelemetryItemCreator;
|
|
3095
3232
|
exports.Trace = Trace;
|
|
3096
3233
|
exports.UrlHelper = UrlHelper;
|
|
3097
3234
|
exports.Util = Util;
|
|
3098
3235
|
exports.createDomEvent = createDomEvent;
|
|
3236
|
+
exports.createTelemetryItem = createTelemetryItem;
|
|
3237
|
+
exports.createTraceParent = createTraceParent;
|
|
3099
3238
|
exports.dataSanitizeException = dataSanitizeException;
|
|
3100
3239
|
exports.dataSanitizeId = dataSanitizeId;
|
|
3101
3240
|
exports.dataSanitizeInput = dataSanitizeInput;
|
|
@@ -3109,12 +3248,19 @@
|
|
|
3109
3248
|
exports.dateTimeUtilsDuration = dateTimeUtilsDuration;
|
|
3110
3249
|
exports.dateTimeUtilsNow = dateTimeUtilsNow;
|
|
3111
3250
|
exports.dsPadNumber = dsPadNumber;
|
|
3251
|
+
exports.findW3cTraceParent = findW3cTraceParent;
|
|
3252
|
+
exports.formatTraceParent = formatTraceParent;
|
|
3112
3253
|
exports.getExtensionByName = getExtensionByName;
|
|
3113
3254
|
exports.isBeaconApiSupported = isBeaconsSupported;
|
|
3114
3255
|
exports.isCrossOriginError = isCrossOriginError;
|
|
3115
3256
|
exports.isInternalApplicationInsightsEndpoint = isInternalApplicationInsightsEndpoint;
|
|
3257
|
+
exports.isSampledFlag = isSampledFlag;
|
|
3258
|
+
exports.isValidSpanId = isValidSpanId;
|
|
3259
|
+
exports.isValidTraceId = isValidTraceId;
|
|
3260
|
+
exports.isValidTraceParent = isValidTraceParent;
|
|
3116
3261
|
exports.msToTimeSpan = msToTimeSpan;
|
|
3117
3262
|
exports.parseConnectionString = parseConnectionString;
|
|
3263
|
+
exports.parseTraceParent = parseTraceParent;
|
|
3118
3264
|
exports.strNotSpecified = strNotSpecified;
|
|
3119
3265
|
exports.stringToBoolOrDefault = stringToBoolOrDefault;
|
|
3120
3266
|
exports.urlGetAbsoluteUrl = urlGetAbsoluteUrl;
|