@coralogix/browser 1.2.40 → 1.4.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.
Files changed (73) hide show
  1. package/README.md +76 -0
  2. package/package.json +1 -1
  3. package/src/constants.d.ts +9 -3
  4. package/src/constants.js +11 -3
  5. package/src/constants.js.map +1 -1
  6. package/src/index.js +37 -3
  7. package/src/index.js.map +1 -1
  8. package/src/instrumentations/CoralogixResourcesInstrumentation.d.ts +1 -0
  9. package/src/instrumentations/CoralogixResourcesInstrumentation.js +14 -16
  10. package/src/instrumentations/CoralogixResourcesInstrumentation.js.map +1 -1
  11. package/src/instrumentations/CoralogixWebVitalsInstrumentation.js +12 -2
  12. package/src/instrumentations/CoralogixWebVitalsInstrumentation.js.map +1 -1
  13. package/src/instrumentations/{CoralogixCustomMeasurementInstrumentation.d.ts → custom-measurements/CoralogixCustomMeasurementInstrumentation.d.ts} +2 -2
  14. package/src/instrumentations/{CoralogixCustomMeasurementInstrumentation.js → custom-measurements/CoralogixCustomMeasurementInstrumentation.js} +7 -4
  15. package/src/instrumentations/custom-measurements/CoralogixCustomMeasurementInstrumentation.js.map +1 -0
  16. package/src/instrumentations/custom-measurements/custom-measurements.types.d.ts +5 -0
  17. package/src/instrumentations/custom-measurements/custom-measurements.types.js +2 -0
  18. package/src/instrumentations/custom-measurements/custom-measurements.types.js.map +1 -0
  19. package/src/instrumentations/custom-measurements/index.d.ts +3 -0
  20. package/src/instrumentations/custom-measurements/index.js +4 -0
  21. package/src/instrumentations/custom-measurements/index.js.map +1 -0
  22. package/src/instrumentations/custom-measurements/timeMeasurementTracker.d.ts +9 -0
  23. package/src/instrumentations/custom-measurements/timeMeasurementTracker.js +38 -0
  24. package/src/instrumentations/custom-measurements/timeMeasurementTracker.js.map +1 -0
  25. package/src/instrumentations/{CoralogixFetchInstrumentation.d.ts → network/CoralogixFetchInstrumentation.d.ts} +5 -1
  26. package/src/instrumentations/network/CoralogixFetchInstrumentation.js +99 -0
  27. package/src/instrumentations/network/CoralogixFetchInstrumentation.js.map +1 -0
  28. package/src/instrumentations/{CoralogixXhrInstrumentation.d.ts → network/CoralogixXhrInstrumentation.d.ts} +4 -0
  29. package/src/instrumentations/network/CoralogixXhrInstrumentation.js +57 -0
  30. package/src/instrumentations/network/CoralogixXhrInstrumentation.js.map +1 -0
  31. package/src/instrumentations/network/HeadersManager.d.ts +5 -0
  32. package/src/instrumentations/network/HeadersManager.js +42 -0
  33. package/src/instrumentations/network/HeadersManager.js.map +1 -0
  34. package/src/instrumentations/network/NetworkDataManager.d.ts +11 -0
  35. package/src/instrumentations/network/NetworkDataManager.js +87 -0
  36. package/src/instrumentations/network/NetworkDataManager.js.map +1 -0
  37. package/src/instrumentations/network/constants.d.ts +6 -0
  38. package/src/instrumentations/network/constants.js +7 -0
  39. package/src/instrumentations/network/constants.js.map +1 -0
  40. package/src/instrumentations/screenshot/CoralogixScreenshotInstrumentation.d.ts +8 -0
  41. package/src/instrumentations/screenshot/CoralogixScreenshotInstrumentation.js +28 -0
  42. package/src/instrumentations/screenshot/CoralogixScreenshotInstrumentation.js.map +1 -0
  43. package/src/instrumentations/screenshot/screenshot.utils.d.ts +2 -0
  44. package/src/instrumentations/screenshot/screenshot.utils.js +3 -0
  45. package/src/instrumentations/screenshot/screenshot.utils.js.map +1 -0
  46. package/src/processors/CoralogixSnapshotSpanProcessor.js +3 -0
  47. package/src/processors/CoralogixSnapshotSpanProcessor.js.map +1 -1
  48. package/src/processors/CoralogixSpanMapProcessor.js +19 -6
  49. package/src/processors/CoralogixSpanMapProcessor.js.map +1 -1
  50. package/src/session/session.model.d.ts +3 -1
  51. package/src/session/sessionManager.js +4 -4
  52. package/src/session/sessionManager.js.map +1 -1
  53. package/src/session/sessionRecorder.d.ts +6 -1
  54. package/src/session/sessionRecorder.js +93 -58
  55. package/src/session/sessionRecorder.js.map +1 -1
  56. package/src/snapshot/snapshot.consts.js +1 -0
  57. package/src/snapshot/snapshot.consts.js.map +1 -1
  58. package/src/snapshot/snapshot.model.d.ts +1 -0
  59. package/src/types.d.ts +41 -3
  60. package/src/types.js +1 -0
  61. package/src/types.js.map +1 -1
  62. package/src/utils/all.js +5 -6
  63. package/src/utils/all.js.map +1 -1
  64. package/src/version.d.ts +1 -1
  65. package/src/version.js +1 -1
  66. package/src/version.js.map +1 -1
  67. package/src/workers/session-recording-worker.js +13 -4
  68. package/src/workers/session-recording-worker.js.map +1 -1
  69. package/src/instrumentations/CoralogixCustomMeasurementInstrumentation.js.map +0 -1
  70. package/src/instrumentations/CoralogixFetchInstrumentation.js +0 -30
  71. package/src/instrumentations/CoralogixFetchInstrumentation.js.map +0 -1
  72. package/src/instrumentations/CoralogixXhrInstrumentation.js +0 -27
  73. package/src/instrumentations/CoralogixXhrInstrumentation.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timeMeasurementTracker.js","sourceRoot":"","sources":["../../../../../../libs/browser/src/instrumentations/custom-measurements/timeMeasurementTracker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAIhE,MAAM,OAAO,sBAAsB;IAAnC;QACU,iBAAY,GAAoC,IAAI,GAAG,EAAE,CAAC;IAuCpE,CAAC;IArCC,gBAAgB,CAAC,GAAW,EAAE,MAA2B;QACvD,IAAI,CAAC,6BAA6B,EAAE,CAAC;QACrC,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE;YAC7C,IAAI,CAAC,QAAQ,CAAC,8BAA8B,GAAG,IAAI,CAAC,CAAC;YACrD,OAAO;SACR;QAED,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAChE,CAAC;IAED,cAAc,CAAC,GAAW;QACxB,IAAI,CAAC,6BAA6B,EAAE,CAAC;QAErC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE;YAC9C,IAAI,CAAC,QAAQ,CAAC,8BAA8B,GAAG,IAAI,CAAC,CAAC;YACrD,OAAO,SAAS,CAAC;SAClB;QAED,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;QAC1D,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC9B,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;YAChC,MAAM;SACP,CAAC;IACJ,CAAC;IAEO,6BAA6B;QACnC,IAAI,iBAAiB,EAAE,CAAC,YAAY,EAAE;YACpC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;SAC3B;IACH,CAAC;IAEO,QAAQ,CAAC,OAAe;QAC9B,IAAI,YAAY,EAAE,CAAC,KAAK,EAAE;YACxB,OAAO,CAAC,KAAK,CAAC,2BAA2B,OAAO,EAAE,CAAC,CAAC;SACrD;IACH,CAAC;CACF"}
@@ -3,6 +3,10 @@ export declare enum FetchSource {
3
3
  FETCH = "fetch"
4
4
  }
5
5
  export declare class CoralogixFetchInstrumentation extends FetchInstrumentation {
6
+ private networkDataManager;
7
+ private headersManager;
6
8
  constructor(config: FetchInstrumentationConfig);
7
- enable(): void;
9
+ private setNetworkSpanAttributes;
10
+ private setRequestAttributes;
11
+ private setResponseAttributes;
8
12
  }
@@ -0,0 +1,99 @@
1
+ import { __awaiter } from "tslib";
2
+ import { FetchInstrumentation, } from '@opentelemetry/instrumentation-fetch';
3
+ import { CoralogixAttributes } from '../../constants';
4
+ import { CoralogixEventType } from '../../types';
5
+ import { CoralogixLogSeverity } from '../../types-external';
6
+ import { propagateTraceHeaderCorsUrls } from '../../otel/CoralogixPropgator';
7
+ import { isNetworkError } from '../../utils';
8
+ import { NetworkDataManager } from './NetworkDataManager';
9
+ import { getSdkConfig } from '../../helpers';
10
+ import { HeadersManager } from './HeadersManager';
11
+ import { NetworkInstrumentationAttributes } from './constants';
12
+ export var FetchSource;
13
+ (function (FetchSource) {
14
+ FetchSource["FETCH"] = "fetch";
15
+ })(FetchSource || (FetchSource = {}));
16
+ export class CoralogixFetchInstrumentation extends FetchInstrumentation {
17
+ constructor(config) {
18
+ propagateTraceHeaderCorsUrls(config);
19
+ config.applyCustomAttributesOnSpan = (span, request, result) => {
20
+ this.setNetworkSpanAttributes(span, request, result);
21
+ };
22
+ super(config);
23
+ this.networkDataManager = new NetworkDataManager();
24
+ this.headersManager = new HeadersManager();
25
+ }
26
+ setNetworkSpanAttributes(span, request, response) {
27
+ return __awaiter(this, void 0, void 0, function* () {
28
+ const { status } = response;
29
+ const { networkExtraConfig } = getSdkConfig();
30
+ const url = span.attributes['http.url'] ||
31
+ '';
32
+ const resolvedConfig = this.networkDataManager.resolveConfigForUrl(url, networkExtraConfig);
33
+ if (resolvedConfig) {
34
+ yield this.setRequestAttributes(span, request, resolvedConfig);
35
+ yield this.setResponseAttributes(span, response, resolvedConfig);
36
+ }
37
+ span.setAttributes({
38
+ [CoralogixAttributes.SEVERITY]: isNetworkError(status)
39
+ ? CoralogixLogSeverity.Error
40
+ : CoralogixLogSeverity.Info,
41
+ [CoralogixAttributes.EVENT_TYPE]: CoralogixEventType.NETWORK_REQUEST,
42
+ [CoralogixAttributes.SOURCE]: FetchSource.FETCH,
43
+ });
44
+ });
45
+ }
46
+ setRequestAttributes(span, request, networkExtraConfig) {
47
+ return __awaiter(this, void 0, void 0, function* () {
48
+ const { reqHeaders, collectReqPayload } = networkExtraConfig;
49
+ try {
50
+ const requestPayload = collectReqPayload
51
+ ? yield this.networkDataManager.stringifyRequestBody(request)
52
+ : undefined;
53
+ const sanitizedHeaders = (reqHeaders === null || reqHeaders === void 0 ? void 0 : reqHeaders.length)
54
+ ? this.headersManager.filterHeaders(request.headers, reqHeaders)
55
+ : undefined;
56
+ if (requestPayload)
57
+ span[NetworkInstrumentationAttributes.REQUEST_PAYLOAD] = requestPayload;
58
+ if (sanitizedHeaders === null || sanitizedHeaders === void 0 ? void 0 : sanitizedHeaders.size) {
59
+ span[NetworkInstrumentationAttributes.REQUEST_HEADERS] =
60
+ Object.fromEntries(sanitizedHeaders);
61
+ }
62
+ }
63
+ catch (error) {
64
+ if (getSdkConfig().debug) {
65
+ console.debug('Error setting request attributes on span:', error);
66
+ }
67
+ }
68
+ });
69
+ }
70
+ setResponseAttributes(span, result, networkExtraConfig) {
71
+ return __awaiter(this, void 0, void 0, function* () {
72
+ const { resHeaders, collectResPayload } = networkExtraConfig;
73
+ if (result instanceof Response) {
74
+ try {
75
+ const responsePayload = collectResPayload
76
+ ? yield this.networkDataManager.stringifyResponseBody(result)
77
+ : undefined;
78
+ const sanitizedHeaders = (resHeaders === null || resHeaders === void 0 ? void 0 : resHeaders.length)
79
+ ? this.headersManager.filterHeaders(result.headers, resHeaders)
80
+ : undefined;
81
+ if (responsePayload) {
82
+ span[NetworkInstrumentationAttributes.RESPONSE_PAYLOAD] =
83
+ responsePayload;
84
+ }
85
+ if (sanitizedHeaders === null || sanitizedHeaders === void 0 ? void 0 : sanitizedHeaders.size) {
86
+ span[NetworkInstrumentationAttributes.RESPONSE_HEADERS] =
87
+ Object.fromEntries(sanitizedHeaders);
88
+ }
89
+ }
90
+ catch (error) {
91
+ if (getSdkConfig().debug) {
92
+ console.debug('Error setting request attributes on span:', error);
93
+ }
94
+ }
95
+ }
96
+ });
97
+ }
98
+ }
99
+ //# sourceMappingURL=CoralogixFetchInstrumentation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CoralogixFetchInstrumentation.js","sourceRoot":"","sources":["../../../../../../libs/browser/src/instrumentations/network/CoralogixFetchInstrumentation.ts"],"names":[],"mappings":"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"}
@@ -3,5 +3,9 @@ export declare enum XHRSource {
3
3
  XHR = "xhr"
4
4
  }
5
5
  export declare class CoralogixXhrInstrumentation extends XMLHttpRequestInstrumentation {
6
+ private networkDataManager;
7
+ private headersManager;
6
8
  constructor(config: XMLHttpRequestInstrumentationConfig);
9
+ private setNetworkSpanAttributes;
10
+ private setResponseAttributes;
7
11
  }
@@ -0,0 +1,57 @@
1
+ import { XMLHttpRequestInstrumentation, } from '@opentelemetry/instrumentation-xml-http-request';
2
+ import { CoralogixAttributes } from '../../constants';
3
+ import { CoralogixEventType } from '../../types';
4
+ import { CoralogixLogSeverity } from '../../types-external';
5
+ import { isNetworkError } from '../../utils';
6
+ import { propagateTraceHeaderCorsUrls } from '../../otel/CoralogixPropgator';
7
+ import { NetworkDataManager } from './NetworkDataManager';
8
+ import { getSdkConfig } from '../../helpers';
9
+ import { HeadersManager } from './HeadersManager';
10
+ import { NetworkInstrumentationAttributes } from './constants';
11
+ export var XHRSource;
12
+ (function (XHRSource) {
13
+ XHRSource["XHR"] = "xhr";
14
+ })(XHRSource || (XHRSource = {}));
15
+ export class CoralogixXhrInstrumentation extends XMLHttpRequestInstrumentation {
16
+ constructor(config) {
17
+ propagateTraceHeaderCorsUrls(config);
18
+ config.applyCustomAttributesOnSpan = (span, xhr) => {
19
+ this.setNetworkSpanAttributes(span, xhr);
20
+ };
21
+ super(config);
22
+ this.networkDataManager = new NetworkDataManager();
23
+ this.headersManager = new HeadersManager();
24
+ }
25
+ setNetworkSpanAttributes(span, xhr) {
26
+ const { status } = xhr;
27
+ const { networkExtraConfig } = getSdkConfig();
28
+ const resolvedConfig = this.networkDataManager.resolveConfigForUrl(xhr.responseURL, networkExtraConfig);
29
+ span.setAttributes({
30
+ [CoralogixAttributes.SEVERITY]: isNetworkError(status)
31
+ ? CoralogixLogSeverity.Error
32
+ : CoralogixLogSeverity.Info,
33
+ [CoralogixAttributes.EVENT_TYPE]: CoralogixEventType.NETWORK_REQUEST,
34
+ [CoralogixAttributes.SOURCE]: XHRSource.XHR,
35
+ });
36
+ if (resolvedConfig) {
37
+ this.setResponseAttributes(span, xhr, resolvedConfig);
38
+ }
39
+ }
40
+ setResponseAttributes(span, xhr, resolvedConfig) {
41
+ const { resHeaders, collectResPayload } = resolvedConfig;
42
+ const responsePayload = collectResPayload
43
+ ? this.networkDataManager.truncateIfExceedsLimit(xhr.responseText)
44
+ : undefined;
45
+ const sanitizedHeaders = (resHeaders === null || resHeaders === void 0 ? void 0 : resHeaders.length)
46
+ ? this.headersManager.filterHeaders(xhr.getAllResponseHeaders(), resHeaders)
47
+ : undefined;
48
+ if (responsePayload) {
49
+ span[NetworkInstrumentationAttributes.RESPONSE_PAYLOAD] = responsePayload;
50
+ }
51
+ if (sanitizedHeaders === null || sanitizedHeaders === void 0 ? void 0 : sanitizedHeaders.size) {
52
+ span[NetworkInstrumentationAttributes.RESPONSE_HEADERS] =
53
+ Object.fromEntries(sanitizedHeaders);
54
+ }
55
+ }
56
+ }
57
+ //# sourceMappingURL=CoralogixXhrInstrumentation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CoralogixXhrInstrumentation.js","sourceRoot":"","sources":["../../../../../../libs/browser/src/instrumentations/network/CoralogixXhrInstrumentation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export declare class HeadersManager {
2
+ filterHeaders(headersInit: HeadersInit | string | undefined, allowedKeys?: string[]): Map<string, string>;
3
+ private normalizeHeaders;
4
+ private normalizeHeadersFromString;
5
+ }
@@ -0,0 +1,42 @@
1
+ export class HeadersManager {
2
+ filterHeaders(headersInit, allowedKeys = []) {
3
+ if (!headersInit) {
4
+ return new Map();
5
+ }
6
+ const normalized = this.normalizeHeaders(headersInit);
7
+ const filteredHeaders = new Map();
8
+ allowedKeys.forEach((headerKey) => {
9
+ const normalizedKey = headerKey.toLowerCase();
10
+ if (normalized.has(normalizedKey)) {
11
+ filteredHeaders.set(headerKey, normalized.get(normalizedKey));
12
+ }
13
+ });
14
+ return filteredHeaders;
15
+ }
16
+ normalizeHeaders(headersInit) {
17
+ if (typeof headersInit === 'string') {
18
+ return this.normalizeHeadersFromString(headersInit);
19
+ }
20
+ const headers = new Headers(headersInit);
21
+ const headersMap = new Map();
22
+ headers.forEach((value, key) => {
23
+ headersMap.set(key.toLowerCase(), value);
24
+ });
25
+ return headersMap;
26
+ }
27
+ normalizeHeadersFromString(headersString) {
28
+ const headerMap = new Map();
29
+ if (!headersString) {
30
+ return headerMap;
31
+ }
32
+ const lines = headersString.trim().split(/\r\n/);
33
+ lines.forEach((line) => {
34
+ const [key, value] = line.split(': ', 2);
35
+ if (key && value) {
36
+ headerMap.set(key.trim().toLowerCase(), value.trim());
37
+ }
38
+ });
39
+ return headerMap;
40
+ }
41
+ }
42
+ //# sourceMappingURL=HeadersManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HeadersManager.js","sourceRoot":"","sources":["../../../../../../libs/browser/src/instrumentations/network/HeadersManager.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,cAAc;IACzB,aAAa,CACX,WAA6C,EAC7C,cAAwB,EAAE;QAE1B,IAAI,CAAC,WAAW,EAAE;YAChB,OAAO,IAAI,GAAG,EAAE,CAAC;SAClB;QAED,MAAM,UAAU,GAAwB,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;QAC3E,MAAM,eAAe,GAAG,IAAI,GAAG,EAAkB,CAAC;QAElD,WAAW,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;YAChC,MAAM,aAAa,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;YAC9C,IAAI,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE;gBACjC,eAAe,CAAC,GAAG,CAAC,SAAS,EAAE,UAAU,CAAC,GAAG,CAAC,aAAa,CAAE,CAAC,CAAC;aAChE;QACH,CAAC,CAAC,CAAC;QACH,OAAO,eAAe,CAAC;IACzB,CAAC;IAEO,gBAAgB,CACtB,WAAiC;QAEjC,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE;YACnC,OAAO,IAAI,CAAC,0BAA0B,CAAC,WAAW,CAAC,CAAC;SACrD;QAED,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;QACzC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;QAE7C,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YAC7B,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,KAAK,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;QAEH,OAAO,UAAU,CAAC;IACpB,CAAC;IAEO,0BAA0B,CAChC,aAAqB;QAErB,MAAM,SAAS,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC5C,IAAI,CAAC,aAAa,EAAE;YAClB,OAAO,SAAS,CAAC;SAClB;QAED,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACjD,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACrB,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YACzC,IAAI,GAAG,IAAI,KAAK,EAAE;gBAChB,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;aACvD;QACH,CAAC,CAAC,CAAC;QACH,OAAO,SAAS,CAAC;IACnB,CAAC;CACF"}
@@ -0,0 +1,11 @@
1
+ import { NetworkExtraConfig } from '../../types';
2
+ export declare class NetworkDataManager {
3
+ private readonly responseBodyParsers;
4
+ private readonly requestBodySerializers;
5
+ resolveConfigForUrl(url: string, configs?: NetworkExtraConfig[]): NetworkExtraConfig | undefined;
6
+ stringifyRequestBody(request: Request | RequestInit): Promise<string | undefined>;
7
+ stringifyResponseBody(response: Response): Promise<string | undefined>;
8
+ truncateIfExceedsLimit(content: string): string | undefined;
9
+ private serializeRequestBody;
10
+ private serializeFormData;
11
+ }
@@ -0,0 +1,87 @@
1
+ import { __awaiter } from "tslib";
2
+ import { MAX_CHARACTERS } from '../../constants';
3
+ export class NetworkDataManager {
4
+ constructor() {
5
+ this.responseBodyParsers = new Map([
6
+ [MimeType.Json, (body) => __awaiter(this, void 0, void 0, function* () { return JSON.stringify(yield body.json()); })],
7
+ [MimeType.TextPlain, (body) => __awaiter(this, void 0, void 0, function* () { return yield body.text(); })],
8
+ [MimeType.TextHtml, (body) => __awaiter(this, void 0, void 0, function* () { return yield body.text(); })],
9
+ [MimeType.TextCss, (body) => __awaiter(this, void 0, void 0, function* () { return yield body.text(); })],
10
+ [MimeType.TextJavascript, (body) => __awaiter(this, void 0, void 0, function* () { return yield body.text(); })],
11
+ [MimeType.Xml, (body) => __awaiter(this, void 0, void 0, function* () { return yield body.text(); })],
12
+ [MimeType.FormData, (body) => __awaiter(this, void 0, void 0, function* () { return yield body.text(); })],
13
+ ]);
14
+ this.requestBodySerializers = new Map([
15
+ [BodyType.String, (body) => __awaiter(this, void 0, void 0, function* () { return body; })],
16
+ [BodyType.Blob, (body) => __awaiter(this, void 0, void 0, function* () { return body.text(); })],
17
+ [
18
+ BodyType.FormData,
19
+ (body) => __awaiter(this, void 0, void 0, function* () { return this.serializeFormData(body); }),
20
+ ],
21
+ [
22
+ BodyType.URLSearchParams,
23
+ (body) => __awaiter(this, void 0, void 0, function* () { return body.toString(); }),
24
+ ],
25
+ [BodyType.JsonObject, (body) => __awaiter(this, void 0, void 0, function* () { return JSON.stringify(body); })],
26
+ ]);
27
+ }
28
+ resolveConfigForUrl(url, configs = []) {
29
+ return configs.find(({ url: configUrl }) => configUrl === url ||
30
+ (configUrl instanceof RegExp && configUrl.test(url)));
31
+ }
32
+ stringifyRequestBody(request) {
33
+ return __awaiter(this, void 0, void 0, function* () {
34
+ if (!(request === null || request === void 0 ? void 0 : request.body))
35
+ return '';
36
+ const bodyContent = yield this.serializeRequestBody(request.body);
37
+ return this.truncateIfExceedsLimit(bodyContent);
38
+ });
39
+ }
40
+ stringifyResponseBody(response) {
41
+ return __awaiter(this, void 0, void 0, function* () {
42
+ const contentType = response.headers.get('content-type') || '';
43
+ const mimeType = contentType.split(';')[0].trim();
44
+ const parser = this.responseBodyParsers.get(mimeType);
45
+ if (!parser)
46
+ return '';
47
+ const parsedContent = yield parser(response);
48
+ return this.truncateIfExceedsLimit(parsedContent);
49
+ });
50
+ }
51
+ truncateIfExceedsLimit(content) {
52
+ return content.length > MAX_CHARACTERS ? undefined : content;
53
+ }
54
+ serializeRequestBody(body) {
55
+ return __awaiter(this, void 0, void 0, function* () {
56
+ const handler = this.requestBodySerializers.get(body.constructor.name);
57
+ return handler ? yield handler(body) : '';
58
+ });
59
+ }
60
+ serializeFormData(formData) {
61
+ let result = '';
62
+ formData.forEach((value, key) => {
63
+ result += `${key}: ${value}\n`;
64
+ });
65
+ return result.trim();
66
+ }
67
+ }
68
+ var MimeType;
69
+ (function (MimeType) {
70
+ MimeType["Json"] = "application/json";
71
+ MimeType["TextPlain"] = "text/plain";
72
+ MimeType["TextHtml"] = "text/html";
73
+ MimeType["TextCss"] = "text/css";
74
+ MimeType["TextJavascript"] = "application/javascript";
75
+ MimeType["Xml"] = "application/xml";
76
+ MimeType["FormData"] = "multipart/form-data";
77
+ })(MimeType || (MimeType = {}));
78
+ var BodyType;
79
+ (function (BodyType) {
80
+ BodyType["String"] = "String";
81
+ BodyType["Blob"] = "Blob";
82
+ BodyType["FormData"] = "FormData";
83
+ BodyType["URLSearchParams"] = "URLSearchParams";
84
+ BodyType["JsonObject"] = "JsonObject";
85
+ BodyType["Unknown"] = "Unknown";
86
+ })(BodyType || (BodyType = {}));
87
+ //# sourceMappingURL=NetworkDataManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NetworkDataManager.js","sourceRoot":"","sources":["../../../../../../libs/browser/src/instrumentations/network/NetworkDataManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export declare const NetworkInstrumentationAttributes: {
2
+ REQUEST_HEADERS: string;
3
+ RESPONSE_HEADERS: string;
4
+ RESPONSE_PAYLOAD: string;
5
+ REQUEST_PAYLOAD: string;
6
+ };
@@ -0,0 +1,7 @@
1
+ export const NetworkInstrumentationAttributes = {
2
+ REQUEST_HEADERS: 'request_headers',
3
+ RESPONSE_HEADERS: 'response_headers',
4
+ RESPONSE_PAYLOAD: 'response_payload',
5
+ REQUEST_PAYLOAD: 'request_payload',
6
+ };
7
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../libs/browser/src/instrumentations/network/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gCAAgC,GAAG;IAC9C,eAAe,EAAE,iBAAiB;IAClC,gBAAgB,EAAE,kBAAkB;IACpC,gBAAgB,EAAE,kBAAkB;IACpC,eAAe,EAAE,iBAAiB;CACnC,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { InstrumentationBase, InstrumentationConfig } from '@opentelemetry/instrumentation';
2
+ export declare class CoralogixScreenshotInstrumentation extends InstrumentationBase {
3
+ constructor(config: InstrumentationConfig);
4
+ protected init(): void;
5
+ disable(): void;
6
+ enable(): void;
7
+ screenshot(id: string, description?: string): void;
8
+ }
@@ -0,0 +1,28 @@
1
+ import { InstrumentationBase, } from '@opentelemetry/instrumentation';
2
+ import { CoralogixEventType } from '../../types';
3
+ import { CoralogixAttributes } from '../../constants';
4
+ import { CoralogixLogSeverity } from '../../types-external';
5
+ import { getSessionRecorder } from '../../helpers';
6
+ import { SCREENSHOT_INSTRUMENTATION_NAME, SCREENSHOT_INSTRUMENTATION_VERSION, } from './screenshot.utils';
7
+ export class CoralogixScreenshotInstrumentation extends InstrumentationBase {
8
+ constructor(config) {
9
+ super(SCREENSHOT_INSTRUMENTATION_NAME, SCREENSHOT_INSTRUMENTATION_VERSION, config);
10
+ }
11
+ init() { }
12
+ disable() { }
13
+ enable() { }
14
+ screenshot(id, description) {
15
+ if (!getSessionRecorder()) {
16
+ return;
17
+ }
18
+ const span = this.tracer.startSpan(CoralogixEventType.SCREENSHOT);
19
+ span.setAttribute(CoralogixAttributes.EVENT_TYPE, CoralogixEventType.SCREENSHOT);
20
+ span.setAttribute(CoralogixAttributes.SEVERITY, CoralogixLogSeverity.Info);
21
+ span[CoralogixAttributes.SCREENSHOT_CONTEXT] = {
22
+ id,
23
+ description,
24
+ };
25
+ span.end();
26
+ }
27
+ }
28
+ //# sourceMappingURL=CoralogixScreenshotInstrumentation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CoralogixScreenshotInstrumentation.js","sourceRoot":"","sources":["../../../../../../libs/browser/src/instrumentations/screenshot/CoralogixScreenshotInstrumentation.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,GAEpB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EACL,+BAA+B,EAC/B,kCAAkC,GACnC,MAAM,oBAAoB,CAAC;AAE5B,MAAM,OAAO,kCAAmC,SAAQ,mBAAmB;IACzE,YAAY,MAA6B;QACvC,KAAK,CACH,+BAA+B,EAC/B,kCAAkC,EAClC,MAAM,CACP,CAAC;IACJ,CAAC;IAES,IAAI,KAAU,CAAC;IAEhB,OAAO,KAAI,CAAC;IAEZ,MAAM,KAAI,CAAC;IAEpB,UAAU,CAAC,EAAU,EAAE,WAAoB;QACzC,IAAI,CAAC,kBAAkB,EAAE,EAAE;YACzB,OAAO;SACR;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAElE,IAAI,CAAC,YAAY,CACf,mBAAmB,CAAC,UAAU,EAC9B,kBAAkB,CAAC,UAAU,CAC9B,CAAC;QACF,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,QAAQ,EAAE,oBAAoB,CAAC,IAAI,CAAC,CAAC;QAE3E,IAAI,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,GAAG;YAC7C,EAAE;YACF,WAAW;SACZ,CAAC;QAEF,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,CAAC;CACF"}
@@ -0,0 +1,2 @@
1
+ export declare const SCREENSHOT_INSTRUMENTATION_NAME = "screenshot";
2
+ export declare const SCREENSHOT_INSTRUMENTATION_VERSION = "1.0.0";
@@ -0,0 +1,3 @@
1
+ export const SCREENSHOT_INSTRUMENTATION_NAME = 'screenshot';
2
+ export const SCREENSHOT_INSTRUMENTATION_VERSION = '1.0.0';
3
+ //# sourceMappingURL=screenshot.utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"screenshot.utils.js","sourceRoot":"","sources":["../../../../../../libs/browser/src/instrumentations/screenshot/screenshot.utils.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,+BAA+B,GAAG,YAAY,CAAC;AAC5D,MAAM,CAAC,MAAM,kCAAkC,GAAG,OAAO,CAAA"}
@@ -66,6 +66,9 @@ export class CoralogixSnapshotSpanProcessor {
66
66
  updateSnapshot({ timestamp: getNowTime() });
67
67
  shouldCreateSnapshot = true;
68
68
  }
69
+ if (spanType === CoralogixEventType.SCREENSHOT) {
70
+ updateSnapshot({ hasScreenshot: true });
71
+ }
69
72
  if (spanTimestamp - snapshotTimestamp >=
70
73
  millisecondsPerMinute) {
71
74
  updateSnapshot({ timestamp: getNowTime() });
@@ -1 +1 @@
1
- {"version":3,"file":"CoralogixSnapshotSpanProcessor.js","sourceRoot":"","sources":["../../../../../libs/browser/src/processors/CoralogixSnapshotSpanProcessor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CoralogixSnapshotSpanProcessor.js","sourceRoot":"","sources":["../../../../../libs/browser/src/processors/CoralogixSnapshotSpanProcessor.ts"],"names":[],"mappings":"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"}
@@ -10,20 +10,22 @@ import { shouldDropEvent } from '../filters/filters';
10
10
  import { processBeforeSend } from '../before-send';
11
11
  import { isProcessorShouldStop } from './processor.helper';
12
12
  import { getNowTime } from '../utils/time';
13
+ import { NetworkInstrumentationAttributes } from '../instrumentations/network/constants';
13
14
  export class CoralogixSpanMapProcessor {
14
15
  constructor() {
15
16
  this.sdkConfig = getSdkConfig();
16
17
  this.isActive = true;
17
18
  }
18
19
  onEnd(span) {
19
- var _a;
20
+ var _a, _b;
20
21
  if (isProcessorShouldStop(this.isActive)) {
21
22
  return;
22
23
  }
23
24
  const { onlySessionWithErrorMode, getPrevSession, getSession, setSession } = getSessionManager();
24
25
  const session = getSession() || setSession();
25
26
  const sessionHasRecording = !!((_a = getSessionRecorder()) === null || _a === void 0 ? void 0 : _a.getSessionHasRecording());
26
- const mappedCxSpan = this._mapToCxSpan(span, session, getPrevSession(), sessionHasRecording, onlySessionWithErrorMode);
27
+ const sessionHasScreenshot = !!((_b = getSessionRecorder()) === null || _b === void 0 ? void 0 : _b.getSessionHasScreenshot());
28
+ const mappedCxSpan = this._mapToCxSpan(span, session, getPrevSession(), sessionHasRecording, sessionHasScreenshot, onlySessionWithErrorMode);
27
29
  if (!shouldDropEvent(mappedCxSpan.text.cx_rum, this.sdkConfig)) {
28
30
  const resolvedCxSpan = processBeforeSend(mappedCxSpan, this.sdkConfig);
29
31
  if (resolvedCxSpan) {
@@ -45,10 +47,10 @@ export class CoralogixSpanMapProcessor {
45
47
  forceFlush() {
46
48
  return Promise.resolve(undefined);
47
49
  }
48
- _mapToCxSpan(span, session, prevSession, sessionHasRecording, onlySessionWithErrorMode) {
50
+ _mapToCxSpan(span, session, prevSession, sessionHasRecording, sessionHasScreenshot, onlySessionWithErrorMode) {
49
51
  var _a, _b;
50
52
  const { sessionId, sessionCreationDate } = session || {};
51
- const { sessionId: prevSessionId, sessionCreationDate: prevSessionCreationDate, hasRecording: prevSessionHasRecording, } = prevSession || {};
53
+ const { sessionId: prevSessionId, sessionCreationDate: prevSessionCreationDate, hasRecording: prevSessionHasRecording, hasScreenshot: prevSessionHasScreenshot, } = prevSession || {};
52
54
  const { attributes, startTime, parentSpanId, name, endTime, status, duration, kind, } = span;
53
55
  const user_context = JSON.parse(attributes[CoralogixAttributes.USER_CONTEXT]);
54
56
  const application_context = JSON.parse(attributes[CoralogixAttributes.APPLICATION_CONTEXT]);
@@ -85,8 +87,9 @@ export class CoralogixSpanMapProcessor {
85
87
  session_id: prevSessionId,
86
88
  session_creation_date: prevSessionCreationDate,
87
89
  hasRecording: prevSessionHasRecording,
90
+ hasScreenshot: prevSessionHasScreenshot,
88
91
  }
89
- : undefined, hasRecording: sessionHasRecording, user_agent: attributes[CoralogixAttributes.USER_AGENT] }), parseUserAgent(attributes[CoralogixAttributes.USER_AGENT])), { onlyWithErrorMode: onlySessionWithErrorMode }), page_context: span[CoralogixAttributes.PAGE_CONTEXT], isNavigationEvent: !!span[CoralogixAttributes.IS_NAVIGATION_EVENT], event_context: {
92
+ : undefined, hasRecording: sessionHasRecording, hasScreenshot: sessionHasScreenshot, user_agent: attributes[CoralogixAttributes.USER_AGENT] }), parseUserAgent(attributes[CoralogixAttributes.USER_AGENT])), { onlyWithErrorMode: onlySessionWithErrorMode }), page_context: span[CoralogixAttributes.PAGE_CONTEXT], isNavigationEvent: !!span[CoralogixAttributes.IS_NAVIGATION_EVENT], event_context: {
90
93
  type: eventType,
91
94
  source: attributes[CoralogixAttributes.SOURCE],
92
95
  severity,
@@ -130,6 +133,11 @@ export class CoralogixSpanMapProcessor {
130
133
  span[CoralogixAttributes.MEMORY_USAGE_CONTEXT];
131
134
  break;
132
135
  }
136
+ case CoralogixEventType.SCREENSHOT: {
137
+ cxSpan.text.cx_rum.screenshot_context =
138
+ span[CoralogixAttributes.SCREENSHOT_CONTEXT];
139
+ break;
140
+ }
133
141
  }
134
142
  }
135
143
  _getEventTypeContext(spanAttributes, eventType, span) {
@@ -177,6 +185,10 @@ export class CoralogixSpanMapProcessor {
177
185
  status_text: spanAttributes[OtelNetworkAttrs.STATUS_TEXT],
178
186
  duration: hrTimeToMilliseconds(span === null || span === void 0 ? void 0 : span.duration),
179
187
  response_content_length: spanAttributes[OtelNetworkAttrs.RESPONSE_CONTENT_LENGTH],
188
+ request_headers: span[NetworkInstrumentationAttributes.REQUEST_HEADERS],
189
+ request_payload: span[NetworkInstrumentationAttributes.REQUEST_PAYLOAD],
190
+ response_headers: span[NetworkInstrumentationAttributes.RESPONSE_HEADERS],
191
+ response_payload: span[NetworkInstrumentationAttributes.RESPONSE_PAYLOAD],
180
192
  },
181
193
  };
182
194
  }
@@ -232,8 +244,9 @@ export class CoralogixSpanMapProcessor {
232
244
  }
233
245
  case CoralogixEventType.RESOURCES: {
234
246
  const resourceContext = JSON.parse(spanAttributes[RESOURCES_INSTRUMENTATION_NAME]);
247
+ const fragments = getUrlFragments(resourceContext.name);
235
248
  return {
236
- resource_context: resourceContext,
249
+ resource_context: Object.assign(Object.assign({}, resourceContext), { fragments }),
237
250
  };
238
251
  }
239
252
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CoralogixSpanMapProcessor.js","sourceRoot":"","sources":["../../../../../libs/browser/src/processors/CoralogixSpanMapProcessor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CoralogixSpanMapProcessor.js","sourceRoot":"","sources":["../../../../../libs/browser/src/processors/CoralogixSpanMapProcessor.ts"],"names":[],"mappings":"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"}
@@ -86,9 +86,10 @@ export interface SessionRecordingMetadata {
86
86
  segmentSize: number;
87
87
  segmentTimestamp: number;
88
88
  sessionId: string;
89
- sessionCreationTime: number;
89
+ sessionCreationDate: number;
90
90
  application: string;
91
91
  subIndex: number | undefined;
92
+ snapshotId?: string;
92
93
  }
93
94
  export type SessionRecordingWorkerEvent = 'compressRecordData' | 'splitRecordData' | 'sendRecordData' | 'stopRecording';
94
95
  export interface SessionRecordingWorkerData {
@@ -98,4 +99,5 @@ export interface SessionRecordingWorkerData {
98
99
  chunkIndex?: number;
99
100
  totalChunks?: number;
100
101
  event: SessionRecordingWorkerEvent;
102
+ screenshotId?: string;
101
103
  }