@grafana/faro-core 1.0.2 → 1.0.4
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/dist/bundle/faro-core.iife.js +1 -1
- package/dist/cjs/metas/types.js.map +1 -1
- package/dist/cjs/testUtils/mockTransport.js +4 -1
- package/dist/cjs/testUtils/mockTransport.js.map +1 -1
- package/dist/cjs/transports/base.js.map +1 -1
- package/dist/cjs/transports/types.js.map +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/version.js.map +1 -1
- package/dist/esm/metas/types.js.map +1 -1
- package/dist/esm/testUtils/mockTransport.js +3 -1
- package/dist/esm/testUtils/mockTransport.js.map +1 -1
- package/dist/esm/transports/base.js.map +1 -1
- package/dist/esm/transports/types.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/version.js.map +1 -1
- package/dist/spec/core/src/api/events/index.js +6 -0
- package/dist/spec/core/src/api/events/index.js.map +1 -0
- package/dist/spec/core/src/api/events/initialize.js +44 -0
- package/dist/spec/core/src/api/events/initialize.js.map +1 -0
- package/dist/spec/core/src/api/events/initialize.test.js +86 -0
- package/dist/spec/core/src/api/events/initialize.test.js.map +1 -0
- package/dist/spec/core/src/api/events/types.js +3 -0
- package/dist/spec/core/src/api/events/types.js.map +1 -0
- package/dist/spec/core/src/api/exceptions/const.js +5 -0
- package/dist/spec/core/src/api/exceptions/const.js.map +1 -0
- package/dist/spec/core/src/api/exceptions/index.js +8 -0
- package/dist/spec/core/src/api/exceptions/index.js.map +1 -0
- package/dist/spec/core/src/api/exceptions/initialize.js +58 -0
- package/dist/spec/core/src/api/exceptions/initialize.js.map +1 -0
- package/dist/spec/core/src/api/exceptions/initialize.test.js +133 -0
- package/dist/spec/core/src/api/exceptions/initialize.test.js.map +1 -0
- package/dist/spec/core/src/api/exceptions/types.js +3 -0
- package/dist/spec/core/src/api/exceptions/types.js.map +1 -0
- package/dist/spec/core/src/api/index.js +8 -0
- package/dist/spec/core/src/api/index.js.map +1 -0
- package/dist/spec/core/src/api/initialize.js +27 -0
- package/dist/spec/core/src/api/initialize.js.map +1 -0
- package/dist/spec/core/src/api/logs/index.js +6 -0
- package/dist/spec/core/src/api/logs/index.js.map +1 -0
- package/dist/spec/core/src/api/logs/initialize.js +54 -0
- package/dist/spec/core/src/api/logs/initialize.js.map +1 -0
- package/dist/spec/core/src/api/logs/initialize.test.js +82 -0
- package/dist/spec/core/src/api/logs/initialize.test.js.map +1 -0
- package/dist/spec/core/src/api/logs/types.js +3 -0
- package/dist/spec/core/src/api/logs/types.js.map +1 -0
- package/dist/spec/core/src/api/measurements/index.js +6 -0
- package/dist/spec/core/src/api/measurements/index.js.map +1 -0
- package/dist/spec/core/src/api/measurements/initialize.js +50 -0
- package/dist/spec/core/src/api/measurements/initialize.js.map +1 -0
- package/dist/spec/core/src/api/measurements/initialize.test.js +117 -0
- package/dist/spec/core/src/api/measurements/initialize.test.js.map +1 -0
- package/dist/spec/core/src/api/measurements/types.js +3 -0
- package/dist/spec/core/src/api/measurements/types.js.map +1 -0
- package/dist/spec/core/src/api/meta/index.js +6 -0
- package/dist/spec/core/src/api/meta/index.js.map +1 -0
- package/dist/spec/core/src/api/meta/initialize.js +49 -0
- package/dist/spec/core/src/api/meta/initialize.js.map +1 -0
- package/dist/spec/core/src/api/meta/types.js +3 -0
- package/dist/spec/core/src/api/meta/types.js.map +1 -0
- package/dist/spec/core/src/api/traces/index.js +6 -0
- package/dist/spec/core/src/api/traces/index.js.map +1 -0
- package/dist/spec/core/src/api/traces/initialize.js +49 -0
- package/dist/spec/core/src/api/traces/initialize.js.map +1 -0
- package/dist/spec/core/src/api/traces/types.js +3 -0
- package/dist/spec/core/src/api/traces/types.js.map +1 -0
- package/dist/spec/core/src/api/types.js +3 -0
- package/dist/spec/core/src/api/types.js.map +1 -0
- package/dist/spec/core/src/config/const.js +5 -0
- package/dist/spec/core/src/config/const.js.map +1 -0
- package/dist/spec/core/src/config/index.js +6 -0
- package/dist/spec/core/src/config/index.js.map +1 -0
- package/dist/spec/core/src/config/types.js +3 -0
- package/dist/spec/core/src/config/types.js.map +1 -0
- package/dist/spec/core/src/extensions/baseExtension.js +57 -0
- package/dist/spec/core/src/extensions/baseExtension.js.map +1 -0
- package/dist/spec/core/src/extensions/index.js +6 -0
- package/dist/spec/core/src/extensions/index.js.map +1 -0
- package/dist/spec/core/src/extensions/types.js +3 -0
- package/dist/spec/core/src/extensions/types.js.map +1 -0
- package/dist/spec/core/src/faro.test.js +40 -0
- package/dist/spec/core/src/faro.test.js.map +1 -0
- package/dist/spec/core/src/globalObject/globalObject.js +6 -0
- package/dist/spec/core/src/globalObject/globalObject.js.map +1 -0
- package/dist/spec/core/src/globalObject/index.js +6 -0
- package/dist/spec/core/src/globalObject/index.js.map +1 -0
- package/dist/spec/core/src/index.js +75 -0
- package/dist/spec/core/src/index.js.map +1 -0
- package/dist/spec/core/src/initialize.js +32 -0
- package/dist/spec/core/src/initialize.js.map +1 -0
- package/dist/spec/core/src/instrumentations/base.js +31 -0
- package/dist/spec/core/src/instrumentations/base.js.map +1 -0
- package/dist/spec/core/src/instrumentations/index.js +10 -0
- package/dist/spec/core/src/instrumentations/index.js.map +1 -0
- package/dist/spec/core/src/instrumentations/initialize.js +71 -0
- package/dist/spec/core/src/instrumentations/initialize.js.map +1 -0
- package/dist/spec/core/src/instrumentations/registerInitial.js +9 -0
- package/dist/spec/core/src/instrumentations/registerInitial.js.map +1 -0
- package/dist/spec/core/src/instrumentations/types.js +3 -0
- package/dist/spec/core/src/instrumentations/types.js.map +1 -0
- package/dist/spec/core/src/internalLogger/const.js +22 -0
- package/dist/spec/core/src/internalLogger/const.js.map +1 -0
- package/dist/spec/core/src/internalLogger/createInternalLogger.js +65 -0
- package/dist/spec/core/src/internalLogger/createInternalLogger.js.map +1 -0
- package/dist/spec/core/src/internalLogger/index.js +13 -0
- package/dist/spec/core/src/internalLogger/index.js.map +1 -0
- package/dist/spec/core/src/internalLogger/initialize.js +12 -0
- package/dist/spec/core/src/internalLogger/initialize.js.map +1 -0
- package/dist/spec/core/src/internalLogger/types.js +3 -0
- package/dist/spec/core/src/internalLogger/types.js.map +1 -0
- package/dist/spec/core/src/metas/index.js +8 -0
- package/dist/spec/core/src/metas/index.js.map +1 -0
- package/dist/spec/core/src/metas/initialize.js +52 -0
- package/dist/spec/core/src/metas/initialize.js.map +1 -0
- package/dist/spec/core/src/metas/initialize.test.js +20 -0
- package/dist/spec/core/src/metas/initialize.test.js.map +1 -0
- package/dist/spec/core/src/metas/registerInitial.js +42 -0
- package/dist/spec/core/src/metas/registerInitial.js.map +1 -0
- package/dist/spec/core/src/metas/types.js +3 -0
- package/dist/spec/core/src/metas/types.js.map +1 -0
- package/dist/spec/core/src/sdk/const.js +5 -0
- package/dist/spec/core/src/sdk/const.js.map +1 -0
- package/dist/spec/core/src/sdk/faroGlobalObject.js +23 -0
- package/dist/spec/core/src/sdk/faroGlobalObject.js.map +1 -0
- package/dist/spec/core/src/sdk/index.js +13 -0
- package/dist/spec/core/src/sdk/index.js.map +1 -0
- package/dist/spec/core/src/sdk/internalFaroGlobalObject.js +29 -0
- package/dist/spec/core/src/sdk/internalFaroGlobalObject.js.map +1 -0
- package/dist/spec/core/src/sdk/registerFaro.js +25 -0
- package/dist/spec/core/src/sdk/registerFaro.js.map +1 -0
- package/dist/spec/core/src/sdk/types.js +3 -0
- package/dist/spec/core/src/sdk/types.js.map +1 -0
- package/dist/spec/core/src/semantic.js +12 -0
- package/dist/spec/core/src/semantic.js.map +1 -0
- package/dist/spec/core/src/testUtils/index.js +14 -0
- package/dist/spec/core/src/testUtils/index.js.map +1 -0
- package/dist/spec/core/src/testUtils/mockConfig.js +25 -0
- package/dist/spec/core/src/testUtils/mockConfig.js.map +1 -0
- package/dist/spec/core/src/testUtils/mockInternalLogger.js +12 -0
- package/dist/spec/core/src/testUtils/mockInternalLogger.js.map +1 -0
- package/dist/spec/core/src/testUtils/mockStacktraceParser.js +21 -0
- package/dist/spec/core/src/testUtils/mockStacktraceParser.js.map +1 -0
- package/dist/spec/core/src/testUtils/mockTransport.js +44 -0
- package/dist/spec/core/src/testUtils/mockTransport.js.map +1 -0
- package/dist/spec/core/src/testUtils/testPromise.js +15 -0
- package/dist/spec/core/src/testUtils/testPromise.js.map +1 -0
- package/dist/spec/core/src/transports/base.js +31 -0
- package/dist/spec/core/src/transports/base.js.map +1 -0
- package/dist/spec/core/src/transports/const.js +20 -0
- package/dist/spec/core/src/transports/const.js.map +1 -0
- package/dist/spec/core/src/transports/index.js +15 -0
- package/dist/spec/core/src/transports/index.js.map +1 -0
- package/dist/spec/core/src/transports/initialize.js +151 -0
- package/dist/spec/core/src/transports/initialize.js.map +1 -0
- package/dist/spec/core/src/transports/registerInitial.js +11 -0
- package/dist/spec/core/src/transports/registerInitial.js.map +1 -0
- package/dist/spec/core/src/transports/transports.test.js +139 -0
- package/dist/spec/core/src/transports/transports.test.js.map +1 -0
- package/dist/spec/core/src/transports/types.js +3 -0
- package/dist/spec/core/src/transports/types.js.map +1 -0
- package/dist/spec/core/src/transports/utils.js +13 -0
- package/dist/spec/core/src/transports/utils.js.map +1 -0
- package/dist/spec/core/src/unpatchedConsole/const.js +16 -0
- package/dist/spec/core/src/unpatchedConsole/const.js.map +1 -0
- package/dist/spec/core/src/unpatchedConsole/index.js +9 -0
- package/dist/spec/core/src/unpatchedConsole/index.js.map +1 -0
- package/dist/spec/core/src/unpatchedConsole/initialize.js +12 -0
- package/dist/spec/core/src/unpatchedConsole/initialize.js.map +1 -0
- package/dist/spec/core/src/unpatchedConsole/types.js +3 -0
- package/dist/spec/core/src/unpatchedConsole/types.js.map +1 -0
- package/dist/spec/core/src/utils/baseObject.js +3 -0
- package/dist/spec/core/src/utils/baseObject.js.map +1 -0
- package/dist/spec/core/src/utils/deepEqual.js +62 -0
- package/dist/spec/core/src/utils/deepEqual.js.map +1 -0
- package/dist/spec/core/src/utils/deepEqual.test.js +103 -0
- package/dist/spec/core/src/utils/deepEqual.test.js.map +1 -0
- package/dist/spec/core/src/utils/getCurrentTimestamp.js +8 -0
- package/dist/spec/core/src/utils/getCurrentTimestamp.js.map +1 -0
- package/dist/spec/core/src/utils/index.js +47 -0
- package/dist/spec/core/src/utils/index.js.map +1 -0
- package/dist/spec/core/src/utils/is.js +53 -0
- package/dist/spec/core/src/utils/is.js.map +1 -0
- package/dist/spec/core/src/utils/logLevels.js +22 -0
- package/dist/spec/core/src/utils/logLevels.js.map +1 -0
- package/dist/spec/core/src/utils/noop.js +6 -0
- package/dist/spec/core/src/utils/noop.js.map +1 -0
- package/dist/spec/core/src/utils/promiseBuffer.js +43 -0
- package/dist/spec/core/src/utils/promiseBuffer.js.map +1 -0
- package/dist/spec/core/src/utils/promiseBuffer.test.js +146 -0
- package/dist/spec/core/src/utils/promiseBuffer.test.js.map +1 -0
- package/dist/spec/core/src/utils/shortId.js +12 -0
- package/dist/spec/core/src/utils/shortId.js.map +1 -0
- package/dist/spec/core/src/version.js +6 -0
- package/dist/spec/core/src/version.js.map +1 -0
- package/dist/types/core/src/api/events/index.d.ts +2 -0
- package/dist/types/core/src/api/events/initialize.d.ts +8 -0
- package/dist/types/core/src/api/events/initialize.test.d.ts +1 -0
- package/dist/types/core/src/api/events/types.d.ts +15 -0
- package/dist/types/core/src/api/exceptions/const.d.ts +1 -0
- package/dist/types/core/src/api/exceptions/index.d.ts +3 -0
- package/dist/types/core/src/api/exceptions/initialize.d.ts +8 -0
- package/dist/types/core/src/api/exceptions/initialize.test.d.ts +1 -0
- package/dist/types/core/src/api/exceptions/types.d.ts +32 -0
- package/dist/types/core/src/api/index.d.ts +9 -0
- package/dist/types/core/src/api/initialize.d.ts +7 -0
- package/dist/types/core/src/api/logs/index.d.ts +2 -0
- package/dist/types/core/src/api/logs/initialize.d.ts +8 -0
- package/dist/types/core/src/api/logs/initialize.test.d.ts +1 -0
- package/dist/types/core/src/api/logs/types.d.ts +18 -0
- package/dist/types/core/src/api/measurements/index.d.ts +2 -0
- package/dist/types/core/src/api/measurements/initialize.d.ts +8 -0
- package/dist/types/core/src/api/measurements/initialize.test.d.ts +1 -0
- package/dist/types/core/src/api/measurements/types.d.ts +17 -0
- package/dist/types/core/src/api/meta/index.d.ts +2 -0
- package/dist/types/core/src/api/meta/initialize.d.ts +7 -0
- package/dist/types/core/src/api/meta/types.d.ts +10 -0
- package/dist/types/core/src/api/traces/index.d.ts +2 -0
- package/dist/types/core/src/api/traces/initialize.d.ts +7 -0
- package/dist/types/core/src/api/traces/types.d.ts +20 -0
- package/dist/types/core/src/api/types.d.ts +8 -0
- package/dist/types/core/src/config/const.d.ts +1 -0
- package/dist/types/core/src/config/index.d.ts +2 -0
- package/dist/types/core/src/config/types.d.ts +27 -0
- package/dist/types/core/src/extensions/baseExtension.d.ts +15 -0
- package/dist/types/core/src/extensions/index.d.ts +2 -0
- package/dist/types/core/src/extensions/types.d.ts +16 -0
- package/dist/types/core/src/faro.test.d.ts +1 -0
- package/dist/types/core/src/globalObject/globalObject.d.ts +7 -0
- package/dist/types/core/src/globalObject/index.d.ts +2 -0
- package/dist/types/core/src/index.d.ts +24 -0
- package/dist/types/core/src/initialize.d.ts +3 -0
- package/dist/types/core/src/instrumentations/base.d.ts +9 -0
- package/dist/types/core/src/instrumentations/index.d.ts +4 -0
- package/dist/types/core/src/instrumentations/initialize.d.ts +8 -0
- package/dist/types/core/src/instrumentations/registerInitial.d.ts +2 -0
- package/dist/types/core/src/instrumentations/types.d.ts +14 -0
- package/dist/types/core/src/internalLogger/const.d.ts +11 -0
- package/dist/types/core/src/internalLogger/createInternalLogger.d.ts +4 -0
- package/dist/types/core/src/internalLogger/index.d.ts +4 -0
- package/dist/types/core/src/internalLogger/initialize.d.ts +5 -0
- package/dist/types/core/src/internalLogger/types.d.ts +7 -0
- package/dist/types/core/src/metas/index.d.ts +3 -0
- package/dist/types/core/src/metas/initialize.d.ts +5 -0
- package/dist/types/core/src/metas/initialize.test.d.ts +1 -0
- package/dist/types/core/src/metas/registerInitial.d.ts +2 -0
- package/dist/types/core/src/metas/types.d.ts +67 -0
- package/dist/types/core/src/sdk/const.d.ts +1 -0
- package/dist/types/core/src/sdk/faroGlobalObject.d.ts +2 -0
- package/dist/types/core/src/sdk/index.d.ts +4 -0
- package/dist/types/core/src/sdk/internalFaroGlobalObject.d.ts +4 -0
- package/dist/types/core/src/sdk/registerFaro.d.ts +10 -0
- package/dist/types/core/src/sdk/types.d.ts +18 -0
- package/dist/types/core/src/semantic.d.ts +8 -0
- package/dist/types/core/src/testUtils/index.d.ts +6 -0
- package/dist/types/core/src/testUtils/mockConfig.d.ts +2 -0
- package/dist/types/core/src/testUtils/mockInternalLogger.d.ts +2 -0
- package/dist/types/core/src/testUtils/mockStacktraceParser.d.ts +2 -0
- package/dist/types/core/src/testUtils/mockTransport.d.ts +12 -0
- package/dist/types/core/src/testUtils/testPromise.d.ts +7 -0
- package/dist/types/core/src/transports/base.d.ts +6 -0
- package/dist/types/core/src/transports/const.d.ts +8 -0
- package/dist/types/core/src/transports/index.d.ts +6 -0
- package/dist/types/core/src/transports/initialize.d.ts +8 -0
- package/dist/types/core/src/transports/registerInitial.d.ts +2 -0
- package/dist/types/core/src/transports/transports.test.d.ts +1 -0
- package/dist/types/core/src/transports/types.d.ts +37 -0
- package/dist/types/core/src/transports/utils.d.ts +2 -0
- package/dist/types/core/src/unpatchedConsole/const.d.ts +2 -0
- package/dist/types/core/src/unpatchedConsole/index.d.ts +3 -0
- package/dist/types/core/src/unpatchedConsole/initialize.d.ts +4 -0
- package/dist/types/core/src/unpatchedConsole/types.d.ts +1 -0
- package/dist/types/core/src/utils/baseObject.d.ts +6 -0
- package/dist/types/core/src/utils/deepEqual.d.ts +1 -0
- package/dist/types/core/src/utils/deepEqual.test.d.ts +1 -0
- package/dist/types/core/src/utils/getCurrentTimestamp.d.ts +1 -0
- package/dist/types/core/src/utils/index.d.ts +10 -0
- package/dist/types/core/src/utils/is.d.ts +31 -0
- package/dist/types/core/src/utils/logLevels.d.ts +10 -0
- package/dist/types/core/src/utils/noop.d.ts +1 -0
- package/dist/types/core/src/utils/promiseBuffer.d.ts +14 -0
- package/dist/types/core/src/utils/promiseBuffer.test.d.ts +1 -0
- package/dist/types/core/src/utils/shortId.d.ts +1 -0
- package/dist/types/core/src/version.d.ts +1 -0
- package/dist/types/metas/types.d.ts +6 -0
- package/dist/types/testUtils/mockTransport.d.ts +2 -2
- package/dist/types/transports/base.d.ts +1 -1
- package/dist/types/transports/types.d.ts +1 -1
- package/dist/types/version.d.ts +1 -1
- package/package.json +4 -4
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
+
exports.mockConfig = void 0;
|
|
15
|
+
var internalLogger_1 = require("../internalLogger");
|
|
16
|
+
var mockStacktraceParser_1 = require("./mockStacktraceParser");
|
|
17
|
+
function mockConfig(overrides) {
|
|
18
|
+
if (overrides === void 0) { overrides = {}; }
|
|
19
|
+
return __assign({ app: {
|
|
20
|
+
name: 'test',
|
|
21
|
+
version: '1.0.0',
|
|
22
|
+
}, dedupe: true, globalObjectKey: 'faro', internalLoggerLevel: internalLogger_1.defaultInternalLoggerLevel, instrumentations: [], isolate: true, metas: [], parseStacktrace: mockStacktraceParser_1.mockStacktraceParser, paused: false, preventGlobalExposure: true, transports: [], unpatchedConsole: console }, overrides);
|
|
23
|
+
}
|
|
24
|
+
exports.mockConfig = mockConfig;
|
|
25
|
+
//# sourceMappingURL=mockConfig.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mockConfig.js","sourceRoot":"","sources":["../../../../../src/testUtils/mockConfig.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AACA,oDAA+D;AAE/D,+DAA8D;AAE9D,SAAgB,UAAU,CAAC,SAA+B;IAA/B,0BAAA,EAAA,cAA+B;IACxD,kBACE,GAAG,EAAE;YACH,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,OAAO;SACjB,EACD,MAAM,EAAE,IAAI,EACZ,eAAe,EAAE,MAAM,EACvB,mBAAmB,EAAE,2CAA0B,EAC/C,gBAAgB,EAAE,EAAE,EACpB,OAAO,EAAE,IAAI,EACb,KAAK,EAAE,EAAE,EACT,eAAe,EAAE,2CAAoB,EACrC,MAAM,EAAE,KAAK,EACb,qBAAqB,EAAE,IAAI,EAC3B,UAAU,EAAE,EAAE,EACd,gBAAgB,EAAE,OAAO,IACtB,SAAS,EACZ;AACJ,CAAC;AAnBD,gCAmBC","sourcesContent":["import type { Config } from '../config';\nimport { defaultInternalLoggerLevel } from '../internalLogger';\n\nimport { mockStacktraceParser } from './mockStacktraceParser';\n\nexport function mockConfig(overrides: Partial<Config> = {}): Config {\n return {\n app: {\n name: 'test',\n version: '1.0.0',\n },\n dedupe: true,\n globalObjectKey: 'faro',\n internalLoggerLevel: defaultInternalLoggerLevel,\n instrumentations: [],\n isolate: true,\n metas: [],\n parseStacktrace: mockStacktraceParser,\n paused: false,\n preventGlobalExposure: true,\n transports: [],\n unpatchedConsole: console,\n ...overrides,\n };\n}\n"]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.mockInternalLogger = void 0;
|
|
4
|
+
var utils_1 = require("../utils");
|
|
5
|
+
exports.mockInternalLogger = {
|
|
6
|
+
prefix: 'Faro',
|
|
7
|
+
debug: utils_1.noop,
|
|
8
|
+
info: utils_1.noop,
|
|
9
|
+
warn: utils_1.noop,
|
|
10
|
+
error: utils_1.noop,
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=mockInternalLogger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mockInternalLogger.js","sourceRoot":"","sources":["../../../../../src/testUtils/mockInternalLogger.ts"],"names":[],"mappings":";;;AACA,kCAAgC;AAEnB,QAAA,kBAAkB,GAAmB;IAChD,MAAM,EAAE,MAAM;IACd,KAAK,EAAE,YAAI;IACX,IAAI,EAAE,YAAI;IACV,IAAI,EAAE,YAAI;IACV,KAAK,EAAE,YAAI;CACZ,CAAC","sourcesContent":["import type { InternalLogger } from '../internalLogger';\nimport { noop } from '../utils';\n\nexport const mockInternalLogger: InternalLogger = {\n prefix: 'Faro',\n debug: noop,\n info: noop,\n warn: noop,\n error: noop,\n};\n"]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.mockStacktraceParser = void 0;
|
|
4
|
+
var mockStacktraceParser = function (err) {
|
|
5
|
+
var _a;
|
|
6
|
+
var frames = [];
|
|
7
|
+
var stack = (_a = err.stack) !== null && _a !== void 0 ? _a : err.stacktrace;
|
|
8
|
+
if (stack) {
|
|
9
|
+
stack.split('\n').forEach(function (line) {
|
|
10
|
+
frames.push({
|
|
11
|
+
filename: line,
|
|
12
|
+
function: '',
|
|
13
|
+
});
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
return {
|
|
17
|
+
frames: frames,
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
exports.mockStacktraceParser = mockStacktraceParser;
|
|
21
|
+
//# sourceMappingURL=mockStacktraceParser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mockStacktraceParser.js","sourceRoot":"","sources":["../../../../../src/testUtils/mockStacktraceParser.ts"],"names":[],"mappings":";;;AAEO,IAAM,oBAAoB,GAAqB,UAAC,GAAG;;IACxD,IAAM,MAAM,GAA0B,EAAE,CAAC;IACzC,IAAM,KAAK,GAAG,MAAA,GAAG,CAAC,KAAK,mCAAI,GAAG,CAAC,UAAU,CAAC;IAE1C,IAAI,KAAK,EAAE;QACT,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,UAAC,IAAI;YAC7B,MAAM,CAAC,IAAI,CAAC;gBACV,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,EAAE;aACb,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;KACJ;IAED,OAAO;QACL,MAAM,QAAA;KACP,CAAC;AACJ,CAAC,CAAC;AAhBW,QAAA,oBAAoB,wBAgB/B","sourcesContent":["import type { ExceptionStackFrame, StacktraceParser } from '../api';\n\nexport const mockStacktraceParser: StacktraceParser = (err) => {\n const frames: ExceptionStackFrame[] = [];\n const stack = err.stack ?? err.stacktrace;\n\n if (stack) {\n stack.split('\\n').forEach((line) => {\n frames.push({\n filename: line,\n function: '',\n });\n });\n }\n\n return {\n frames,\n };\n};\n"]}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.MockTransport = void 0;
|
|
19
|
+
var transports_1 = require("../transports");
|
|
20
|
+
var utils_1 = require("../utils");
|
|
21
|
+
var version_1 = require("../version");
|
|
22
|
+
var MockTransport = /** @class */ (function (_super) {
|
|
23
|
+
__extends(MockTransport, _super);
|
|
24
|
+
function MockTransport(ignoreURLs) {
|
|
25
|
+
if (ignoreURLs === void 0) { ignoreURLs = []; }
|
|
26
|
+
var _this = _super.call(this) || this;
|
|
27
|
+
_this.ignoreURLs = ignoreURLs;
|
|
28
|
+
_this.name = '@grafana/transport-mock';
|
|
29
|
+
_this.version = version_1.VERSION;
|
|
30
|
+
_this.items = [];
|
|
31
|
+
return _this;
|
|
32
|
+
}
|
|
33
|
+
MockTransport.prototype.send = function (item) {
|
|
34
|
+
var _a;
|
|
35
|
+
var items = (0, utils_1.isArray)(item) ? item : [item];
|
|
36
|
+
(_a = this.items).push.apply(_a, items);
|
|
37
|
+
};
|
|
38
|
+
MockTransport.prototype.getIgnoreUrls = function () {
|
|
39
|
+
return this.ignoreURLs;
|
|
40
|
+
};
|
|
41
|
+
return MockTransport;
|
|
42
|
+
}(transports_1.BaseTransport));
|
|
43
|
+
exports.MockTransport = MockTransport;
|
|
44
|
+
//# sourceMappingURL=mockTransport.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mockTransport.js","sourceRoot":"","sources":["../../../../../src/testUtils/mockTransport.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,4CAA8C;AAE9C,kCAAmC;AACnC,sCAAqC;AAErC;IAAmC,iCAAa;IAM9C,uBAAoB,UAAyB;QAAzB,2BAAA,EAAA,eAAyB;QAA7C,YACE,iBAAO,SACR;QAFmB,gBAAU,GAAV,UAAU,CAAe;QALpC,UAAI,GAAG,yBAAyB,CAAC;QACjC,aAAO,GAAG,iBAAO,CAAC;QAE3B,WAAK,GAAoB,EAAE,CAAC;;IAI5B,CAAC;IAED,4BAAI,GAAJ,UAAK,IAAqC;;QACxC,IAAM,KAAK,GAAG,IAAA,eAAO,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC5C,CAAA,KAAA,IAAI,CAAC,KAAK,CAAA,CAAC,IAAI,WAAI,KAAK,EAAE;IAC5B,CAAC;IAEQ,qCAAa,GAAtB;QACE,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IACH,oBAAC;AAAD,CAAC,AAlBD,CAAmC,0BAAa,GAkB/C;AAlBY,sCAAa","sourcesContent":["import type { Patterns } from '../config';\nimport { BaseTransport } from '../transports';\nimport type { Transport, TransportItem } from '../transports';\nimport { isArray } from '../utils';\nimport { VERSION } from '../version';\n\nexport class MockTransport extends BaseTransport implements Transport {\n readonly name = '@grafana/transport-mock';\n readonly version = VERSION;\n\n items: TransportItem[] = [];\n\n constructor(private ignoreURLs: Patterns = []) {\n super();\n }\n\n send(item: TransportItem | TransportItem[]): void | Promise<void> {\n const items = isArray(item) ? item : [item];\n this.items.push(...items);\n }\n\n override getIgnoreUrls(): Patterns {\n return this.ignoreURLs;\n }\n}\n"]}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createTestPromise = void 0;
|
|
4
|
+
function createTestPromise(id) {
|
|
5
|
+
var obj = {
|
|
6
|
+
id: id,
|
|
7
|
+
};
|
|
8
|
+
obj.promise = new Promise(function (resolve, reject) {
|
|
9
|
+
obj.resolve = resolve;
|
|
10
|
+
obj.reject = reject;
|
|
11
|
+
});
|
|
12
|
+
return obj;
|
|
13
|
+
}
|
|
14
|
+
exports.createTestPromise = createTestPromise;
|
|
15
|
+
//# sourceMappingURL=testPromise.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"testPromise.js","sourceRoot":"","sources":["../../../../../src/testUtils/testPromise.ts"],"names":[],"mappings":";;;AAUA,SAAgB,iBAAiB,CAAI,EAAW;IAC9C,IAAM,GAAG,GAAmB;QAC1B,EAAE,IAAA;KACe,CAAC;IAEpB,GAAG,CAAC,OAAO,GAAG,IAAI,OAAO,CAAI,UAAC,OAAO,EAAE,MAAM;QAC3C,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;QACtB,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;IACtB,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC;AAXD,8CAWC","sourcesContent":["// exposes resolve, reject methods and\n// adds id\nexport interface TestPromise<T> {\n promise: Promise<T>;\n reject: (reason: any) => void;\n resolve: (value: T | PromiseLike<T>) => void;\n\n id?: number;\n}\n\nexport function createTestPromise<T>(id?: number) {\n const obj: TestPromise<T> = {\n id,\n } as TestPromise<T>;\n\n obj.promise = new Promise<T>((resolve, reject) => {\n obj.resolve = resolve;\n obj.reject = reject;\n });\n\n return obj;\n}\n"]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.BaseTransport = void 0;
|
|
19
|
+
var extensions_1 = require("../extensions");
|
|
20
|
+
var BaseTransport = /** @class */ (function (_super) {
|
|
21
|
+
__extends(BaseTransport, _super);
|
|
22
|
+
function BaseTransport() {
|
|
23
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
24
|
+
}
|
|
25
|
+
BaseTransport.prototype.getIgnoreUrls = function () {
|
|
26
|
+
return [];
|
|
27
|
+
};
|
|
28
|
+
return BaseTransport;
|
|
29
|
+
}(extensions_1.BaseExtension));
|
|
30
|
+
exports.BaseTransport = BaseTransport;
|
|
31
|
+
//# sourceMappingURL=base.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../../src/transports/base.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,4CAA8C;AAI9C;IAA4C,iCAAa;IAAzD;;IAMA,CAAC;IAHC,qCAAa,GAAb;QACE,OAAO,EAAE,CAAC;IACZ,CAAC;IACH,oBAAC;AAAD,CAAC,AAND,CAA4C,0BAAa,GAMxD;AANqB,sCAAa","sourcesContent":["import { BaseExtension } from '../extensions';\n\nimport type { Transport, TransportItem } from './types';\n\nexport abstract class BaseTransport extends BaseExtension implements Transport {\n abstract send(item: TransportItem | TransportItem[]): void | Promise<void>;\n\n getIgnoreUrls(): Array<string | RegExp> {\n return [];\n }\n}\n"]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.transportItemTypeToBodyKey = exports.TransportItemType = void 0;
|
|
5
|
+
var TransportItemType;
|
|
6
|
+
(function (TransportItemType) {
|
|
7
|
+
TransportItemType["EXCEPTION"] = "exception";
|
|
8
|
+
TransportItemType["LOG"] = "log";
|
|
9
|
+
TransportItemType["MEASUREMENT"] = "measurement";
|
|
10
|
+
TransportItemType["TRACE"] = "trace";
|
|
11
|
+
TransportItemType["EVENT"] = "event";
|
|
12
|
+
})(TransportItemType = exports.TransportItemType || (exports.TransportItemType = {}));
|
|
13
|
+
exports.transportItemTypeToBodyKey = (_a = {},
|
|
14
|
+
_a[TransportItemType.EXCEPTION] = 'exceptions',
|
|
15
|
+
_a[TransportItemType.LOG] = 'logs',
|
|
16
|
+
_a[TransportItemType.MEASUREMENT] = 'measurements',
|
|
17
|
+
_a[TransportItemType.TRACE] = 'traces',
|
|
18
|
+
_a[TransportItemType.EVENT] = 'events',
|
|
19
|
+
_a);
|
|
20
|
+
//# sourceMappingURL=const.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"const.js","sourceRoot":"","sources":["../../../../../src/transports/const.ts"],"names":[],"mappings":";;;;AAAA,IAAY,iBAMX;AAND,WAAY,iBAAiB;IAC3B,4CAAuB,CAAA;IACvB,gCAAW,CAAA;IACX,gDAA2B,CAAA;IAC3B,oCAAe,CAAA;IACf,oCAAe,CAAA;AACjB,CAAC,EANW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAM5B;AAEY,QAAA,0BAA0B,GAAsC,CAAA;IAC3E,GAAC,iBAAiB,CAAC,SAAS,IAAG,YAAY;IAC3C,GAAC,iBAAiB,CAAC,GAAG,IAAG,MAAM;IAC/B,GAAC,iBAAiB,CAAC,WAAW,IAAG,cAAc;IAC/C,GAAC,iBAAiB,CAAC,KAAK,IAAG,QAAQ;IACnC,GAAC,iBAAiB,CAAC,KAAK,IAAG,QAAQ;MAC3B,CAAA,CAAC","sourcesContent":["export enum TransportItemType {\n EXCEPTION = 'exception',\n LOG = 'log',\n MEASUREMENT = 'measurement',\n TRACE = 'trace',\n EVENT = 'event',\n}\n\nexport const transportItemTypeToBodyKey: Record<TransportItemType, string> = {\n [TransportItemType.EXCEPTION]: 'exceptions',\n [TransportItemType.LOG]: 'logs',\n [TransportItemType.MEASUREMENT]: 'measurements',\n [TransportItemType.TRACE]: 'traces',\n [TransportItemType.EVENT]: 'events',\n} as const;\n"]}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getTransportBody = exports.registerInitialTransports = exports.transportItemTypeToBodyKey = exports.TransportItemType = exports.BaseTransport = exports.initializeTransports = void 0;
|
|
4
|
+
var initialize_1 = require("./initialize");
|
|
5
|
+
Object.defineProperty(exports, "initializeTransports", { enumerable: true, get: function () { return initialize_1.initializeTransports; } });
|
|
6
|
+
var base_1 = require("./base");
|
|
7
|
+
Object.defineProperty(exports, "BaseTransport", { enumerable: true, get: function () { return base_1.BaseTransport; } });
|
|
8
|
+
var const_1 = require("./const");
|
|
9
|
+
Object.defineProperty(exports, "TransportItemType", { enumerable: true, get: function () { return const_1.TransportItemType; } });
|
|
10
|
+
Object.defineProperty(exports, "transportItemTypeToBodyKey", { enumerable: true, get: function () { return const_1.transportItemTypeToBodyKey; } });
|
|
11
|
+
var registerInitial_1 = require("./registerInitial");
|
|
12
|
+
Object.defineProperty(exports, "registerInitialTransports", { enumerable: true, get: function () { return registerInitial_1.registerInitialTransports; } });
|
|
13
|
+
var utils_1 = require("./utils");
|
|
14
|
+
Object.defineProperty(exports, "getTransportBody", { enumerable: true, get: function () { return utils_1.getTransportBody; } });
|
|
15
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/transports/index.ts"],"names":[],"mappings":";;;AAAA,2CAAoD;AAA3C,kHAAA,oBAAoB,OAAA;AAE7B,+BAAuC;AAA9B,qGAAA,aAAa,OAAA;AAEtB,iCAAwE;AAA/D,0GAAA,iBAAiB,OAAA;AAAE,mHAAA,0BAA0B,OAAA;AAEtD,qDAA8D;AAArD,4HAAA,yBAAyB,OAAA;AAWlC,iCAA2C;AAAlC,yGAAA,gBAAgB,OAAA","sourcesContent":["export { initializeTransports } from './initialize';\n\nexport { BaseTransport } from './base';\n\nexport { TransportItemType, transportItemTypeToBodyKey } from './const';\n\nexport { registerInitialTransports } from './registerInitial';\n\nexport type {\n BeforeSendHook,\n Transport,\n TransportBody,\n TransportItem,\n TransportItemPayload,\n Transports,\n} from './types';\n\nexport { getTransportBody } from './utils';\n"]}
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
3
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
4
|
+
if (ar || !(i in from)) {
|
|
5
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
6
|
+
ar[i] = from[i];
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.initializeTransports = exports.createBeforeSendHookFromIgnorePatterns = exports.shouldIgnoreEvent = void 0;
|
|
13
|
+
var utils_1 = require("../utils");
|
|
14
|
+
var const_1 = require("./const");
|
|
15
|
+
function shouldIgnoreEvent(patterns, msg) {
|
|
16
|
+
return patterns.some(function (pattern) {
|
|
17
|
+
return (0, utils_1.isString)(pattern) ? msg.includes(pattern) : !!msg.match(pattern);
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
exports.shouldIgnoreEvent = shouldIgnoreEvent;
|
|
21
|
+
function createBeforeSendHookFromIgnorePatterns(patterns) {
|
|
22
|
+
return function (item) {
|
|
23
|
+
if (item.type === const_1.TransportItemType.EXCEPTION && item.payload) {
|
|
24
|
+
var evt = item.payload;
|
|
25
|
+
var msg = "".concat(evt.type, ": ").concat(evt.value);
|
|
26
|
+
if (shouldIgnoreEvent(patterns, msg)) {
|
|
27
|
+
return null;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
return item;
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
exports.createBeforeSendHookFromIgnorePatterns = createBeforeSendHookFromIgnorePatterns;
|
|
34
|
+
function initializeTransports(unpatchedConsole, internalLogger, config, metas) {
|
|
35
|
+
internalLogger.debug('Initializing transports');
|
|
36
|
+
var transports = [];
|
|
37
|
+
var paused = config.paused;
|
|
38
|
+
var beforeSendHooks = [];
|
|
39
|
+
var add = function () {
|
|
40
|
+
var newTransports = [];
|
|
41
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
42
|
+
newTransports[_i] = arguments[_i];
|
|
43
|
+
}
|
|
44
|
+
internalLogger.debug('Adding transports');
|
|
45
|
+
newTransports.forEach(function (newTransport) {
|
|
46
|
+
internalLogger.debug("Adding \"".concat(newTransport.name, "\" transport"));
|
|
47
|
+
var exists = transports.some(function (existingTransport) { return existingTransport === newTransport; });
|
|
48
|
+
if (exists) {
|
|
49
|
+
internalLogger.warn("Transport ".concat(newTransport.name, " is already added"));
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
newTransport.unpatchedConsole = unpatchedConsole;
|
|
53
|
+
newTransport.internalLogger = internalLogger;
|
|
54
|
+
newTransport.config = config;
|
|
55
|
+
newTransport.metas = metas;
|
|
56
|
+
transports.push(newTransport);
|
|
57
|
+
});
|
|
58
|
+
};
|
|
59
|
+
var addBeforeSendHooks = function () {
|
|
60
|
+
var newBeforeSendHooks = [];
|
|
61
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
62
|
+
newBeforeSendHooks[_i] = arguments[_i];
|
|
63
|
+
}
|
|
64
|
+
internalLogger.debug('Adding beforeSendHooks\n', beforeSendHooks);
|
|
65
|
+
newBeforeSendHooks.forEach(function (beforeSendHook) {
|
|
66
|
+
if (beforeSendHook) {
|
|
67
|
+
beforeSendHooks.push(beforeSendHook);
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
};
|
|
71
|
+
var addIgnoreErrorsPatterns = function () {
|
|
72
|
+
var ignoreErrorsPatterns = [];
|
|
73
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
74
|
+
ignoreErrorsPatterns[_i] = arguments[_i];
|
|
75
|
+
}
|
|
76
|
+
internalLogger.debug('Adding ignoreErrorsPatterns\n', ignoreErrorsPatterns);
|
|
77
|
+
ignoreErrorsPatterns.forEach(function (ignoreErrorsPattern) {
|
|
78
|
+
if (ignoreErrorsPattern) {
|
|
79
|
+
beforeSendHooks.push(createBeforeSendHookFromIgnorePatterns(ignoreErrorsPattern));
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
};
|
|
83
|
+
var execute = function (item) {
|
|
84
|
+
if (!paused) {
|
|
85
|
+
var actualItem = item;
|
|
86
|
+
for (var _i = 0, beforeSendHooks_1 = beforeSendHooks; _i < beforeSendHooks_1.length; _i++) {
|
|
87
|
+
var hook = beforeSendHooks_1[_i];
|
|
88
|
+
var modified = hook(actualItem);
|
|
89
|
+
if (modified === null) {
|
|
90
|
+
return;
|
|
91
|
+
}
|
|
92
|
+
actualItem = modified;
|
|
93
|
+
}
|
|
94
|
+
for (var _a = 0, transports_1 = transports; _a < transports_1.length; _a++) {
|
|
95
|
+
var transport = transports_1[_a];
|
|
96
|
+
internalLogger.debug("Transporting item using ".concat(transport.name, "\n"), actualItem);
|
|
97
|
+
transport.send(actualItem);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
};
|
|
101
|
+
var getBeforeSendHooks = function () { return __spreadArray([], beforeSendHooks, true); };
|
|
102
|
+
var isPaused = function () { return paused; };
|
|
103
|
+
var pause = function () {
|
|
104
|
+
internalLogger.debug('Pausing transports');
|
|
105
|
+
paused = true;
|
|
106
|
+
};
|
|
107
|
+
var remove = function () {
|
|
108
|
+
var transportsToRemove = [];
|
|
109
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
110
|
+
transportsToRemove[_i] = arguments[_i];
|
|
111
|
+
}
|
|
112
|
+
internalLogger.debug('Removing transports');
|
|
113
|
+
transportsToRemove.forEach(function (transportToRemove) {
|
|
114
|
+
internalLogger.debug("Removing \"".concat(transportToRemove.name, "\" transport"));
|
|
115
|
+
var existingTransportIndex = transports.indexOf(transportToRemove);
|
|
116
|
+
if (existingTransportIndex === -1) {
|
|
117
|
+
internalLogger.warn("Transport \"".concat(transportToRemove.name, "\" is not added"));
|
|
118
|
+
return;
|
|
119
|
+
}
|
|
120
|
+
transports.splice(existingTransportIndex, 1);
|
|
121
|
+
});
|
|
122
|
+
};
|
|
123
|
+
var removeBeforeSendHooks = function () {
|
|
124
|
+
var beforeSendHooksToRemove = [];
|
|
125
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
126
|
+
beforeSendHooksToRemove[_i] = arguments[_i];
|
|
127
|
+
}
|
|
128
|
+
beforeSendHooks.filter(function (beforeSendHook) { return !beforeSendHooksToRemove.includes(beforeSendHook); });
|
|
129
|
+
};
|
|
130
|
+
var unpause = function () {
|
|
131
|
+
internalLogger.debug('Unpausing transports');
|
|
132
|
+
paused = false;
|
|
133
|
+
};
|
|
134
|
+
return {
|
|
135
|
+
add: add,
|
|
136
|
+
addBeforeSendHooks: addBeforeSendHooks,
|
|
137
|
+
addIgnoreErrorsPatterns: addIgnoreErrorsPatterns,
|
|
138
|
+
getBeforeSendHooks: getBeforeSendHooks,
|
|
139
|
+
execute: execute,
|
|
140
|
+
isPaused: isPaused,
|
|
141
|
+
pause: pause,
|
|
142
|
+
remove: remove,
|
|
143
|
+
removeBeforeSendHooks: removeBeforeSendHooks,
|
|
144
|
+
get transports() {
|
|
145
|
+
return __spreadArray([], transports, true);
|
|
146
|
+
},
|
|
147
|
+
unpause: unpause,
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
exports.initializeTransports = initializeTransports;
|
|
151
|
+
//# sourceMappingURL=initialize.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"initialize.js","sourceRoot":"","sources":["../../../../../src/transports/initialize.ts"],"names":[],"mappings":"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","sourcesContent":["import type { ExceptionEvent } from '../api';\nimport type { Config, Patterns } from '../config';\nimport type { InternalLogger } from '../internalLogger';\nimport type { Metas } from '../metas';\nimport type { UnpatchedConsole } from '../unpatchedConsole';\nimport { isString } from '../utils';\n\nimport { TransportItemType } from './const';\nimport type { BeforeSendHook, Transport, Transports } from './types';\n\nexport function shouldIgnoreEvent(patterns: Patterns, msg: string): boolean {\n return patterns.some((pattern) => {\n return isString(pattern) ? msg.includes(pattern) : !!msg.match(pattern);\n });\n}\n\nexport function createBeforeSendHookFromIgnorePatterns(patterns: Patterns): BeforeSendHook {\n return (item) => {\n if (item.type === TransportItemType.EXCEPTION && item.payload) {\n const evt = item.payload as ExceptionEvent;\n const msg = `${evt.type}: ${evt.value}`;\n\n if (shouldIgnoreEvent(patterns, msg)) {\n return null;\n }\n }\n\n return item;\n };\n}\n\nexport function initializeTransports(\n unpatchedConsole: UnpatchedConsole,\n internalLogger: InternalLogger,\n config: Config,\n metas: Metas\n): Transports {\n internalLogger.debug('Initializing transports');\n\n const transports: Transport[] = [];\n\n let paused = config.paused;\n\n let beforeSendHooks: BeforeSendHook[] = [];\n\n const add: Transports['add'] = (...newTransports) => {\n internalLogger.debug('Adding transports');\n\n newTransports.forEach((newTransport) => {\n internalLogger.debug(`Adding \"${newTransport.name}\" transport`);\n\n const exists = transports.some((existingTransport) => existingTransport === newTransport);\n\n if (exists) {\n internalLogger.warn(`Transport ${newTransport.name} is already added`);\n\n return;\n }\n\n newTransport.unpatchedConsole = unpatchedConsole;\n newTransport.internalLogger = internalLogger;\n newTransport.config = config;\n newTransport.metas = metas;\n\n transports.push(newTransport);\n });\n };\n\n const addBeforeSendHooks: Transports['addBeforeSendHooks'] = (...newBeforeSendHooks) => {\n internalLogger.debug('Adding beforeSendHooks\\n', beforeSendHooks);\n\n newBeforeSendHooks.forEach((beforeSendHook) => {\n if (beforeSendHook) {\n beforeSendHooks.push(beforeSendHook);\n }\n });\n };\n\n const addIgnoreErrorsPatterns: Transports['addIgnoreErrorsPatterns'] = (...ignoreErrorsPatterns) => {\n internalLogger.debug('Adding ignoreErrorsPatterns\\n', ignoreErrorsPatterns);\n\n ignoreErrorsPatterns.forEach((ignoreErrorsPattern) => {\n if (ignoreErrorsPattern) {\n beforeSendHooks.push(createBeforeSendHookFromIgnorePatterns(ignoreErrorsPattern));\n }\n });\n };\n\n const execute: Transports['execute'] = (item) => {\n if (!paused) {\n let actualItem = item;\n\n for (const hook of beforeSendHooks) {\n const modified = hook(actualItem);\n\n if (modified === null) {\n return;\n }\n\n actualItem = modified;\n }\n\n for (const transport of transports) {\n internalLogger.debug(`Transporting item using ${transport.name}\\n`, actualItem);\n\n transport.send(actualItem);\n }\n }\n };\n\n const getBeforeSendHooks: Transports['getBeforeSendHooks'] = () => [...beforeSendHooks];\n\n const isPaused: Transports['isPaused'] = () => paused;\n\n const pause: Transports['pause'] = () => {\n internalLogger.debug('Pausing transports');\n\n paused = true;\n };\n\n const remove: Transports['remove'] = (...transportsToRemove) => {\n internalLogger.debug('Removing transports');\n\n transportsToRemove.forEach((transportToRemove) => {\n internalLogger.debug(`Removing \"${transportToRemove.name}\" transport`);\n\n const existingTransportIndex = transports.indexOf(transportToRemove);\n\n if (existingTransportIndex === -1) {\n internalLogger.warn(`Transport \"${transportToRemove.name}\" is not added`);\n\n return;\n }\n\n transports.splice(existingTransportIndex, 1);\n });\n };\n\n const removeBeforeSendHooks: Transports['removeBeforeSendHooks'] = (...beforeSendHooksToRemove) => {\n beforeSendHooks.filter((beforeSendHook) => !beforeSendHooksToRemove.includes(beforeSendHook));\n };\n\n const unpause: Transports['unpause'] = () => {\n internalLogger.debug('Unpausing transports');\n\n paused = false;\n };\n\n return {\n add,\n addBeforeSendHooks,\n addIgnoreErrorsPatterns,\n getBeforeSendHooks,\n execute,\n isPaused,\n pause,\n remove,\n removeBeforeSendHooks,\n get transports() {\n return [...transports];\n },\n unpause,\n };\n}\n"]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.registerInitialTransports = void 0;
|
|
4
|
+
function registerInitialTransports(faro) {
|
|
5
|
+
var _a;
|
|
6
|
+
(_a = faro.transports).add.apply(_a, faro.config.transports);
|
|
7
|
+
faro.transports.addBeforeSendHooks(faro.config.beforeSend);
|
|
8
|
+
faro.transports.addIgnoreErrorsPatterns(faro.config.ignoreErrors);
|
|
9
|
+
}
|
|
10
|
+
exports.registerInitialTransports = registerInitialTransports;
|
|
11
|
+
//# sourceMappingURL=registerInitial.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registerInitial.js","sourceRoot":"","sources":["../../../../../src/transports/registerInitial.ts"],"names":[],"mappings":";;;AAEA,SAAgB,yBAAyB,CAAC,IAAU;;IAClD,CAAA,KAAA,IAAI,CAAC,UAAU,CAAA,CAAC,GAAG,WAAI,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;IAC/C,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAC3D,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;AACpE,CAAC;AAJD,8DAIC","sourcesContent":["import type { Faro } from '../sdk';\n\nexport function registerInitialTransports(faro: Faro): void {\n faro.transports.add(...faro.config.transports);\n faro.transports.addBeforeSendHooks(faro.config.beforeSend);\n faro.transports.addIgnoreErrorsPatterns(faro.config.ignoreErrors);\n}\n"]}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
var __assign = (this && this.__assign) || function () {
|
|
18
|
+
__assign = Object.assign || function(t) {
|
|
19
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
20
|
+
s = arguments[i];
|
|
21
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
22
|
+
t[p] = s[p];
|
|
23
|
+
}
|
|
24
|
+
return t;
|
|
25
|
+
};
|
|
26
|
+
return __assign.apply(this, arguments);
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
var initialize_1 = require("../initialize");
|
|
30
|
+
var testUtils_1 = require("../testUtils");
|
|
31
|
+
var utils_1 = require("../utils");
|
|
32
|
+
var version_1 = require("../version");
|
|
33
|
+
var base_1 = require("./base");
|
|
34
|
+
var const_1 = require("./const");
|
|
35
|
+
var MockTransport = /** @class */ (function (_super) {
|
|
36
|
+
__extends(MockTransport, _super);
|
|
37
|
+
function MockTransport() {
|
|
38
|
+
var _this = _super !== null && _super.apply(this, arguments) || this;
|
|
39
|
+
_this.name = '@grafana/transport-mock';
|
|
40
|
+
_this.version = version_1.VERSION;
|
|
41
|
+
_this.sentItems = [];
|
|
42
|
+
return _this;
|
|
43
|
+
}
|
|
44
|
+
MockTransport.prototype.send = function (item) {
|
|
45
|
+
this.sentItems.push(item);
|
|
46
|
+
};
|
|
47
|
+
return MockTransport;
|
|
48
|
+
}(base_1.BaseTransport));
|
|
49
|
+
describe('transports', function () {
|
|
50
|
+
describe('config.ignoreErrors', function () {
|
|
51
|
+
it('will filter out errors by string or regex', function () {
|
|
52
|
+
var _a;
|
|
53
|
+
var transport = new MockTransport();
|
|
54
|
+
var transports = (0, initialize_1.initializeFaro)((0, testUtils_1.mockConfig)({
|
|
55
|
+
transports: [transport],
|
|
56
|
+
ignoreErrors: ['Error: ResizeObserver', /FetchError[:\s\w\/]*pwc/],
|
|
57
|
+
})).transports;
|
|
58
|
+
transports.execute(makeExceptionTransportItem('Error', 'ResizeObserver loop limit exceeded'));
|
|
59
|
+
transports.execute(makeExceptionTransportItem('TypeError', '_.viz is undefined'));
|
|
60
|
+
transports.execute(makeExceptionTransportItem('FetchError', '404 \n Instantiating https://pwc.grafana.net/public/react-router-dom'));
|
|
61
|
+
transports.execute(makeExceptionTransportItem('FetchError', '404 \n Instantiating https://pwc.grafana.net/public/@emotion/css'));
|
|
62
|
+
expect(transport.sentItems).toHaveLength(1);
|
|
63
|
+
expect(((_a = transport.sentItems[0]) === null || _a === void 0 ? void 0 : _a.payload).type).toEqual('TypeError');
|
|
64
|
+
});
|
|
65
|
+
});
|
|
66
|
+
describe('config.beforeSend', function () {
|
|
67
|
+
it('will not send events that are rejected by beforeSend hook', function () {
|
|
68
|
+
var _a;
|
|
69
|
+
var transport = new MockTransport();
|
|
70
|
+
var hookedItems = [];
|
|
71
|
+
var transports = (0, initialize_1.initializeFaro)((0, testUtils_1.mockConfig)({
|
|
72
|
+
transports: [transport],
|
|
73
|
+
beforeSend: function (item) {
|
|
74
|
+
hookedItems.push(item);
|
|
75
|
+
if (item.type === const_1.TransportItemType.EXCEPTION && item.payload.type === 'TypeError') {
|
|
76
|
+
return null;
|
|
77
|
+
}
|
|
78
|
+
return item;
|
|
79
|
+
},
|
|
80
|
+
})).transports;
|
|
81
|
+
transports.execute(makeExceptionTransportItem('Error', 'ResizeObserver loop limit exceeded'));
|
|
82
|
+
transports.execute(makeExceptionTransportItem('TypeError', '_.viz is undefined'));
|
|
83
|
+
expect(transport.sentItems).toHaveLength(1);
|
|
84
|
+
expect(hookedItems).toHaveLength(2);
|
|
85
|
+
expect(((_a = transport.sentItems[0]) === null || _a === void 0 ? void 0 : _a.payload).type).toEqual('Error');
|
|
86
|
+
});
|
|
87
|
+
it('events can be modified by beforeSend hook', function () {
|
|
88
|
+
var _a;
|
|
89
|
+
var transport = new MockTransport();
|
|
90
|
+
var transports = (0, initialize_1.initializeFaro)((0, testUtils_1.mockConfig)({
|
|
91
|
+
transports: [transport],
|
|
92
|
+
beforeSend: function (item) {
|
|
93
|
+
if (item.type === const_1.TransportItemType.EXCEPTION) {
|
|
94
|
+
return __assign(__assign({}, item), { payload: __assign(__assign({}, item.payload), { type: 'NewType' }) });
|
|
95
|
+
}
|
|
96
|
+
return item;
|
|
97
|
+
},
|
|
98
|
+
})).transports;
|
|
99
|
+
transports.execute(makeExceptionTransportItem('Error', 'ResizeObserver loop limit exceeded'));
|
|
100
|
+
expect(transport.sentItems).toHaveLength(1);
|
|
101
|
+
expect(((_a = transport.sentItems[0]) === null || _a === void 0 ? void 0 : _a.payload).type).toEqual('NewType');
|
|
102
|
+
});
|
|
103
|
+
});
|
|
104
|
+
describe('multiple transports of the same type', function () {
|
|
105
|
+
var transport1 = new MockTransport();
|
|
106
|
+
var transport2 = new MockTransport();
|
|
107
|
+
var transports = (0, initialize_1.initializeFaro)((0, testUtils_1.mockConfig)({
|
|
108
|
+
isolate: true,
|
|
109
|
+
instrumentations: [],
|
|
110
|
+
transports: [transport1, transport2],
|
|
111
|
+
})).transports;
|
|
112
|
+
it('will all be added and receive events', function () {
|
|
113
|
+
transports.execute(makeExceptionTransportItem('Error', 'ResizeObserver loop limit exceeded'));
|
|
114
|
+
expect(transport1.sentItems).toHaveLength(1);
|
|
115
|
+
expect(transport2.sentItems).toHaveLength(1);
|
|
116
|
+
});
|
|
117
|
+
it('one of them can be removed by instance', function () {
|
|
118
|
+
transports.remove(transport1);
|
|
119
|
+
transports.execute(makeExceptionTransportItem('Error', 'Kaboom'));
|
|
120
|
+
expect(transport1.sentItems).toHaveLength(1);
|
|
121
|
+
expect(transport2.sentItems).toHaveLength(2);
|
|
122
|
+
});
|
|
123
|
+
});
|
|
124
|
+
});
|
|
125
|
+
function makeExceptionTransportItem(type, value) {
|
|
126
|
+
return {
|
|
127
|
+
type: const_1.TransportItemType.EXCEPTION,
|
|
128
|
+
payload: {
|
|
129
|
+
type: type,
|
|
130
|
+
value: value,
|
|
131
|
+
timestamp: (0, utils_1.getCurrentTimestamp)(),
|
|
132
|
+
stacktrace: {
|
|
133
|
+
frames: [],
|
|
134
|
+
},
|
|
135
|
+
},
|
|
136
|
+
meta: {},
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
//# sourceMappingURL=transports.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transports.test.js","sourceRoot":"","sources":["../../../../../src/transports/transports.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,4CAA+C;AAC/C,0CAA0C;AAC1C,kCAA+C;AAC/C,sCAAqC;AAErC,+BAAuC;AACvC,iCAA4C;AAG5C;IAA4B,iCAAa;IAAzC;QAAA,qEASC;QARU,UAAI,GAAG,yBAAyB,CAAC;QACjC,aAAO,GAAG,iBAAO,CAAC;QAE3B,eAAS,GAAoB,EAAE,CAAC;;IAKlC,CAAC;IAHC,4BAAI,GAAJ,UAAK,IAAmB;QACtB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IACH,oBAAC;AAAD,CAAC,AATD,CAA4B,oBAAa,GASxC;AAED,QAAQ,CAAC,YAAY,EAAE;IACrB,QAAQ,CAAC,qBAAqB,EAAE;QAC9B,EAAE,CAAC,2CAA2C,EAAE;;YAC9C,IAAM,SAAS,GAAG,IAAI,aAAa,EAAE,CAAC;YAE9B,IAAA,UAAU,GAAK,IAAA,2BAAc,EACnC,IAAA,sBAAU,EAAC;gBACT,UAAU,EAAE,CAAC,SAAS,CAAC;gBACvB,YAAY,EAAE,CAAC,uBAAuB,EAAE,yBAAyB,CAAC;aACnE,CAAC,CACH,WALiB,CAKhB;YAEF,UAAU,CAAC,OAAO,CAAC,0BAA0B,CAAC,OAAO,EAAE,oCAAoC,CAAC,CAAC,CAAC;YAC9F,UAAU,CAAC,OAAO,CAAC,0BAA0B,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC,CAAC;YAClF,UAAU,CAAC,OAAO,CAChB,0BAA0B,CACxB,YAAY,EACZ,uEAAuE,CACxE,CACF,CAAC;YACF,UAAU,CAAC,OAAO,CAChB,0BAA0B,CAAC,YAAY,EAAE,mEAAmE,CAAC,CAC9G,CAAC;YACF,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC5C,MAAM,CAAC,CAAC,MAAA,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,0CAAE,OAAsB,CAAA,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACpF,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,mBAAmB,EAAE;QAC5B,EAAE,CAAC,2DAA2D,EAAE;;YAC9D,IAAM,SAAS,GAAG,IAAI,aAAa,EAAE,CAAC;YACtC,IAAM,WAAW,GAAoB,EAAE,CAAC;YAEhC,IAAA,UAAU,GAAK,IAAA,2BAAc,EACnC,IAAA,sBAAU,EAAC;gBACT,UAAU,EAAE,CAAC,SAAS,CAAC;gBACvB,UAAU,EAAE,UAAC,IAAmB;oBAC9B,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAEvB,IAAI,IAAI,CAAC,IAAI,KAAK,yBAAiB,CAAC,SAAS,IAAK,IAAI,CAAC,OAAsB,CAAC,IAAI,KAAK,WAAW,EAAE;wBAClG,OAAO,IAAI,CAAC;qBACb;oBAED,OAAO,IAAI,CAAC;gBACd,CAAC;aACF,CAAC,CACH,WAbiB,CAahB;YAEF,UAAU,CAAC,OAAO,CAAC,0BAA0B,CAAC,OAAO,EAAE,oCAAoC,CAAC,CAAC,CAAC;YAC9F,UAAU,CAAC,OAAO,CAAC,0BAA0B,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC,CAAC;YAElF,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC5C,MAAM,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACpC,MAAM,CAAC,CAAC,MAAA,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,0CAAE,OAAsB,CAAA,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAChF,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2CAA2C,EAAE;;YAC9C,IAAM,SAAS,GAAG,IAAI,aAAa,EAAE,CAAC;YAE9B,IAAA,UAAU,GAAK,IAAA,2BAAc,EACnC,IAAA,sBAAU,EAAC;gBACT,UAAU,EAAE,CAAC,SAAS,CAAC;gBACvB,UAAU,EAAE,UAAC,IAAmB;oBAC9B,IAAI,IAAI,CAAC,IAAI,KAAK,yBAAiB,CAAC,SAAS,EAAE;wBAC7C,6BACK,IAAI,KACP,OAAO,wBACF,IAAI,CAAC,OAAO,KACf,IAAI,EAAE,SAAS,OAEjB;qBACH;oBACD,OAAO,IAAI,CAAC;gBACd,CAAC;aACF,CAAC,CACH,WAhBiB,CAgBhB;YAEF,UAAU,CAAC,OAAO,CAAC,0BAA0B,CAAC,OAAO,EAAE,oCAAoC,CAAC,CAAC,CAAC;YAC9F,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC5C,MAAM,CAAC,CAAC,MAAA,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,0CAAE,OAAsB,CAAA,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAClF,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,sCAAsC,EAAE;QAC/C,IAAM,UAAU,GAAG,IAAI,aAAa,EAAE,CAAC;QACvC,IAAM,UAAU,GAAG,IAAI,aAAa,EAAE,CAAC;QAE/B,IAAA,UAAU,GAAK,IAAA,2BAAc,EACnC,IAAA,sBAAU,EAAC;YACT,OAAO,EAAE,IAAI;YACb,gBAAgB,EAAE,EAAE;YACpB,UAAU,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC;SACrC,CAAC,CACH,WANiB,CAMhB;QAEF,EAAE,CAAC,sCAAsC,EAAE;YACzC,UAAU,CAAC,OAAO,CAAC,0BAA0B,CAAC,OAAO,EAAE,oCAAoC,CAAC,CAAC,CAAC;YAC9F,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC7C,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wCAAwC,EAAE;YAC3C,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAC9B,UAAU,CAAC,OAAO,CAAC,0BAA0B,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;YAClE,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC7C,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,SAAS,0BAA0B,CAAC,IAAY,EAAE,KAAa;IAC7D,OAAO;QACL,IAAI,EAAE,yBAAiB,CAAC,SAAS;QACjC,OAAO,EAAE;YACP,IAAI,MAAA;YACJ,KAAK,OAAA;YACL,SAAS,EAAE,IAAA,2BAAmB,GAAE;YAChC,UAAU,EAAE;gBACV,MAAM,EAAE,EAAE;aACX;SACF;QACD,IAAI,EAAE,EAAE;KACT,CAAC;AACJ,CAAC","sourcesContent":["import type { ExceptionEvent } from '../api';\nimport { initializeFaro } from '../initialize';\nimport { mockConfig } from '../testUtils';\nimport { getCurrentTimestamp } from '../utils';\nimport { VERSION } from '../version';\n\nimport { BaseTransport } from './base';\nimport { TransportItemType } from './const';\nimport type { Transport, TransportItem } from './types';\n\nclass MockTransport extends BaseTransport implements Transport {\n readonly name = '@grafana/transport-mock';\n readonly version = VERSION;\n\n sentItems: TransportItem[] = [];\n\n send(item: TransportItem): void | Promise<void> {\n this.sentItems.push(item);\n }\n}\n\ndescribe('transports', () => {\n describe('config.ignoreErrors', () => {\n it('will filter out errors by string or regex', () => {\n const transport = new MockTransport();\n\n const { transports } = initializeFaro(\n mockConfig({\n transports: [transport],\n ignoreErrors: ['Error: ResizeObserver', /FetchError[:\\s\\w\\/]*pwc/],\n })\n );\n\n transports.execute(makeExceptionTransportItem('Error', 'ResizeObserver loop limit exceeded'));\n transports.execute(makeExceptionTransportItem('TypeError', '_.viz is undefined'));\n transports.execute(\n makeExceptionTransportItem(\n 'FetchError',\n '404 \\n Instantiating https://pwc.grafana.net/public/react-router-dom'\n )\n );\n transports.execute(\n makeExceptionTransportItem('FetchError', '404 \\n Instantiating https://pwc.grafana.net/public/@emotion/css')\n );\n expect(transport.sentItems).toHaveLength(1);\n expect((transport.sentItems[0]?.payload as ErrorEvent).type).toEqual('TypeError');\n });\n });\n\n describe('config.beforeSend', () => {\n it('will not send events that are rejected by beforeSend hook', () => {\n const transport = new MockTransport();\n const hookedItems: TransportItem[] = [];\n\n const { transports } = initializeFaro(\n mockConfig({\n transports: [transport],\n beforeSend: (item: TransportItem) => {\n hookedItems.push(item);\n\n if (item.type === TransportItemType.EXCEPTION && (item.payload as ErrorEvent).type === 'TypeError') {\n return null;\n }\n\n return item;\n },\n })\n );\n\n transports.execute(makeExceptionTransportItem('Error', 'ResizeObserver loop limit exceeded'));\n transports.execute(makeExceptionTransportItem('TypeError', '_.viz is undefined'));\n\n expect(transport.sentItems).toHaveLength(1);\n expect(hookedItems).toHaveLength(2);\n expect((transport.sentItems[0]?.payload as ErrorEvent).type).toEqual('Error');\n });\n\n it('events can be modified by beforeSend hook', () => {\n const transport = new MockTransport();\n\n const { transports } = initializeFaro(\n mockConfig({\n transports: [transport],\n beforeSend: (item: TransportItem) => {\n if (item.type === TransportItemType.EXCEPTION) {\n return {\n ...item,\n payload: {\n ...item.payload,\n type: 'NewType',\n },\n };\n }\n return item;\n },\n })\n );\n\n transports.execute(makeExceptionTransportItem('Error', 'ResizeObserver loop limit exceeded'));\n expect(transport.sentItems).toHaveLength(1);\n expect((transport.sentItems[0]?.payload as ErrorEvent).type).toEqual('NewType');\n });\n });\n\n describe('multiple transports of the same type', () => {\n const transport1 = new MockTransport();\n const transport2 = new MockTransport();\n\n const { transports } = initializeFaro(\n mockConfig({\n isolate: true,\n instrumentations: [],\n transports: [transport1, transport2],\n })\n );\n\n it('will all be added and receive events', () => {\n transports.execute(makeExceptionTransportItem('Error', 'ResizeObserver loop limit exceeded'));\n expect(transport1.sentItems).toHaveLength(1);\n expect(transport2.sentItems).toHaveLength(1);\n });\n\n it('one of them can be removed by instance', () => {\n transports.remove(transport1);\n transports.execute(makeExceptionTransportItem('Error', 'Kaboom'));\n expect(transport1.sentItems).toHaveLength(1);\n expect(transport2.sentItems).toHaveLength(2);\n });\n });\n});\n\nfunction makeExceptionTransportItem(type: string, value: string): TransportItem<ExceptionEvent> {\n return {\n type: TransportItemType.EXCEPTION,\n payload: {\n type,\n value,\n timestamp: getCurrentTimestamp(),\n stacktrace: {\n frames: [],\n },\n },\n meta: {},\n };\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/transports/types.ts"],"names":[],"mappings":"","sourcesContent":["import type { APIEvent, EventEvent, ExceptionEvent, LogEvent, MeasurementEvent, TraceEvent } from '../api';\nimport type { Patterns } from '../config';\nimport type { Extension } from '../extensions';\nimport type { Meta } from '../metas';\n\nimport type { TransportItemType } from './const';\n\nexport type TransportItemPayload<P = APIEvent> = P;\n\nexport type BeforeSendHook<P = APIEvent> = (item: TransportItem<P>) => TransportItem<P> | null;\n\nexport interface TransportItem<P = APIEvent> {\n type: TransportItemType;\n payload: TransportItemPayload<P>;\n meta: Meta;\n}\n\nexport interface Transport extends Extension {\n send(items: TransportItem | TransportItem[]): void | Promise<void>;\n\n // returns URLs to be ignored by tracing, to not cause a feedback loop\n getIgnoreUrls(): Patterns;\n}\n\nexport interface TransportBody {\n meta: Meta;\n\n exceptions?: ExceptionEvent[];\n logs?: LogEvent[];\n measurements?: MeasurementEvent[];\n traces?: TraceEvent;\n events?: EventEvent[];\n}\n\nexport interface Transports {\n add: (...transports: Transport[]) => void;\n addBeforeSendHooks: (...hooks: Array<BeforeSendHook | undefined>) => void;\n addIgnoreErrorsPatterns: (...ignoreErrorsPatterns: Array<Patterns | undefined>) => void;\n execute: (transportItem: TransportItem) => void;\n getBeforeSendHooks: () => BeforeSendHook[];\n isPaused: () => boolean;\n remove: (...transports: Transport[]) => void;\n removeBeforeSendHooks: (...hooks: Array<BeforeSendHook | undefined>) => void;\n transports: Transport[];\n pause: () => void;\n unpause: () => void;\n}\n"]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getTransportBody = void 0;
|
|
4
|
+
var const_1 = require("./const");
|
|
5
|
+
function getTransportBody(item) {
|
|
6
|
+
var _a;
|
|
7
|
+
return _a = {},
|
|
8
|
+
_a[const_1.transportItemTypeToBodyKey[item.type]] = item.type === const_1.TransportItemType.TRACE ? item.payload : [item.payload],
|
|
9
|
+
_a.meta = item.meta,
|
|
10
|
+
_a;
|
|
11
|
+
}
|
|
12
|
+
exports.getTransportBody = getTransportBody;
|
|
13
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/transports/utils.ts"],"names":[],"mappings":";;;AAAA,iCAAwE;AAGxE,SAAgB,gBAAgB,CAAC,IAAmB;;IAClD;QACE,GAAC,kCAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,IAAG,IAAI,CAAC,IAAI,KAAK,yBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;QAC9G,OAAI,GAAE,IAAI,CAAC,IAAI;WACf;AACJ,CAAC;AALD,4CAKC","sourcesContent":["import { TransportItemType, transportItemTypeToBodyKey } from './const';\nimport type { TransportBody, TransportItem } from './types';\n\nexport function getTransportBody(item: TransportItem): TransportBody {\n return {\n [transportItemTypeToBodyKey[item.type]]: item.type === TransportItemType.TRACE ? item.payload : [item.payload],\n meta: item.meta,\n };\n}\n"]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
+
exports.defaultUnpatchedConsole = void 0;
|
|
15
|
+
exports.defaultUnpatchedConsole = __assign({}, console);
|
|
16
|
+
//# sourceMappingURL=const.js.map
|