@kubesense/kubesense-browser-core 1.6.0 → 1.8.0
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/cjs/boot/init.js +1 -1
- package/cjs/browser/pageMayExitObservable.js +11 -0
- package/cjs/browser/pageMayExitObservable.js.map +1 -1
- package/cjs/domain/configuration/endpointBuilder.js +1 -1
- package/cjs/domain/connectivity/connectivity.d.ts +4 -0
- package/cjs/domain/connectivity/connectivity.js +3 -1
- package/cjs/domain/connectivity/connectivity.js.map +1 -1
- package/cjs/domain/console/consoleObservable.js +4 -1
- package/cjs/domain/console/consoleObservable.js.map +1 -1
- package/cjs/domain/error/error.d.ts +5 -0
- package/cjs/domain/error/error.js +27 -2
- package/cjs/domain/error/error.js.map +1 -1
- package/cjs/domain/error/error.types.d.ts +2 -2
- package/cjs/domain/eventRateLimiter/createEventRateLimiter.js +1 -0
- package/cjs/domain/eventRateLimiter/createEventRateLimiter.js.map +1 -1
- package/cjs/domain/tags.js +1 -1
- package/cjs/domain/telemetry/telemetry.js +1 -1
- package/cjs/transport/sendWithRetryStrategy.js +1 -0
- package/cjs/transport/sendWithRetryStrategy.js.map +1 -1
- package/esm/boot/init.js +1 -1
- package/esm/browser/pageMayExitObservable.js +11 -0
- package/esm/browser/pageMayExitObservable.js.map +1 -1
- package/esm/domain/configuration/endpointBuilder.js +1 -1
- package/esm/domain/connectivity/connectivity.d.ts +4 -0
- package/esm/domain/connectivity/connectivity.js +3 -1
- package/esm/domain/connectivity/connectivity.js.map +1 -1
- package/esm/domain/console/consoleObservable.js +4 -1
- package/esm/domain/console/consoleObservable.js.map +1 -1
- package/esm/domain/error/error.d.ts +5 -0
- package/esm/domain/error/error.js +26 -1
- package/esm/domain/error/error.js.map +1 -1
- package/esm/domain/error/error.types.d.ts +2 -2
- package/esm/domain/eventRateLimiter/createEventRateLimiter.js +1 -0
- package/esm/domain/eventRateLimiter/createEventRateLimiter.js.map +1 -1
- package/esm/domain/tags.js +1 -1
- package/esm/domain/telemetry/telemetry.js +1 -1
- package/esm/transport/sendWithRetryStrategy.js +1 -0
- package/esm/transport/sendWithRetryStrategy.js.map +1 -1
- package/package.json +2 -2
- package/src/browser/pageMayExitObservable.ts +12 -0
- package/src/domain/connectivity/connectivity.ts +7 -1
- package/src/domain/console/consoleObservable.ts +4 -1
- package/src/domain/error/error.ts +27 -1
- package/src/domain/error/error.types.ts +2 -2
- package/src/domain/eventRateLimiter/createEventRateLimiter.ts +1 -0
- package/src/transport/sendWithRetryStrategy.ts +1 -0
package/cjs/boot/init.js
CHANGED
|
@@ -7,7 +7,7 @@ const monitor_1 = require("../tools/monitor");
|
|
|
7
7
|
const display_1 = require("../tools/display");
|
|
8
8
|
function makePublicApi(stub) {
|
|
9
9
|
const publicApi = {
|
|
10
|
-
version: "1.
|
|
10
|
+
version: "1.8.0",
|
|
11
11
|
// This API method is intentionally not monitored, since the only thing executed is the
|
|
12
12
|
// user-provided 'callback'. All SDK usages executed in the callback should be monitored, and
|
|
13
13
|
// we don't want to interfere with the user uncaught exceptions.
|
|
@@ -33,9 +33,20 @@ function createPageMayExitObservable(configuration) {
|
|
|
33
33
|
const stopBeforeUnloadListener = (0, addEventListener_1.addEventListener)(configuration, window, "beforeunload" /* DOM_EVENT.BEFORE_UNLOAD */, () => {
|
|
34
34
|
observable.notify({ reason: exports.PageExitReason.UNLOADING });
|
|
35
35
|
}).stop;
|
|
36
|
+
/**
|
|
37
|
+
* Fires when the page is actually going away — a closed tab, a navigation,
|
|
38
|
+
* or a move into the bfcache — and unlike beforeunload it is not skipped on
|
|
39
|
+
* mobile or when the browser discards the tab. It does not fire on a plain
|
|
40
|
+
* tab switch, so it says "this page is done" in a way visibilitychange
|
|
41
|
+
* cannot.
|
|
42
|
+
*/
|
|
43
|
+
const stopPageHideListener = (0, addEventListener_1.addEventListener)(configuration, window, "pagehide" /* DOM_EVENT.PAGE_HIDE */, () => {
|
|
44
|
+
observable.notify({ reason: exports.PageExitReason.PAGEHIDE });
|
|
45
|
+
}).stop;
|
|
36
46
|
return () => {
|
|
37
47
|
stopListeners();
|
|
38
48
|
stopBeforeUnloadListener();
|
|
49
|
+
stopPageHideListener();
|
|
39
50
|
};
|
|
40
51
|
});
|
|
41
52
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pageMayExitObservable.js","sourceRoot":"","sources":["../../src/browser/pageMayExitObservable.ts"],"names":[],"mappings":";;;AAkBA,
|
|
1
|
+
{"version":3,"file":"pageMayExitObservable.js","sourceRoot":"","sources":["../../src/browser/pageMayExitObservable.ts"],"names":[],"mappings":";;;AAkBA,kEA6CC;AAED,4CAEC;AAnED,oDAAgD;AAChD,wDAAuD;AAEvD,yDAAmF;AAEtE,QAAA,cAAc,GAAG;IAC5B,MAAM,EAAE,mBAAmB;IAC3B,SAAS,EAAE,eAAe;IAC1B,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,aAAa;CACb,CAAA;AAQV,SAAgB,2BAA2B,CAAC,aAA4B;IACtE,OAAO,IAAI,uBAAU,CAAmB,CAAC,UAAU,EAAE,EAAE;QACrD,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,IAAA,oCAAiB,EAC/C,aAAa,EACb,MAAM,EACN,uFAA+C,EAC/C,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,KAAK,CAAC,IAAI,yDAAgC,IAAI,QAAQ,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;gBACxF;;;mBAGG;gBACH,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,sBAAc,CAAC,MAAM,EAAE,CAAC,CAAA;YACtD,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,oCAAqB,EAAE,CAAC;gBAC3C;;;mBAGG;gBACH,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,sBAAc,CAAC,MAAM,EAAE,CAAC,CAAA;YACtD,CAAC;QACH,CAAC,EACD,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAA;QAED,MAAM,wBAAwB,GAAG,IAAA,mCAAgB,EAAC,aAAa,EAAE,MAAM,gDAA2B,GAAG,EAAE;YACrG,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,sBAAc,CAAC,SAAS,EAAE,CAAC,CAAA;QACzD,CAAC,CAAC,CAAC,IAAI,CAAA;QAEP;;;;;;WAMG;QACH,MAAM,oBAAoB,GAAG,IAAA,mCAAgB,EAAC,aAAa,EAAE,MAAM,wCAAuB,GAAG,EAAE;YAC7F,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,sBAAc,CAAC,QAAQ,EAAE,CAAC,CAAA;QACxD,CAAC,CAAC,CAAC,IAAI,CAAA;QAEP,OAAO,GAAG,EAAE;YACV,aAAa,EAAE,CAAA;YACf,wBAAwB,EAAE,CAAA;YAC1B,oBAAoB,EAAE,CAAA;QACxB,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAgB,gBAAgB,CAAC,MAAc;IAC7C,OAAO,IAAA,wBAAY,EAAC,sBAAc,CAAC,CAAC,QAAQ,CAAC,MAAwB,CAAC,CAAA;AACxE,CAAC"}
|
|
@@ -45,7 +45,7 @@ function buildEndpointParameters({ clientToken, internalAnalyticsSubdomain, sour
|
|
|
45
45
|
const parameters = [
|
|
46
46
|
`ksource=${source}`,
|
|
47
47
|
`kubesense-api-key=${clientToken}`,
|
|
48
|
-
`kubesense-evp-origin-version=${encodeURIComponent("1.
|
|
48
|
+
`kubesense-evp-origin-version=${encodeURIComponent("1.8.0")}`,
|
|
49
49
|
'kubesense-evp-origin=browser',
|
|
50
50
|
`kubesense-request-id=${(0, stringUtils_1.generateUUID)()}`,
|
|
51
51
|
].concat(extraParameters);
|
|
@@ -3,12 +3,16 @@ export type EffectiveType = 'slow-2g' | '2g' | '3g' | '4g';
|
|
|
3
3
|
export interface NetworkInformation {
|
|
4
4
|
type?: NetworkInterface;
|
|
5
5
|
effectiveType?: EffectiveType;
|
|
6
|
+
rtt?: number;
|
|
7
|
+
downlink?: number;
|
|
6
8
|
saveData: boolean;
|
|
7
9
|
}
|
|
8
10
|
export interface Connectivity {
|
|
9
11
|
status: 'connected' | 'not_connected';
|
|
10
12
|
interfaces?: NetworkInterface[];
|
|
11
13
|
effective_type?: EffectiveType;
|
|
14
|
+
rtt?: number;
|
|
15
|
+
downlink?: number;
|
|
12
16
|
[key: string]: unknown;
|
|
13
17
|
}
|
|
14
18
|
export declare function getConnectivity(): Connectivity;
|
|
@@ -3,12 +3,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.getConnectivity = getConnectivity;
|
|
4
4
|
const globalObject_1 = require("../../tools/globalObject");
|
|
5
5
|
function getConnectivity() {
|
|
6
|
-
var _a;
|
|
6
|
+
var _a, _b, _c;
|
|
7
7
|
const navigator = globalObject_1.globalObject.navigator;
|
|
8
8
|
return {
|
|
9
9
|
status: navigator.onLine ? 'connected' : 'not_connected',
|
|
10
10
|
interfaces: navigator.connection && navigator.connection.type ? [navigator.connection.type] : ['unknown'],
|
|
11
11
|
effective_type: (_a = navigator.connection) === null || _a === void 0 ? void 0 : _a.effectiveType,
|
|
12
|
+
rtt: (_b = navigator.connection) === null || _b === void 0 ? void 0 : _b.rtt,
|
|
13
|
+
downlink: (_c = navigator.connection) === null || _c === void 0 ? void 0 : _c.downlink,
|
|
12
14
|
};
|
|
13
15
|
}
|
|
14
16
|
//# sourceMappingURL=connectivity.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connectivity.js","sourceRoot":"","sources":["../../../src/domain/connectivity/connectivity.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"connectivity.js","sourceRoot":"","sources":["../../../src/domain/connectivity/connectivity.ts"],"names":[],"mappings":";;AA0BA,0CAUC;AApCD,2DAAuD;AA0BvD,SAAgB,eAAe;;IAC7B,MAAM,SAAS,GAAG,2BAAY,CAAC,SAA6B,CAAA;IAE5D,OAAO;QACL,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,eAAe;QACxD,UAAU,EAAE,SAAS,CAAC,UAAU,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACzG,cAAc,EAAE,MAAA,SAAS,CAAC,UAAU,0CAAE,aAAa;QACnD,GAAG,EAAE,MAAA,SAAS,CAAC,UAAU,0CAAE,GAAG;QAC9B,QAAQ,EAAE,MAAA,SAAS,CAAC,UAAU,0CAAE,QAAQ;KACzC,CAAA;AACH,CAAC"}
|
|
@@ -45,7 +45,10 @@ function buildConsoleLog(params, api, handlingStack) {
|
|
|
45
45
|
if (api === display_1.ConsoleApiName.error) {
|
|
46
46
|
const firstErrorParam = params.find(error_1.isError);
|
|
47
47
|
const rawError = (0, error_1.computeRawError)({
|
|
48
|
-
|
|
48
|
+
// `console.error` is commonly called without any Error instance. Falling back to the first
|
|
49
|
+
// parameter lets the error type be derived from what was actually logged (`String`,
|
|
50
|
+
// `Object`...) instead of nothing, and exposes it to `beforeSend` like the other sources do.
|
|
51
|
+
originalError: firstErrorParam !== null && firstErrorParam !== void 0 ? firstErrorParam : params[0],
|
|
49
52
|
handlingStack,
|
|
50
53
|
startClocks: (0, timeUtils_1.clocksNow)(),
|
|
51
54
|
source: error_types_1.ErrorSource.CONSOLE,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consoleObservable.js","sourceRoot":"","sources":["../../../src/domain/console/consoleObservable.ts"],"names":[],"mappings":";;AAoCA,sDASC;AAED,wDAEC;AAjDD,0CAAyD;AACzD,uDAAqE;AACrE,iDAAmE;AACnE,iDAAmD;AACnD,iEAA6D;AAC7D,2EAAuE;AAEvE,sDAAiF;AACjF,gFAA4E;AAC5E,wEAA8F;AAC9F,2DAAuD;AAwBvD,IAAI,uBAAuB,GAAgE,EAAE,CAAA;AAE7F,SAAgB,qBAAqB,CAA6B,IAAO;IACvE,MAAM,kBAAkB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QAC1C,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,CAAC;YAClC,uBAAuB,CAAC,GAAG,CAAC,GAAG,uBAAuB,CAAC,GAAG,CAAQ,CAAA,CAAC,+FAA+F;QACpK,CAAC;QACD,OAAO,uBAAuB,CAAC,GAAG,CAAuD,CAAA;IAC3F,CAAC,CAAC,CAAA;IAEF,OAAO,IAAA,6BAAgB,EAAC,GAAG,kBAAkB,CAAC,CAAA;AAChD,CAAC;AAED,SAAgB,sBAAsB;IACpC,uBAAuB,GAAG,EAAE,CAAA;AAC9B,CAAC;AAED,SAAS,uBAAuB,CAAC,GAAmB;IAClD,OAAO,IAAI,uBAAU,CAAa,CAAC,UAAU,EAAE,EAAE;QAC/C,MAAM,kBAAkB,GAAG,uBAAa,CAAC,GAAG,CAAC,CAAA;QAE7C,uBAAa,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAiB,EAAE,EAAE;YAC5C,kBAAkB,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;YACzC,MAAM,aAAa,GAAG,IAAA,mCAAmB,EAAC,eAAe,CAAC,CAAA;YAE1D,IAAA,uBAAa,EAAC,GAAG,EAAE;gBACjB,UAAU,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,aAAa,CAAC,CAAC,CAAA;YAChE,CAAC,CAAC,CAAA;QACJ,CAAC,CAAA;QAED,OAAO,GAAG,EAAE;YACV,uBAAa,CAAC,GAAG,CAAC,GAAG,kBAAkB,CAAA;QACzC,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,MAAiB,EAAE,GAAmB,EAAE,aAAqB;IACpF,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAE/E,IAAI,GAAG,KAAK,wBAAc,CAAC,KAAK,EAAE,CAAC;QACjC,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,eAAO,CAAC,CAAA;QAE5C,MAAM,QAAQ,GAAG,IAAA,uBAAe,EAAC;YAC/B,aAAa,EAAE,eAAe;
|
|
1
|
+
{"version":3,"file":"consoleObservable.js","sourceRoot":"","sources":["../../../src/domain/console/consoleObservable.ts"],"names":[],"mappings":";;AAoCA,sDASC;AAED,wDAEC;AAjDD,0CAAyD;AACzD,uDAAqE;AACrE,iDAAmE;AACnE,iDAAmD;AACnD,iEAA6D;AAC7D,2EAAuE;AAEvE,sDAAiF;AACjF,gFAA4E;AAC5E,wEAA8F;AAC9F,2DAAuD;AAwBvD,IAAI,uBAAuB,GAAgE,EAAE,CAAA;AAE7F,SAAgB,qBAAqB,CAA6B,IAAO;IACvE,MAAM,kBAAkB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QAC1C,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,CAAC;YAClC,uBAAuB,CAAC,GAAG,CAAC,GAAG,uBAAuB,CAAC,GAAG,CAAQ,CAAA,CAAC,+FAA+F;QACpK,CAAC;QACD,OAAO,uBAAuB,CAAC,GAAG,CAAuD,CAAA;IAC3F,CAAC,CAAC,CAAA;IAEF,OAAO,IAAA,6BAAgB,EAAC,GAAG,kBAAkB,CAAC,CAAA;AAChD,CAAC;AAED,SAAgB,sBAAsB;IACpC,uBAAuB,GAAG,EAAE,CAAA;AAC9B,CAAC;AAED,SAAS,uBAAuB,CAAC,GAAmB;IAClD,OAAO,IAAI,uBAAU,CAAa,CAAC,UAAU,EAAE,EAAE;QAC/C,MAAM,kBAAkB,GAAG,uBAAa,CAAC,GAAG,CAAC,CAAA;QAE7C,uBAAa,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAiB,EAAE,EAAE;YAC5C,kBAAkB,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;YACzC,MAAM,aAAa,GAAG,IAAA,mCAAmB,EAAC,eAAe,CAAC,CAAA;YAE1D,IAAA,uBAAa,EAAC,GAAG,EAAE;gBACjB,UAAU,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,aAAa,CAAC,CAAC,CAAA;YAChE,CAAC,CAAC,CAAA;QACJ,CAAC,CAAA;QAED,OAAO,GAAG,EAAE;YACV,uBAAa,CAAC,GAAG,CAAC,GAAG,kBAAkB,CAAA;QACzC,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,MAAiB,EAAE,GAAmB,EAAE,aAAqB;IACpF,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAE/E,IAAI,GAAG,KAAK,wBAAc,CAAC,KAAK,EAAE,CAAC;QACjC,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,eAAO,CAAC,CAAA;QAE5C,MAAM,QAAQ,GAAG,IAAA,uBAAe,EAAC;YAC/B,2FAA2F;YAC3F,oFAAoF;YACpF,6FAA6F;YAC7F,aAAa,EAAE,eAAe,aAAf,eAAe,cAAf,eAAe,GAAI,MAAM,CAAC,CAAC,CAAC;YAC3C,aAAa;YACb,WAAW,EAAE,IAAA,qBAAS,GAAE;YACxB,MAAM,EAAE,yBAAW,CAAC,OAAO;YAC3B,QAAQ,uCAAuB;YAC/B,cAAc,0CAAyB;YAEvC,wFAAwF;YACxF,8FAA8F;YAC9F,kBAAkB;YAClB,gBAAgB,EAAE,KAAK;SACxB,CAAC,CAAA;QAEF,4FAA4F;QAC5F,QAAQ,CAAC,OAAO,GAAG,OAAO,CAAA;QAE1B,OAAO;YACL,GAAG;YACH,OAAO;YACP,aAAa;YACb,KAAK,EAAE,QAAQ;SAChB,CAAA;IACH,CAAC;IAED,OAAO;QACL,GAAG;QACH,OAAO;QACP,KAAK,EAAE,SAAS;QAChB,aAAa;KACd,CAAA;AACH,CAAC;AAED,SAAS,uBAAuB,CAAC,KAAc;IAC7C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,IAAA,mBAAQ,EAAC,KAAK,CAAC,CAAA;IACxB,CAAC;IACD,IAAI,IAAA,eAAO,EAAC,KAAK,CAAC,EAAE,CAAC;QACnB,OAAO,IAAA,kCAAkB,EAAC,IAAA,qCAAiB,EAAC,KAAK,CAAC,CAAC,CAAA;IACrD,CAAC;IACD,OAAO,IAAA,6BAAa,EAAC,IAAA,mBAAQ,EAAC,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAA;AACrD,CAAC"}
|
|
@@ -3,6 +3,11 @@ import type { Context } from '../../tools/serialisation/context';
|
|
|
3
3
|
import type { StackTrace } from '../../tools/stackTrace/computeStackTrace';
|
|
4
4
|
import type { ErrorSource, ErrorHandling, RawError, RawErrorCause, ErrorWithCause, NonErrorPrefix } from './error.types';
|
|
5
5
|
export declare const NO_ERROR_STACK_PRESENT_MESSAGE = "No stack, consider using an instance of Error";
|
|
6
|
+
/**
|
|
7
|
+
* Used when `error.type` cannot be derived from the collected error. Sending a default rather than
|
|
8
|
+
* nothing keeps those errors groupable and searchable alongside the rest.
|
|
9
|
+
*/
|
|
10
|
+
export declare const DEFAULT_ERROR_TYPE = "Error";
|
|
6
11
|
interface RawErrorParams {
|
|
7
12
|
stackTrace?: StackTrace;
|
|
8
13
|
originalError: unknown;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.NO_ERROR_STACK_PRESENT_MESSAGE = void 0;
|
|
3
|
+
exports.DEFAULT_ERROR_TYPE = exports.NO_ERROR_STACK_PRESENT_MESSAGE = void 0;
|
|
4
4
|
exports.computeRawError = computeRawError;
|
|
5
5
|
exports.tryToGetFingerprint = tryToGetFingerprint;
|
|
6
6
|
exports.tryToGetErrorContext = tryToGetErrorContext;
|
|
@@ -12,6 +12,11 @@ const jsonStringify_1 = require("../../tools/serialisation/jsonStringify");
|
|
|
12
12
|
const computeStackTrace_1 = require("../../tools/stackTrace/computeStackTrace");
|
|
13
13
|
const handlingStack_1 = require("../../tools/stackTrace/handlingStack");
|
|
14
14
|
exports.NO_ERROR_STACK_PRESENT_MESSAGE = 'No stack, consider using an instance of Error';
|
|
15
|
+
/**
|
|
16
|
+
* Used when `error.type` cannot be derived from the collected error. Sending a default rather than
|
|
17
|
+
* nothing keeps those errors groupable and searchable alongside the rest.
|
|
18
|
+
*/
|
|
19
|
+
exports.DEFAULT_ERROR_TYPE = 'Error';
|
|
15
20
|
function computeErrorBase({ originalError, stackTrace, source, useFallbackStack = true, nonErrorPrefix, }) {
|
|
16
21
|
const isErrorInstance = isError(originalError);
|
|
17
22
|
if (!stackTrace && isErrorInstance) {
|
|
@@ -19,11 +24,31 @@ function computeErrorBase({ originalError, stackTrace, source, useFallbackStack
|
|
|
19
24
|
}
|
|
20
25
|
return {
|
|
21
26
|
source,
|
|
22
|
-
type: stackTrace
|
|
27
|
+
type: computeType(stackTrace, originalError),
|
|
23
28
|
message: computeMessage(stackTrace, isErrorInstance, nonErrorPrefix, originalError),
|
|
24
29
|
stack: stackTrace ? (0, handlingStack_1.toStackTraceString)(stackTrace) : useFallbackStack ? exports.NO_ERROR_STACK_PRESENT_MESSAGE : undefined,
|
|
25
30
|
};
|
|
26
31
|
}
|
|
32
|
+
/**
|
|
33
|
+
* `error.type` is normally the error class name (`TypeError`, `RangeError`...), read from the `name`
|
|
34
|
+
* property of the collected error. It is unavailable in two cases.
|
|
35
|
+
*
|
|
36
|
+
* No `Error` instance ever reached the SDK, because the application threw, rejected or logged
|
|
37
|
+
* something else: `console.error('message')`, `Promise.reject('reason')`, `addError('message')`. The
|
|
38
|
+
* runtime type of that value is used instead, which also surfaces that a non-`Error` was thrown in
|
|
39
|
+
* the first place.
|
|
40
|
+
*
|
|
41
|
+
* Or a stack trace was collected but tracekit could not extract a name from it, typically the opaque
|
|
42
|
+
* cross-origin `"Script error."`. A real error was raised here, so only its name is missing.
|
|
43
|
+
*/
|
|
44
|
+
function computeType(stackTrace, originalError) {
|
|
45
|
+
var _a, _b;
|
|
46
|
+
if (stackTrace) {
|
|
47
|
+
return stackTrace.name || exports.DEFAULT_ERROR_TYPE;
|
|
48
|
+
}
|
|
49
|
+
// `[object String]` -> `String`
|
|
50
|
+
return (_b = (_a = /\[object (\w+)\]/.exec(Object.prototype.toString.call(originalError))) === null || _a === void 0 ? void 0 : _a[1]) !== null && _b !== void 0 ? _b : exports.DEFAULT_ERROR_TYPE;
|
|
51
|
+
}
|
|
27
52
|
function computeRawError({ stackTrace, originalError, handlingStack, componentStack, startClocks, nonErrorPrefix, useFallbackStack = true, source, handling, }) {
|
|
28
53
|
const errorBase = computeErrorBase({ originalError, stackTrace, source, useFallbackStack, nonErrorPrefix });
|
|
29
54
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error.js","sourceRoot":"","sources":["../../../src/domain/error/error.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"error.js","sourceRoot":"","sources":["../../../src/domain/error/error.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ export interface ErrorWithCause extends Omit<Error, 'cause'> {
|
|
|
6
6
|
export interface RawErrorCause {
|
|
7
7
|
message: string;
|
|
8
8
|
source: string;
|
|
9
|
-
type
|
|
9
|
+
type: string;
|
|
10
10
|
stack?: string;
|
|
11
11
|
}
|
|
12
12
|
export interface Csp {
|
|
@@ -15,7 +15,7 @@ export interface Csp {
|
|
|
15
15
|
export interface RawError {
|
|
16
16
|
startClocks: ClocksState;
|
|
17
17
|
message: string;
|
|
18
|
-
type
|
|
18
|
+
type: string;
|
|
19
19
|
stack?: string;
|
|
20
20
|
source: ErrorSource;
|
|
21
21
|
originalError?: unknown;
|
|
@@ -27,6 +27,7 @@ function createEventRateLimiter(eventType, onLimitReached, limit = EVENT_RATE_LI
|
|
|
27
27
|
onLimitReached({
|
|
28
28
|
message: `Reached max number of ${eventType}s by minute: ${limit}`,
|
|
29
29
|
source: error_types_1.ErrorSource.AGENT,
|
|
30
|
+
type: 'RateLimitReached',
|
|
30
31
|
startClocks: (0, timeUtils_1.clocksNow)(),
|
|
31
32
|
});
|
|
32
33
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createEventRateLimiter.js","sourceRoot":"","sources":["../../../src/domain/eventRateLimiter/createEventRateLimiter.ts"],"names":[],"mappings":";;AAUA,
|
|
1
|
+
{"version":3,"file":"createEventRateLimiter.js","sourceRoot":"","sources":["../../../src/domain/eventRateLimiter/createEventRateLimiter.ts"],"names":[],"mappings":";;AAUA,wDAuCC;AAjDD,6CAA8C;AAC9C,2DAAmE;AAEnE,sDAAkD;AAIlD,mEAAmE;AACnE,MAAM,gBAAgB,GAAG,IAAI,CAAA;AAE7B,SAAgB,sBAAsB,CACpC,SAAiB,EACjB,cAA8C,EAC9C,KAAK,GAAG,gBAAgB;IAExB,IAAI,UAAU,GAAG,CAAC,CAAA;IAClB,IAAI,cAAc,GAAG,KAAK,CAAA;IAE1B,OAAO;QACL,cAAc;YACZ,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;gBACrB,IAAA,kBAAU,EAAC,GAAG,EAAE;oBACd,UAAU,GAAG,CAAC,CAAA;gBAChB,CAAC,EAAE,sBAAU,CAAC,CAAA;YAChB,CAAC;YAED,UAAU,IAAI,CAAC,CAAA;YACf,IAAI,UAAU,IAAI,KAAK,IAAI,cAAc,EAAE,CAAC;gBAC1C,cAAc,GAAG,KAAK,CAAA;gBACtB,OAAO,KAAK,CAAA;YACd,CAAC;YAED,IAAI,UAAU,KAAK,KAAK,GAAG,CAAC,EAAE,CAAC;gBAC7B,cAAc,GAAG,IAAI,CAAA;gBACrB,IAAI,CAAC;oBACH,cAAc,CAAC;wBACb,OAAO,EAAE,yBAAyB,SAAS,gBAAgB,KAAK,EAAE;wBAClE,MAAM,EAAE,yBAAW,CAAC,KAAK;wBACzB,IAAI,EAAE,kBAAkB;wBACxB,WAAW,EAAE,IAAA,qBAAS,GAAE;qBACzB,CAAC,CAAA;gBACJ,CAAC;wBAAS,CAAC;oBACT,cAAc,GAAG,KAAK,CAAA;gBACxB,CAAC;YACH,CAAC;YAED,OAAO,IAAI,CAAA;QACb,CAAC;KACF,CAAA;AACH,CAAC"}
|
package/cjs/domain/tags.js
CHANGED
|
@@ -9,7 +9,7 @@ const display_1 = require("../tools/display");
|
|
|
9
9
|
exports.TAG_SIZE_LIMIT = 200;
|
|
10
10
|
function buildTags(configuration) {
|
|
11
11
|
const { env, service, version, datacenter, sdkVersion, variant } = configuration;
|
|
12
|
-
const tags = [buildTag('sdk_version', sdkVersion !== null && sdkVersion !== void 0 ? sdkVersion : "1.
|
|
12
|
+
const tags = [buildTag('sdk_version', sdkVersion !== null && sdkVersion !== void 0 ? sdkVersion : "1.8.0")];
|
|
13
13
|
if (env) {
|
|
14
14
|
tags.push(buildTag('env', env));
|
|
15
15
|
}
|
|
@@ -109,7 +109,7 @@ function startTelemetryCollection(telemetryService, configuration, hooks, observ
|
|
|
109
109
|
type: 'telemetry',
|
|
110
110
|
date: clockNow.timeStamp,
|
|
111
111
|
service: telemetryService,
|
|
112
|
-
version: "1.
|
|
112
|
+
version: "1.8.0",
|
|
113
113
|
source: 'browser',
|
|
114
114
|
_kubesense: {
|
|
115
115
|
format_version: 2,
|
|
@@ -79,6 +79,7 @@ function retryQueuedPayloads(reason, state, sendStrategy, trackType, reportError
|
|
|
79
79
|
reportError({
|
|
80
80
|
message: `Reached max ${trackType} events size queued for upload: ${exports.MAX_QUEUE_BYTES_COUNT / byteUtils_1.ONE_MEBI_BYTE}MiB`,
|
|
81
81
|
source: error_types_1.ErrorSource.AGENT,
|
|
82
|
+
type: 'MaxQueueSizeReached',
|
|
82
83
|
startClocks: (0, timeUtils_1.clocksNow)(),
|
|
83
84
|
});
|
|
84
85
|
state.queueFullReported = true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sendWithRetryStrategy.js","sourceRoot":"","sources":["../../src/transport/sendWithRetryStrategy.ts"],"names":[],"mappings":";;;AAqCA,sDA4BC;
|
|
1
|
+
{"version":3,"file":"sendWithRetryStrategy.js","sourceRoot":"","sources":["../../src/transport/sendWithRetryStrategy.ts"],"names":[],"mappings":"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"}
|
package/esm/boot/init.js
CHANGED
|
@@ -3,7 +3,7 @@ import { setDebugMode } from '../tools/monitor';
|
|
|
3
3
|
import { display } from '../tools/display';
|
|
4
4
|
export function makePublicApi(stub) {
|
|
5
5
|
const publicApi = {
|
|
6
|
-
version: "1.
|
|
6
|
+
version: "1.8.0",
|
|
7
7
|
// This API method is intentionally not monitored, since the only thing executed is the
|
|
8
8
|
// user-provided 'callback'. All SDK usages executed in the callback should be monitored, and
|
|
9
9
|
// we don't want to interfere with the user uncaught exceptions.
|
|
@@ -28,9 +28,20 @@ export function createPageMayExitObservable(configuration) {
|
|
|
28
28
|
const stopBeforeUnloadListener = addEventListener(configuration, window, "beforeunload" /* DOM_EVENT.BEFORE_UNLOAD */, () => {
|
|
29
29
|
observable.notify({ reason: PageExitReason.UNLOADING });
|
|
30
30
|
}).stop;
|
|
31
|
+
/**
|
|
32
|
+
* Fires when the page is actually going away — a closed tab, a navigation,
|
|
33
|
+
* or a move into the bfcache — and unlike beforeunload it is not skipped on
|
|
34
|
+
* mobile or when the browser discards the tab. It does not fire on a plain
|
|
35
|
+
* tab switch, so it says "this page is done" in a way visibilitychange
|
|
36
|
+
* cannot.
|
|
37
|
+
*/
|
|
38
|
+
const stopPageHideListener = addEventListener(configuration, window, "pagehide" /* DOM_EVENT.PAGE_HIDE */, () => {
|
|
39
|
+
observable.notify({ reason: PageExitReason.PAGEHIDE });
|
|
40
|
+
}).stop;
|
|
31
41
|
return () => {
|
|
32
42
|
stopListeners();
|
|
33
43
|
stopBeforeUnloadListener();
|
|
44
|
+
stopPageHideListener();
|
|
34
45
|
};
|
|
35
46
|
});
|
|
36
47
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pageMayExitObservable.js","sourceRoot":"","sources":["../../src/browser/pageMayExitObservable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAEvD,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAa,MAAM,oBAAoB,CAAA;AAEnF,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,MAAM,EAAE,mBAAmB;IAC3B,SAAS,EAAE,eAAe;IAC1B,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,aAAa;CACb,CAAA;AAQV,MAAM,UAAU,2BAA2B,CAAC,aAA4B;IACtE,OAAO,IAAI,UAAU,CAAmB,CAAC,UAAU,EAAE,EAAE;QACrD,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,iBAAiB,CAC/C,aAAa,EACb,MAAM,EACN,uFAA+C,EAC/C,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,KAAK,CAAC,IAAI,yDAAgC,IAAI,QAAQ,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;gBACxF;;;mBAGG;gBACH,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,MAAM,EAAE,CAAC,CAAA;YACtD,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,oCAAqB,EAAE,CAAC;gBAC3C;;;mBAGG;gBACH,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,MAAM,EAAE,CAAC,CAAA;YACtD,CAAC;QACH,CAAC,EACD,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAA;QAED,MAAM,wBAAwB,GAAG,gBAAgB,CAAC,aAAa,EAAE,MAAM,gDAA2B,GAAG,EAAE;YACrG,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,SAAS,EAAE,CAAC,CAAA;QACzD,CAAC,CAAC,CAAC,IAAI,CAAA;QAEP,OAAO,GAAG,EAAE;YACV,aAAa,EAAE,CAAA;YACf,wBAAwB,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"pageMayExitObservable.js","sourceRoot":"","sources":["../../src/browser/pageMayExitObservable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAEvD,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAa,MAAM,oBAAoB,CAAA;AAEnF,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,MAAM,EAAE,mBAAmB;IAC3B,SAAS,EAAE,eAAe;IAC1B,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,aAAa;CACb,CAAA;AAQV,MAAM,UAAU,2BAA2B,CAAC,aAA4B;IACtE,OAAO,IAAI,UAAU,CAAmB,CAAC,UAAU,EAAE,EAAE;QACrD,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,iBAAiB,CAC/C,aAAa,EACb,MAAM,EACN,uFAA+C,EAC/C,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,KAAK,CAAC,IAAI,yDAAgC,IAAI,QAAQ,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;gBACxF;;;mBAGG;gBACH,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,MAAM,EAAE,CAAC,CAAA;YACtD,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,oCAAqB,EAAE,CAAC;gBAC3C;;;mBAGG;gBACH,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,MAAM,EAAE,CAAC,CAAA;YACtD,CAAC;QACH,CAAC,EACD,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAA;QAED,MAAM,wBAAwB,GAAG,gBAAgB,CAAC,aAAa,EAAE,MAAM,gDAA2B,GAAG,EAAE;YACrG,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,SAAS,EAAE,CAAC,CAAA;QACzD,CAAC,CAAC,CAAC,IAAI,CAAA;QAEP;;;;;;WAMG;QACH,MAAM,oBAAoB,GAAG,gBAAgB,CAAC,aAAa,EAAE,MAAM,wCAAuB,GAAG,EAAE;YAC7F,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAA;QACxD,CAAC,CAAC,CAAC,IAAI,CAAA;QAEP,OAAO,GAAG,EAAE;YACV,aAAa,EAAE,CAAA;YACf,wBAAwB,EAAE,CAAA;YAC1B,oBAAoB,EAAE,CAAA;QACxB,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,MAAc;IAC7C,OAAO,YAAY,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,MAAwB,CAAC,CAAA;AACxE,CAAC"}
|
|
@@ -41,7 +41,7 @@ function buildEndpointParameters({ clientToken, internalAnalyticsSubdomain, sour
|
|
|
41
41
|
const parameters = [
|
|
42
42
|
`ksource=${source}`,
|
|
43
43
|
`kubesense-api-key=${clientToken}`,
|
|
44
|
-
`kubesense-evp-origin-version=${encodeURIComponent("1.
|
|
44
|
+
`kubesense-evp-origin-version=${encodeURIComponent("1.8.0")}`,
|
|
45
45
|
'kubesense-evp-origin=browser',
|
|
46
46
|
`kubesense-request-id=${generateUUID()}`,
|
|
47
47
|
].concat(extraParameters);
|
|
@@ -3,12 +3,16 @@ export type EffectiveType = 'slow-2g' | '2g' | '3g' | '4g';
|
|
|
3
3
|
export interface NetworkInformation {
|
|
4
4
|
type?: NetworkInterface;
|
|
5
5
|
effectiveType?: EffectiveType;
|
|
6
|
+
rtt?: number;
|
|
7
|
+
downlink?: number;
|
|
6
8
|
saveData: boolean;
|
|
7
9
|
}
|
|
8
10
|
export interface Connectivity {
|
|
9
11
|
status: 'connected' | 'not_connected';
|
|
10
12
|
interfaces?: NetworkInterface[];
|
|
11
13
|
effective_type?: EffectiveType;
|
|
14
|
+
rtt?: number;
|
|
15
|
+
downlink?: number;
|
|
12
16
|
[key: string]: unknown;
|
|
13
17
|
}
|
|
14
18
|
export declare function getConnectivity(): Connectivity;
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { globalObject } from '../../tools/globalObject';
|
|
2
2
|
export function getConnectivity() {
|
|
3
|
-
var _a;
|
|
3
|
+
var _a, _b, _c;
|
|
4
4
|
const navigator = globalObject.navigator;
|
|
5
5
|
return {
|
|
6
6
|
status: navigator.onLine ? 'connected' : 'not_connected',
|
|
7
7
|
interfaces: navigator.connection && navigator.connection.type ? [navigator.connection.type] : ['unknown'],
|
|
8
8
|
effective_type: (_a = navigator.connection) === null || _a === void 0 ? void 0 : _a.effectiveType,
|
|
9
|
+
rtt: (_b = navigator.connection) === null || _b === void 0 ? void 0 : _b.rtt,
|
|
10
|
+
downlink: (_c = navigator.connection) === null || _c === void 0 ? void 0 : _c.downlink,
|
|
9
11
|
};
|
|
10
12
|
}
|
|
11
13
|
//# sourceMappingURL=connectivity.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connectivity.js","sourceRoot":"","sources":["../../../src/domain/connectivity/connectivity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"connectivity.js","sourceRoot":"","sources":["../../../src/domain/connectivity/connectivity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AA0BvD,MAAM,UAAU,eAAe;;IAC7B,MAAM,SAAS,GAAG,YAAY,CAAC,SAA6B,CAAA;IAE5D,OAAO;QACL,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,eAAe;QACxD,UAAU,EAAE,SAAS,CAAC,UAAU,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACzG,cAAc,EAAE,MAAA,SAAS,CAAC,UAAU,0CAAE,aAAa;QACnD,GAAG,EAAE,MAAA,SAAS,CAAC,UAAU,0CAAE,GAAG;QAC9B,QAAQ,EAAE,MAAA,SAAS,CAAC,UAAU,0CAAE,QAAQ;KACzC,CAAA;AACH,CAAC"}
|
|
@@ -41,7 +41,10 @@ function buildConsoleLog(params, api, handlingStack) {
|
|
|
41
41
|
if (api === ConsoleApiName.error) {
|
|
42
42
|
const firstErrorParam = params.find(isError);
|
|
43
43
|
const rawError = computeRawError({
|
|
44
|
-
|
|
44
|
+
// `console.error` is commonly called without any Error instance. Falling back to the first
|
|
45
|
+
// parameter lets the error type be derived from what was actually logged (`String`,
|
|
46
|
+
// `Object`...) instead of nothing, and exposes it to `beforeSend` like the other sources do.
|
|
47
|
+
originalError: firstErrorParam !== null && firstErrorParam !== void 0 ? firstErrorParam : params[0],
|
|
45
48
|
handlingStack,
|
|
46
49
|
startClocks: clocksNow(),
|
|
47
50
|
source: ErrorSource.CONSOLE,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consoleObservable.js","sourceRoot":"","sources":["../../../src/domain/console/consoleObservable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACzD,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AACrE,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAA;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAA;AAEvE,OAAO,EAAiB,WAAW,EAAkB,MAAM,sBAAsB,CAAA;AACjF,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAA;AAC5E,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAA;AAC9F,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAwBvD,IAAI,uBAAuB,GAAgE,EAAE,CAAA;AAE7F,MAAM,UAAU,qBAAqB,CAA6B,IAAO;IACvE,MAAM,kBAAkB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QAC1C,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,CAAC;YAClC,uBAAuB,CAAC,GAAG,CAAC,GAAG,uBAAuB,CAAC,GAAG,CAAQ,CAAA,CAAC,+FAA+F;QACpK,CAAC;QACD,OAAO,uBAAuB,CAAC,GAAG,CAAuD,CAAA;IAC3F,CAAC,CAAC,CAAA;IAEF,OAAO,gBAAgB,CAAC,GAAG,kBAAkB,CAAC,CAAA;AAChD,CAAC;AAED,MAAM,UAAU,sBAAsB;IACpC,uBAAuB,GAAG,EAAE,CAAA;AAC9B,CAAC;AAED,SAAS,uBAAuB,CAAC,GAAmB;IAClD,OAAO,IAAI,UAAU,CAAa,CAAC,UAAU,EAAE,EAAE;QAC/C,MAAM,kBAAkB,GAAG,aAAa,CAAC,GAAG,CAAC,CAAA;QAE7C,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAiB,EAAE,EAAE;YAC5C,kBAAkB,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;YACzC,MAAM,aAAa,GAAG,mBAAmB,CAAC,eAAe,CAAC,CAAA;YAE1D,aAAa,CAAC,GAAG,EAAE;gBACjB,UAAU,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,aAAa,CAAC,CAAC,CAAA;YAChE,CAAC,CAAC,CAAA;QACJ,CAAC,CAAA;QAED,OAAO,GAAG,EAAE;YACV,aAAa,CAAC,GAAG,CAAC,GAAG,kBAAkB,CAAA;QACzC,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,MAAiB,EAAE,GAAmB,EAAE,aAAqB;IACpF,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAE/E,IAAI,GAAG,KAAK,cAAc,CAAC,KAAK,EAAE,CAAC;QACjC,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAE5C,MAAM,QAAQ,GAAG,eAAe,CAAC;YAC/B,aAAa,EAAE,eAAe;
|
|
1
|
+
{"version":3,"file":"consoleObservable.js","sourceRoot":"","sources":["../../../src/domain/console/consoleObservable.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,11 @@ import type { Context } from '../../tools/serialisation/context';
|
|
|
3
3
|
import type { StackTrace } from '../../tools/stackTrace/computeStackTrace';
|
|
4
4
|
import type { ErrorSource, ErrorHandling, RawError, RawErrorCause, ErrorWithCause, NonErrorPrefix } from './error.types';
|
|
5
5
|
export declare const NO_ERROR_STACK_PRESENT_MESSAGE = "No stack, consider using an instance of Error";
|
|
6
|
+
/**
|
|
7
|
+
* Used when `error.type` cannot be derived from the collected error. Sending a default rather than
|
|
8
|
+
* nothing keeps those errors groupable and searchable alongside the rest.
|
|
9
|
+
*/
|
|
10
|
+
export declare const DEFAULT_ERROR_TYPE = "Error";
|
|
6
11
|
interface RawErrorParams {
|
|
7
12
|
stackTrace?: StackTrace;
|
|
8
13
|
originalError: unknown;
|
|
@@ -3,6 +3,11 @@ import { jsonStringify } from '../../tools/serialisation/jsonStringify';
|
|
|
3
3
|
import { computeStackTrace } from '../../tools/stackTrace/computeStackTrace';
|
|
4
4
|
import { toStackTraceString } from '../../tools/stackTrace/handlingStack';
|
|
5
5
|
export const NO_ERROR_STACK_PRESENT_MESSAGE = 'No stack, consider using an instance of Error';
|
|
6
|
+
/**
|
|
7
|
+
* Used when `error.type` cannot be derived from the collected error. Sending a default rather than
|
|
8
|
+
* nothing keeps those errors groupable and searchable alongside the rest.
|
|
9
|
+
*/
|
|
10
|
+
export const DEFAULT_ERROR_TYPE = 'Error';
|
|
6
11
|
function computeErrorBase({ originalError, stackTrace, source, useFallbackStack = true, nonErrorPrefix, }) {
|
|
7
12
|
const isErrorInstance = isError(originalError);
|
|
8
13
|
if (!stackTrace && isErrorInstance) {
|
|
@@ -10,11 +15,31 @@ function computeErrorBase({ originalError, stackTrace, source, useFallbackStack
|
|
|
10
15
|
}
|
|
11
16
|
return {
|
|
12
17
|
source,
|
|
13
|
-
type: stackTrace
|
|
18
|
+
type: computeType(stackTrace, originalError),
|
|
14
19
|
message: computeMessage(stackTrace, isErrorInstance, nonErrorPrefix, originalError),
|
|
15
20
|
stack: stackTrace ? toStackTraceString(stackTrace) : useFallbackStack ? NO_ERROR_STACK_PRESENT_MESSAGE : undefined,
|
|
16
21
|
};
|
|
17
22
|
}
|
|
23
|
+
/**
|
|
24
|
+
* `error.type` is normally the error class name (`TypeError`, `RangeError`...), read from the `name`
|
|
25
|
+
* property of the collected error. It is unavailable in two cases.
|
|
26
|
+
*
|
|
27
|
+
* No `Error` instance ever reached the SDK, because the application threw, rejected or logged
|
|
28
|
+
* something else: `console.error('message')`, `Promise.reject('reason')`, `addError('message')`. The
|
|
29
|
+
* runtime type of that value is used instead, which also surfaces that a non-`Error` was thrown in
|
|
30
|
+
* the first place.
|
|
31
|
+
*
|
|
32
|
+
* Or a stack trace was collected but tracekit could not extract a name from it, typically the opaque
|
|
33
|
+
* cross-origin `"Script error."`. A real error was raised here, so only its name is missing.
|
|
34
|
+
*/
|
|
35
|
+
function computeType(stackTrace, originalError) {
|
|
36
|
+
var _a, _b;
|
|
37
|
+
if (stackTrace) {
|
|
38
|
+
return stackTrace.name || DEFAULT_ERROR_TYPE;
|
|
39
|
+
}
|
|
40
|
+
// `[object String]` -> `String`
|
|
41
|
+
return (_b = (_a = /\[object (\w+)\]/.exec(Object.prototype.toString.call(originalError))) === null || _a === void 0 ? void 0 : _a[1]) !== null && _b !== void 0 ? _b : DEFAULT_ERROR_TYPE;
|
|
42
|
+
}
|
|
18
43
|
export function computeRawError({ stackTrace, originalError, handlingStack, componentStack, startClocks, nonErrorPrefix, useFallbackStack = true, source, handling, }) {
|
|
19
44
|
const errorBase = computeErrorBase({ originalError, stackTrace, source, useFallbackStack, nonErrorPrefix });
|
|
20
45
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error.js","sourceRoot":"","sources":["../../../src/domain/error/error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAA;AAG7D,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAA;AAEvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAA;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAA;AAGzE,MAAM,CAAC,MAAM,8BAA8B,GAAG,+CAA+C,CAAA;
|
|
1
|
+
{"version":3,"file":"error.js","sourceRoot":"","sources":["../../../src/domain/error/error.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ export interface ErrorWithCause extends Omit<Error, 'cause'> {
|
|
|
6
6
|
export interface RawErrorCause {
|
|
7
7
|
message: string;
|
|
8
8
|
source: string;
|
|
9
|
-
type
|
|
9
|
+
type: string;
|
|
10
10
|
stack?: string;
|
|
11
11
|
}
|
|
12
12
|
export interface Csp {
|
|
@@ -15,7 +15,7 @@ export interface Csp {
|
|
|
15
15
|
export interface RawError {
|
|
16
16
|
startClocks: ClocksState;
|
|
17
17
|
message: string;
|
|
18
|
-
type
|
|
18
|
+
type: string;
|
|
19
19
|
stack?: string;
|
|
20
20
|
source: ErrorSource;
|
|
21
21
|
originalError?: unknown;
|
|
@@ -24,6 +24,7 @@ export function createEventRateLimiter(eventType, onLimitReached, limit = EVENT_
|
|
|
24
24
|
onLimitReached({
|
|
25
25
|
message: `Reached max number of ${eventType}s by minute: ${limit}`,
|
|
26
26
|
source: ErrorSource.AGENT,
|
|
27
|
+
type: 'RateLimitReached',
|
|
27
28
|
startClocks: clocksNow(),
|
|
28
29
|
});
|
|
29
30
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createEventRateLimiter.js","sourceRoot":"","sources":["../../../src/domain/eventRateLimiter/createEventRateLimiter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAEnE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAIlD,mEAAmE;AACnE,MAAM,gBAAgB,GAAG,IAAI,CAAA;AAE7B,MAAM,UAAU,sBAAsB,CACpC,SAAiB,EACjB,cAA8C,EAC9C,KAAK,GAAG,gBAAgB;IAExB,IAAI,UAAU,GAAG,CAAC,CAAA;IAClB,IAAI,cAAc,GAAG,KAAK,CAAA;IAE1B,OAAO;QACL,cAAc;YACZ,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;gBACrB,UAAU,CAAC,GAAG,EAAE;oBACd,UAAU,GAAG,CAAC,CAAA;gBAChB,CAAC,EAAE,UAAU,CAAC,CAAA;YAChB,CAAC;YAED,UAAU,IAAI,CAAC,CAAA;YACf,IAAI,UAAU,IAAI,KAAK,IAAI,cAAc,EAAE,CAAC;gBAC1C,cAAc,GAAG,KAAK,CAAA;gBACtB,OAAO,KAAK,CAAA;YACd,CAAC;YAED,IAAI,UAAU,KAAK,KAAK,GAAG,CAAC,EAAE,CAAC;gBAC7B,cAAc,GAAG,IAAI,CAAA;gBACrB,IAAI,CAAC;oBACH,cAAc,CAAC;wBACb,OAAO,EAAE,yBAAyB,SAAS,gBAAgB,KAAK,EAAE;wBAClE,MAAM,EAAE,WAAW,CAAC,KAAK;wBACzB,WAAW,EAAE,SAAS,EAAE;qBACzB,CAAC,CAAA;gBACJ,CAAC;wBAAS,CAAC;oBACT,cAAc,GAAG,KAAK,CAAA;gBACxB,CAAC;YACH,CAAC;YAED,OAAO,IAAI,CAAA;QACb,CAAC;KACF,CAAA;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"createEventRateLimiter.js","sourceRoot":"","sources":["../../../src/domain/eventRateLimiter/createEventRateLimiter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAEnE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAIlD,mEAAmE;AACnE,MAAM,gBAAgB,GAAG,IAAI,CAAA;AAE7B,MAAM,UAAU,sBAAsB,CACpC,SAAiB,EACjB,cAA8C,EAC9C,KAAK,GAAG,gBAAgB;IAExB,IAAI,UAAU,GAAG,CAAC,CAAA;IAClB,IAAI,cAAc,GAAG,KAAK,CAAA;IAE1B,OAAO;QACL,cAAc;YACZ,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;gBACrB,UAAU,CAAC,GAAG,EAAE;oBACd,UAAU,GAAG,CAAC,CAAA;gBAChB,CAAC,EAAE,UAAU,CAAC,CAAA;YAChB,CAAC;YAED,UAAU,IAAI,CAAC,CAAA;YACf,IAAI,UAAU,IAAI,KAAK,IAAI,cAAc,EAAE,CAAC;gBAC1C,cAAc,GAAG,KAAK,CAAA;gBACtB,OAAO,KAAK,CAAA;YACd,CAAC;YAED,IAAI,UAAU,KAAK,KAAK,GAAG,CAAC,EAAE,CAAC;gBAC7B,cAAc,GAAG,IAAI,CAAA;gBACrB,IAAI,CAAC;oBACH,cAAc,CAAC;wBACb,OAAO,EAAE,yBAAyB,SAAS,gBAAgB,KAAK,EAAE;wBAClE,MAAM,EAAE,WAAW,CAAC,KAAK;wBACzB,IAAI,EAAE,kBAAkB;wBACxB,WAAW,EAAE,SAAS,EAAE;qBACzB,CAAC,CAAA;gBACJ,CAAC;wBAAS,CAAC;oBACT,cAAc,GAAG,KAAK,CAAA;gBACxB,CAAC;YACH,CAAC;YAED,OAAO,IAAI,CAAA;QACb,CAAC;KACF,CAAA;AACH,CAAC"}
|
package/esm/domain/tags.js
CHANGED
|
@@ -2,7 +2,7 @@ import { DOCS_ORIGIN, MORE_DETAILS, display } from '../tools/display';
|
|
|
2
2
|
export const TAG_SIZE_LIMIT = 200;
|
|
3
3
|
export function buildTags(configuration) {
|
|
4
4
|
const { env, service, version, datacenter, sdkVersion, variant } = configuration;
|
|
5
|
-
const tags = [buildTag('sdk_version', sdkVersion !== null && sdkVersion !== void 0 ? sdkVersion : "1.
|
|
5
|
+
const tags = [buildTag('sdk_version', sdkVersion !== null && sdkVersion !== void 0 ? sdkVersion : "1.8.0")];
|
|
6
6
|
if (env) {
|
|
7
7
|
tags.push(buildTag('env', env));
|
|
8
8
|
}
|
|
@@ -96,7 +96,7 @@ export function startTelemetryCollection(telemetryService, configuration, hooks,
|
|
|
96
96
|
type: 'telemetry',
|
|
97
97
|
date: clockNow.timeStamp,
|
|
98
98
|
service: telemetryService,
|
|
99
|
-
version: "1.
|
|
99
|
+
version: "1.8.0",
|
|
100
100
|
source: 'browser',
|
|
101
101
|
_kubesense: {
|
|
102
102
|
format_version: 2,
|
|
@@ -74,6 +74,7 @@ function retryQueuedPayloads(reason, state, sendStrategy, trackType, reportError
|
|
|
74
74
|
reportError({
|
|
75
75
|
message: `Reached max ${trackType} events size queued for upload: ${MAX_QUEUE_BYTES_COUNT / ONE_MEBI_BYTE}MiB`,
|
|
76
76
|
source: ErrorSource.AGENT,
|
|
77
|
+
type: 'MaxQueueSizeReached',
|
|
77
78
|
startClocks: clocksNow(),
|
|
78
79
|
});
|
|
79
80
|
state.queueFullReported = true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sendWithRetryStrategy.js","sourceRoot":"","sources":["../../src/transport/sendWithRetryStrategy.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sendWithRetryStrategy.js","sourceRoot":"","sources":["../../src/transport/sendWithRetryStrategy.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kubesense/kubesense-browser-core",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.8.0",
|
|
4
4
|
"description": "Core utilities shared across the Kubesense Browser SDK (session management, transport, configuration, and context).",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"keywords": [
|
|
@@ -35,5 +35,5 @@
|
|
|
35
35
|
"publishConfig": {
|
|
36
36
|
"access": "public"
|
|
37
37
|
},
|
|
38
|
-
"gitHead": "
|
|
38
|
+
"gitHead": "2f848090fb06a6f220ea3349c2eb8a18e0d8c390"
|
|
39
39
|
}
|
|
@@ -44,9 +44,21 @@ export function createPageMayExitObservable(configuration: Configuration): Obser
|
|
|
44
44
|
observable.notify({ reason: PageExitReason.UNLOADING })
|
|
45
45
|
}).stop
|
|
46
46
|
|
|
47
|
+
/**
|
|
48
|
+
* Fires when the page is actually going away — a closed tab, a navigation,
|
|
49
|
+
* or a move into the bfcache — and unlike beforeunload it is not skipped on
|
|
50
|
+
* mobile or when the browser discards the tab. It does not fire on a plain
|
|
51
|
+
* tab switch, so it says "this page is done" in a way visibilitychange
|
|
52
|
+
* cannot.
|
|
53
|
+
*/
|
|
54
|
+
const stopPageHideListener = addEventListener(configuration, window, DOM_EVENT.PAGE_HIDE, () => {
|
|
55
|
+
observable.notify({ reason: PageExitReason.PAGEHIDE })
|
|
56
|
+
}).stop
|
|
57
|
+
|
|
47
58
|
return () => {
|
|
48
59
|
stopListeners()
|
|
49
60
|
stopBeforeUnloadListener()
|
|
61
|
+
stopPageHideListener()
|
|
50
62
|
}
|
|
51
63
|
})
|
|
52
64
|
}
|
|
@@ -10,6 +10,8 @@ interface BrowserNavigator extends Navigator {
|
|
|
10
10
|
export interface NetworkInformation {
|
|
11
11
|
type?: NetworkInterface
|
|
12
12
|
effectiveType?: EffectiveType
|
|
13
|
+
rtt?: number
|
|
14
|
+
downlink?: number
|
|
13
15
|
saveData: boolean
|
|
14
16
|
}
|
|
15
17
|
|
|
@@ -17,15 +19,19 @@ export interface Connectivity {
|
|
|
17
19
|
status: 'connected' | 'not_connected'
|
|
18
20
|
interfaces?: NetworkInterface[]
|
|
19
21
|
effective_type?: EffectiveType
|
|
22
|
+
rtt?: number
|
|
23
|
+
downlink?: number
|
|
20
24
|
[key: string]: unknown
|
|
21
25
|
}
|
|
22
26
|
|
|
23
27
|
export function getConnectivity(): Connectivity {
|
|
24
28
|
const navigator = globalObject.navigator as BrowserNavigator
|
|
25
|
-
|
|
29
|
+
|
|
26
30
|
return {
|
|
27
31
|
status: navigator.onLine ? 'connected' : 'not_connected',
|
|
28
32
|
interfaces: navigator.connection && navigator.connection.type ? [navigator.connection.type] : ['unknown'],
|
|
29
33
|
effective_type: navigator.connection?.effectiveType,
|
|
34
|
+
rtt: navigator.connection?.rtt,
|
|
35
|
+
downlink: navigator.connection?.downlink,
|
|
30
36
|
}
|
|
31
37
|
}
|
|
@@ -75,7 +75,10 @@ function buildConsoleLog(params: unknown[], api: ConsoleApiName, handlingStack:
|
|
|
75
75
|
const firstErrorParam = params.find(isError)
|
|
76
76
|
|
|
77
77
|
const rawError = computeRawError({
|
|
78
|
-
|
|
78
|
+
// `console.error` is commonly called without any Error instance. Falling back to the first
|
|
79
|
+
// parameter lets the error type be derived from what was actually logged (`String`,
|
|
80
|
+
// `Object`...) instead of nothing, and exposes it to `beforeSend` like the other sources do.
|
|
81
|
+
originalError: firstErrorParam ?? params[0],
|
|
79
82
|
handlingStack,
|
|
80
83
|
startClocks: clocksNow(),
|
|
81
84
|
source: ErrorSource.CONSOLE,
|
|
@@ -9,6 +9,12 @@ import type { ErrorSource, ErrorHandling, RawError, RawErrorCause, ErrorWithCaus
|
|
|
9
9
|
|
|
10
10
|
export const NO_ERROR_STACK_PRESENT_MESSAGE = 'No stack, consider using an instance of Error'
|
|
11
11
|
|
|
12
|
+
/**
|
|
13
|
+
* Used when `error.type` cannot be derived from the collected error. Sending a default rather than
|
|
14
|
+
* nothing keeps those errors groupable and searchable alongside the rest.
|
|
15
|
+
*/
|
|
16
|
+
export const DEFAULT_ERROR_TYPE = 'Error'
|
|
17
|
+
|
|
12
18
|
interface RawErrorParams {
|
|
13
19
|
stackTrace?: StackTrace
|
|
14
20
|
originalError: unknown
|
|
@@ -41,12 +47,32 @@ function computeErrorBase({
|
|
|
41
47
|
|
|
42
48
|
return {
|
|
43
49
|
source,
|
|
44
|
-
type: stackTrace
|
|
50
|
+
type: computeType(stackTrace, originalError),
|
|
45
51
|
message: computeMessage(stackTrace, isErrorInstance, nonErrorPrefix, originalError),
|
|
46
52
|
stack: stackTrace ? toStackTraceString(stackTrace) : useFallbackStack ? NO_ERROR_STACK_PRESENT_MESSAGE : undefined,
|
|
47
53
|
}
|
|
48
54
|
}
|
|
49
55
|
|
|
56
|
+
/**
|
|
57
|
+
* `error.type` is normally the error class name (`TypeError`, `RangeError`...), read from the `name`
|
|
58
|
+
* property of the collected error. It is unavailable in two cases.
|
|
59
|
+
*
|
|
60
|
+
* No `Error` instance ever reached the SDK, because the application threw, rejected or logged
|
|
61
|
+
* something else: `console.error('message')`, `Promise.reject('reason')`, `addError('message')`. The
|
|
62
|
+
* runtime type of that value is used instead, which also surfaces that a non-`Error` was thrown in
|
|
63
|
+
* the first place.
|
|
64
|
+
*
|
|
65
|
+
* Or a stack trace was collected but tracekit could not extract a name from it, typically the opaque
|
|
66
|
+
* cross-origin `"Script error."`. A real error was raised here, so only its name is missing.
|
|
67
|
+
*/
|
|
68
|
+
function computeType(stackTrace: StackTrace | undefined, originalError: unknown): string {
|
|
69
|
+
if (stackTrace) {
|
|
70
|
+
return stackTrace.name || DEFAULT_ERROR_TYPE
|
|
71
|
+
}
|
|
72
|
+
// `[object String]` -> `String`
|
|
73
|
+
return /\[object (\w+)\]/.exec(Object.prototype.toString.call(originalError))?.[1] ?? DEFAULT_ERROR_TYPE
|
|
74
|
+
}
|
|
75
|
+
|
|
50
76
|
export function computeRawError({
|
|
51
77
|
stackTrace,
|
|
52
78
|
originalError,
|
|
@@ -17,7 +17,7 @@ export interface ErrorWithCause extends Omit<Error, 'cause'> {
|
|
|
17
17
|
export interface RawErrorCause {
|
|
18
18
|
message: string
|
|
19
19
|
source: string
|
|
20
|
-
type
|
|
20
|
+
type: string
|
|
21
21
|
stack?: string
|
|
22
22
|
}
|
|
23
23
|
|
|
@@ -28,7 +28,7 @@ export interface Csp {
|
|
|
28
28
|
export interface RawError {
|
|
29
29
|
startClocks: ClocksState
|
|
30
30
|
message: string
|
|
31
|
-
type
|
|
31
|
+
type: string
|
|
32
32
|
stack?: string
|
|
33
33
|
source: ErrorSource
|
|
34
34
|
originalError?: unknown
|
|
@@ -131,6 +131,7 @@ function retryQueuedPayloads<Body extends Payload>(
|
|
|
131
131
|
reportError({
|
|
132
132
|
message: `Reached max ${trackType} events size queued for upload: ${MAX_QUEUE_BYTES_COUNT / ONE_MEBI_BYTE}MiB`,
|
|
133
133
|
source: ErrorSource.AGENT,
|
|
134
|
+
type: 'MaxQueueSizeReached',
|
|
134
135
|
startClocks: clocksNow(),
|
|
135
136
|
})
|
|
136
137
|
state.queueFullReported = true
|