@coralogix/browser 1.0.81 → 1.0.86
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/package.json +1 -1
- package/src/CoralogixExporter.d.ts +1 -0
- package/src/CoralogixExporter.js +20 -7
- package/src/CoralogixExporter.js.map +1 -1
- package/src/constants.d.ts +1 -0
- package/src/constants.js +5 -1
- package/src/constants.js.map +1 -1
- package/src/instrumentations/CoralogixLongTaskInstrumentation.d.ts +0 -2
- package/src/instrumentations/CoralogixLongTaskInstrumentation.js +3 -12
- package/src/instrumentations/CoralogixLongTaskInstrumentation.js.map +1 -1
- package/src/instrumentations/CoralogixResourcesInstrumentation.js +3 -3
- package/src/instrumentations/CoralogixResourcesInstrumentation.js.map +1 -1
- package/src/instrumentations/CoralogixWebVitalsInstrumentation.d.ts +0 -2
- package/src/instrumentations/CoralogixWebVitalsInstrumentation.js +28 -42
- package/src/instrumentations/CoralogixWebVitalsInstrumentation.js.map +1 -1
- package/src/label-providers/url-based-label-provider.js +8 -7
- package/src/label-providers/url-based-label-provider.js.map +1 -1
- package/src/session/session.consts.d.ts +2 -0
- package/src/session/session.consts.js +2 -0
- package/src/session/session.consts.js.map +1 -1
- package/src/session/session.model.d.ts +2 -0
- package/src/session/sessionManager.d.ts +4 -2
- package/src/session/sessionManager.js +28 -11
- package/src/session/sessionManager.js.map +1 -1
- package/src/session/sessionRecorder.d.ts +3 -0
- package/src/session/sessionRecorder.js +32 -14
- package/src/session/sessionRecorder.js.map +1 -1
- package/src/types.d.ts +2 -1
- package/src/types.js.map +1 -1
- package/src/version.d.ts +1 -1
- package/src/version.js +1 -1
- package/src/workers/session-recording-worker.js +7 -3
- package/src/workers/session-recording-worker.js.map +1 -1
package/package.json
CHANGED
|
@@ -11,6 +11,7 @@ export declare class CoralogixExporter implements SpanExporter {
|
|
|
11
11
|
export(spans: ReadableSpan[], resultCallback: (result: ExportResult) => void): void;
|
|
12
12
|
shutdown(): Promise<void>;
|
|
13
13
|
private _mapToCxSpan;
|
|
14
|
+
private internalEventsModifiers;
|
|
14
15
|
private resolveLabels;
|
|
15
16
|
private _getEventTypeContext;
|
|
16
17
|
private resolvePageContext;
|
package/src/CoralogixExporter.js
CHANGED
|
@@ -18,15 +18,16 @@ export class CoralogixExporter {
|
|
|
18
18
|
this.url = `${CoralogixDomainsApiUrlMap[coralogixDomain]}${CORALOGIX_LOGS_URL_SUFFIX}`;
|
|
19
19
|
}
|
|
20
20
|
export(spans, resultCallback) {
|
|
21
|
-
var _a, _b, _c;
|
|
21
|
+
var _a, _b, _c, _d;
|
|
22
22
|
if (!this.isActive) {
|
|
23
23
|
resultCallback({ code: ExportResultCode.SUCCESS });
|
|
24
24
|
return;
|
|
25
25
|
}
|
|
26
26
|
const session = ((_a = getSessionManager()) === null || _a === void 0 ? void 0 : _a.getSession()) || ((_b = getSessionManager()) === null || _b === void 0 ? void 0 : _b.setSession());
|
|
27
27
|
const sessionHasRecording = !!((_c = getSessionRecorder()) === null || _c === void 0 ? void 0 : _c.getSessionHasRecording());
|
|
28
|
+
const prevSession = (_d = getSessionManager()) === null || _d === void 0 ? void 0 : _d.getPrevSession();
|
|
28
29
|
const cxSpans = spans
|
|
29
|
-
.map((
|
|
30
|
+
.map((span) => this._mapToCxSpan(span, session, prevSession, sessionHasRecording))
|
|
30
31
|
.filter((cxSpan) => !shouldDropEvent(cxSpan.text.cx_rum, this.sdkConfig));
|
|
31
32
|
if (cxSpans.length) {
|
|
32
33
|
fetch(this.url, {
|
|
@@ -46,9 +47,10 @@ export class CoralogixExporter {
|
|
|
46
47
|
this.isActive = false;
|
|
47
48
|
return Promise.resolve();
|
|
48
49
|
}
|
|
49
|
-
_mapToCxSpan(span, session, sessionHasRecording) {
|
|
50
|
+
_mapToCxSpan(span, session, prevSession, sessionHasRecording) {
|
|
50
51
|
var _a, _b;
|
|
51
52
|
const { sessionId, sessionCreationDate } = session || {};
|
|
53
|
+
const { sessionId: prevSessionId, sessionCreationDate: prevSessionCreationDate, } = 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]);
|
|
@@ -80,7 +82,7 @@ export class CoralogixExporter {
|
|
|
80
82
|
text: {
|
|
81
83
|
cx_rum: Object.assign(Object.assign({ timestamp }, eventTypeContext), { browser_sdk: {
|
|
82
84
|
version: SDK_VERSION,
|
|
83
|
-
}, version_metadata, session_context: Object.assign(Object.assign({ session_id: sessionId, session_creation_date: sessionCreationDate, hasRecording: sessionHasRecording, user_agent: attributes[CoralogixAttributes.USER_AGENT] }, parseUserAgent(attributes[CoralogixAttributes.USER_AGENT])), { user_id,
|
|
85
|
+
}, version_metadata, session_context: Object.assign(Object.assign({ session_id: sessionId, session_creation_date: sessionCreationDate, prev_session_id: prevSessionId, prev_session_creation_date: prevSessionCreationDate, hasRecording: sessionHasRecording, user_agent: attributes[CoralogixAttributes.USER_AGENT] }, parseUserAgent(attributes[CoralogixAttributes.USER_AGENT])), { user_id,
|
|
84
86
|
user_name,
|
|
85
87
|
user_email,
|
|
86
88
|
user_metadata }), page_context: this.resolvePageContext(attributes), event_context: {
|
|
@@ -112,8 +114,19 @@ export class CoralogixExporter {
|
|
|
112
114
|
};
|
|
113
115
|
}
|
|
114
116
|
cxSpan.text.cx_rum.labels = this.resolveLabels(cxSpan.text.cx_rum);
|
|
117
|
+
if (eventType === CoralogixEventType.INTERNAL) {
|
|
118
|
+
this.internalEventsModifiers(cxSpan.text.cx_rum, attributes);
|
|
119
|
+
}
|
|
115
120
|
return cxSpan;
|
|
116
121
|
}
|
|
122
|
+
internalEventsModifiers(cxRumEvent, attributes) {
|
|
123
|
+
const internalContext = JSON.parse(attributes[CoralogixAttributes.INTERNAL]);
|
|
124
|
+
const { event } = internalContext || {};
|
|
125
|
+
if (event === 'session-end' && cxRumEvent.session_context.prev_session_id) {
|
|
126
|
+
const { prev_session_id, prev_session_creation_date } = cxRumEvent.session_context;
|
|
127
|
+
cxRumEvent.session_context = Object.assign(Object.assign({}, cxRumEvent.session_context), { session_id: prev_session_id, session_creation_date: prev_session_creation_date, prev_session_id: undefined, prev_session_creation_date: undefined });
|
|
128
|
+
}
|
|
129
|
+
}
|
|
117
130
|
resolveLabels(cxRumEvent) {
|
|
118
131
|
var _a, _b;
|
|
119
132
|
let allLabels = cxRumEvent.labels;
|
|
@@ -121,9 +134,9 @@ export class CoralogixExporter {
|
|
|
121
134
|
if (labelProviders === null || labelProviders === void 0 ? void 0 : labelProviders.length) {
|
|
122
135
|
const pageUrlLabelProviders = getInternalRumData(PAGE_URL_LABEL_PROVIDERS_KEY);
|
|
123
136
|
const networkUrlLabelProviders = getInternalRumData(NETWORK_URL_LABEL_PROVIDERS_KEY);
|
|
124
|
-
const
|
|
125
|
-
const labelsFromProviders = Object.assign(Object.assign({}, this.getLabelsByLabelProviders(pageUrlLabelProviders, cxRumEvent, cxRumEvent.page_context.
|
|
126
|
-
? this.getLabelsByLabelProviders(networkUrlLabelProviders, cxRumEvent,
|
|
137
|
+
const networkRequestFragment = (_b = cxRumEvent.network_request_context) === null || _b === void 0 ? void 0 : _b.fragments;
|
|
138
|
+
const labelsFromProviders = Object.assign(Object.assign({}, this.getLabelsByLabelProviders(pageUrlLabelProviders, cxRumEvent, cxRumEvent.page_context.page_fragments)), (networkRequestFragment
|
|
139
|
+
? this.getLabelsByLabelProviders(networkUrlLabelProviders, cxRumEvent, networkRequestFragment)
|
|
127
140
|
: {}));
|
|
128
141
|
allLabels = Object.assign(Object.assign({}, allLabels), labelsFromProviders);
|
|
129
142
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CoralogixExporter.js","sourceRoot":"","sources":["../../../../libs/browser/src/CoralogixExporter.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,kBAAkB,EAUlB,gBAAgB,GAMjB,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EACnB,yBAAyB,EACzB,+BAA+B,EAC/B,4BAA4B,GAC7B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,gBAAgC,MAAM,oBAAoB,CAAC;AAClE,OAAO,EACL,oBAAoB,EACpB,SAAS,EACT,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,oBAAoB,EACpB,cAAc,GACf,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAgB,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAErE,OAAO,EACL,0BAA0B,EAC1B,8BAA8B,EAC9B,+BAA+B,GAChC,MAAM,2CAA2C,CAAC;AAGnD,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAOpD,MAAM,OAAO,iBAAiB;IAM5B,YAAY,EAAE,UAAU,EAAE,eAAe,EAA2B;QAL5D,aAAQ,GAAG,IAAI,CAAC;QAChB,eAAU,GAAG,EAAE,CAAC;QAChB,cAAS,GAA8B,YAAY,EAAE,CAAC;QACtD,QAAG,GAAG,EAAE,CAAC;QAGf,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,GAAG,GAAG,GAAG,yBAAyB,CAAC,eAAe,CAAC,GAAG,yBAAyB,EAAE,CAAC;IACzF,CAAC;IAED,MAAM,CACJ,KAAqB,EACrB,cAA8C;;QAE9C,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,cAAc,CAAC,EAAE,IAAI,EAAE,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAC;YACnD,OAAO;SACR;QAED,MAAM,OAAO,GACX,CAAA,MAAA,iBAAiB,EAAE,0CAAE,UAAU,EAAE,MAAI,MAAA,iBAAiB,EAAE,0CAAE,UAAU,EAAE,CAAA,CAAC;QAEzE,MAAM,mBAAmB,GACvB,CAAC,CAAC,CAAA,MAAA,kBAAkB,EAAE,0CAAE,sBAAsB,EAAE,CAAA,CAAC;QAEnD,MAAM,OAAO,GAAG,KAAK;aAClB,GAAG,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"CoralogixExporter.js","sourceRoot":"","sources":["../../../../libs/browser/src/CoralogixExporter.ts"],"names":[],"mappings":"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"}
|
package/src/constants.d.ts
CHANGED
|
@@ -10,6 +10,7 @@ import { CoralogixResourcesInstrumentation } from './instrumentations/CoralogixR
|
|
|
10
10
|
import { CoralogixInternalInstrumentation } from './instrumentations/CoralogixInternalInstrumentation';
|
|
11
11
|
export declare const miillisecondsInSecond = 1000;
|
|
12
12
|
export declare const CORALOGIX_LOGS_URL_SUFFIX = "/browser/v1beta/logs";
|
|
13
|
+
export declare const CORALOGIX_RECORDING_URL_SUFFIX = "/sessionrecording";
|
|
13
14
|
export declare const MAX_EXPORT_BATCH_SIZE = 50;
|
|
14
15
|
export declare const MAX_INTERACTION_ELEMENT_SIZE = 1024;
|
|
15
16
|
export declare const SCHEDULE_DELAY_MILLIS: number;
|
package/src/constants.js
CHANGED
|
@@ -11,6 +11,7 @@ import { replacePatternsInUrl } from './utils';
|
|
|
11
11
|
import { CoralogixInternalInstrumentation } from './instrumentations/CoralogixInternalInstrumentation';
|
|
12
12
|
export const miillisecondsInSecond = 1000;
|
|
13
13
|
export const CORALOGIX_LOGS_URL_SUFFIX = '/browser/v1beta/logs';
|
|
14
|
+
export const CORALOGIX_RECORDING_URL_SUFFIX = '/sessionrecording';
|
|
14
15
|
export const MAX_EXPORT_BATCH_SIZE = 50;
|
|
15
16
|
export const MAX_INTERACTION_ELEMENT_SIZE = 1024;
|
|
16
17
|
export const SCHEDULE_DELAY_MILLIS = 2 * miillisecondsInSecond;
|
|
@@ -48,7 +49,10 @@ const defaultUrlBlueprinters = {
|
|
|
48
49
|
],
|
|
49
50
|
};
|
|
50
51
|
export const OPTIONS_DEFAULTS = {
|
|
51
|
-
ignoreUrls: [
|
|
52
|
+
ignoreUrls: [
|
|
53
|
+
new RegExp('.*' + CORALOGIX_LOGS_URL_SUFFIX + '.*'),
|
|
54
|
+
new RegExp('.*' + CORALOGIX_RECORDING_URL_SUFFIX + '.*')
|
|
55
|
+
],
|
|
52
56
|
user_context: {
|
|
53
57
|
user_id: '',
|
|
54
58
|
user_name: '',
|
package/src/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../libs/browser/src/constants.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,6BAA6B,EAC7B,0BAA0B,EAC1B,eAAe,GAChB,MAAM,kDAAkD,CAAC;AAC1D,OAAO,EAAE,6BAA6B,EAAE,MAAM,kDAAkD,CAAC;AACjG,OAAO,EAAE,2BAA2B,EAAE,MAAM,gDAAgD,CAAC;AAC7F,OAAO,EAAE,iCAAiC,EAAE,MAAM,sDAAsD,CAAC;AACzG,OAAO,EAAE,uCAAuC,EAAE,MAAM,4DAA4D,CAAC;AACrH,OAAO,EAAE,iCAAiC,EAAE,MAAM,sDAAsD,CAAC;AACzG,OAAO,EACL,6BAA6B,EAC7B,+BAA+B,EAC/B,8BAA8B,EAC9B,+BAA+B,GAChC,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,gCAAgC,EAAE,MAAM,qDAAqD,CAAC;AACvG,OAAO,EAAE,iCAAiC,EAAE,MAAM,sDAAsD,CAAC;AACzG,OAAO,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,gCAAgC,EAAE,MAAM,qDAAqD,CAAC;AAEvG,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAC;AAE1C,MAAM,CAAC,MAAM,yBAAyB,GAAG,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../libs/browser/src/constants.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
import { InstrumentationBase, InstrumentationModuleDefinition } from '@opentelemetry/instrumentation';
|
|
2
2
|
export declare class CoralogixLongTaskInstrumentation extends InstrumentationBase {
|
|
3
3
|
private longTaskObserver;
|
|
4
|
-
private longTasksListAfterPageLoaded;
|
|
5
4
|
constructor();
|
|
6
|
-
private registerToLongTasksAfterPageLoaded;
|
|
7
5
|
private registerToLongTasks;
|
|
8
6
|
private createSpanFromLongTask;
|
|
9
7
|
enable(): void;
|
|
@@ -3,28 +3,19 @@ import { LONG_TASK_INSTRUMENTATION_VERSION, LONG_TASK_PERFORMANCE_TYPE, } from '
|
|
|
3
3
|
import { CoralogixEventType, PerformanceTypes, } from '../types';
|
|
4
4
|
import { CoralogixAttributes } from '../constants';
|
|
5
5
|
import { v4 as uuidv4 } from 'uuid';
|
|
6
|
-
import { supportedPerformanceTypes } from '../utils';
|
|
6
|
+
import { deepClone, supportedPerformanceTypes } from '../utils';
|
|
7
7
|
export class CoralogixLongTaskInstrumentation extends InstrumentationBase {
|
|
8
8
|
constructor() {
|
|
9
9
|
super(LONG_TASK_PERFORMANCE_TYPE, LONG_TASK_INSTRUMENTATION_VERSION);
|
|
10
|
-
this.longTasksListAfterPageLoaded = [];
|
|
11
10
|
if (supportedPerformanceTypes[PerformanceTypes.LongTask]) {
|
|
12
11
|
this.registerToLongTasks();
|
|
13
|
-
this.registerToLongTasksAfterPageLoaded();
|
|
14
12
|
}
|
|
15
13
|
else {
|
|
16
14
|
console.warn('Coralogix Browser SDK - browser doesnt support longtask events');
|
|
17
15
|
}
|
|
18
16
|
}
|
|
19
|
-
registerToLongTasksAfterPageLoaded() {
|
|
20
|
-
window.addEventListener('load', () => {
|
|
21
|
-
this.longTasksListAfterPageLoaded.forEach((entry) => this.createSpanFromLongTask(entry, true));
|
|
22
|
-
}, { once: true });
|
|
23
|
-
}
|
|
24
17
|
registerToLongTasks() {
|
|
25
18
|
this.longTaskObserver = new PerformanceObserver((list) => {
|
|
26
|
-
this.longTasksListAfterPageLoaded =
|
|
27
|
-
this.longTasksListAfterPageLoaded.concat(list.getEntries());
|
|
28
19
|
list
|
|
29
20
|
.getEntries()
|
|
30
21
|
.forEach((entry) => this.createSpanFromLongTask(entry));
|
|
@@ -34,9 +25,9 @@ export class CoralogixLongTaskInstrumentation extends InstrumentationBase {
|
|
|
34
25
|
buffered: true,
|
|
35
26
|
});
|
|
36
27
|
}
|
|
37
|
-
createSpanFromLongTask(entry
|
|
28
|
+
createSpanFromLongTask(entry) {
|
|
38
29
|
const longTaskSpan = this.tracer.startSpan(CoralogixEventType.LONG_TASK);
|
|
39
|
-
const longTaskContext = Object.assign(Object.assign({},
|
|
30
|
+
const longTaskContext = Object.assign(Object.assign({}, deepClone(entry)), { id: uuidv4() });
|
|
40
31
|
if (entry['toJSON']) {
|
|
41
32
|
delete longTaskContext['toJSON'];
|
|
42
33
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CoralogixLongTaskInstrumentation.js","sourceRoot":"","sources":["../../../../../libs/browser/src/instrumentations/CoralogixLongTaskInstrumentation.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,GAEpB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,iCAAiC,EACjC,0BAA0B,GAC3B,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,kBAAkB,EAElB,gBAAgB,GACjB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"CoralogixLongTaskInstrumentation.js","sourceRoot":"","sources":["../../../../../libs/browser/src/instrumentations/CoralogixLongTaskInstrumentation.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,GAEpB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,iCAAiC,EACjC,0BAA0B,GAC3B,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,kBAAkB,EAElB,gBAAgB,GACjB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AAEhE,MAAM,OAAO,gCAAiC,SAAQ,mBAAmB;IAGvE;QACE,KAAK,CAAC,0BAA0B,EAAE,iCAAiC,CAAC,CAAC;QAErE,IAAI,yBAAyB,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE;YACxD,IAAI,CAAC,mBAAmB,EAAE,CAAC;SAC5B;aAAM;YACL,OAAO,CAAC,IAAI,CACV,gEAAgE,CACjE,CAAC;SACH;IACH,CAAC;IAEO,mBAAmB;QACzB,IAAI,CAAC,gBAAgB,GAAG,IAAI,mBAAmB,CAC7C,CAAC,IAAkC,EAAE,EAAE;YACrC,IAAI;iBACD,UAAU,EAAE;iBACZ,OAAO,CAAC,CAAC,KAAuB,EAAE,EAAE,CACnC,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CACnC,CAAC;QACN,CAAC,CACF,CAAC;QAEF,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;YAC5B,IAAI,EAAE,gBAAgB,CAAC,QAAQ;YAC/B,QAAQ,EAAE,IAAI;SACf,CAAC,CAAC;IACL,CAAC;IAEO,sBAAsB,CAAC,KAAuB;QACpD,MAAM,YAAY,GAAS,IAAI,CAAC,MAAM,CAAC,SAAS,CAC9C,kBAAkB,CAAC,SAAS,CAC7B,CAAC;QAEF,MAAM,eAAe,mCAChB,SAAS,CAAC,KAAK,CAAC,KACnB,EAAE,EAAE,MAAM,EAAE,GACb,CAAC;QAEF,IAAI,KAAK,CAAC,QAAQ,CAAC,EAAE;YACnB,OAAO,eAAe,CAAC,QAAQ,CAAC,CAAC;SAClC;QAED,IAAI,KAAK,CAAC,aAAa,CAAC,EAAE;YACxB,OAAO,eAAe,CAAC,aAAa,CAAC,CAAC;SACvC;QAED,YAAY,CAAC,YAAY,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAErE,YAAY,CAAC,YAAY,CACvB,mBAAmB,CAAC,UAAU,EAC9B,kBAAkB,CAAC,SAAS,CAC7B,CAAC;QAEF,YAAY,CAAC,YAAY,CACvB,0BAA0B,EAC1B,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,CAChC,CAAC;QAEF,YAAY,CAAC,GAAG,EAAE,CAAC;IACrB,CAAC;IAEQ,MAAM,KAAI,CAAC;IAEX,OAAO;;QACd,MAAA,IAAI,CAAC,gBAAgB,0CAAE,UAAU,EAAE,CAAC;IACtC,CAAC;IAES,IAAI;QAIZ,OAAO,SAAS,CAAC;IACnB,CAAC;CACF"}
|
|
@@ -2,7 +2,7 @@ import { InstrumentationBase, } from '@opentelemetry/instrumentation';
|
|
|
2
2
|
import { CSS_EXTENSIONS, DOC_EXTENSIONS, FONT_EXTENSIONS, FONTS_URL, IMG_EXTENSIONS, MEDIA_EXTENSIONS, OTHER_EXTENSIONS, RESOURCES_INSTRUMENTATION_NAME, RESOURCES_INSTRUMENTATION_VERSION, SCRIPT_EXTENSIONS, } from './instrumentation.consts';
|
|
3
3
|
import { CoralogixEventType, PerformanceTypes } from '../types';
|
|
4
4
|
import { CORALOGIX_LOGS_URL_SUFFIX, CoralogixAttributes, MAX_INTERACTION_ELEMENT_SIZE, } from '../constants';
|
|
5
|
-
import { supportedPerformanceTypes, valueEndWithOrInclude } from '../utils';
|
|
5
|
+
import { deepClone, supportedPerformanceTypes, valueEndWithOrInclude, } from '../utils';
|
|
6
6
|
import { resourceInitiatorTypeIs } from './instrumentation.helper';
|
|
7
7
|
import { ResourceInitiatorTypes } from './instrumentation.model';
|
|
8
8
|
import { getSdkConfig } from '../helpers';
|
|
@@ -100,14 +100,14 @@ export class CoralogixResourcesInstrumentation extends InstrumentationBase {
|
|
|
100
100
|
initiatorType = ResourceInitiatorTypes.Media;
|
|
101
101
|
break;
|
|
102
102
|
}
|
|
103
|
-
return Object.assign(Object.assign({},
|
|
103
|
+
return Object.assign(Object.assign({}, deepClone(resource)), { initiatorType });
|
|
104
104
|
}
|
|
105
105
|
createSpanFromResource(entry) {
|
|
106
106
|
var _a;
|
|
107
107
|
const resourceSpan = this.tracer.startSpan(RESOURCES_INSTRUMENTATION_NAME);
|
|
108
108
|
resourceSpan.setAttribute(CoralogixAttributes.TIMESTAMP, Date.now());
|
|
109
109
|
resourceSpan.setAttribute(CoralogixAttributes.EVENT_TYPE, CoralogixEventType.RESOURCES);
|
|
110
|
-
const newEntry = Object.assign(Object.assign({},
|
|
110
|
+
const newEntry = Object.assign(Object.assign({}, deepClone(entry)), { name: (_a = entry.name) === null || _a === void 0 ? void 0 : _a.slice(0, MAX_INTERACTION_ELEMENT_SIZE) });
|
|
111
111
|
resourceSpan.setAttribute(RESOURCES_INSTRUMENTATION_NAME, JSON.stringify(newEntry));
|
|
112
112
|
resourceSpan.end();
|
|
113
113
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CoralogixResourcesInstrumentation.js","sourceRoot":"","sources":["../../../../../libs/browser/src/instrumentations/CoralogixResourcesInstrumentation.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,GAEpB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,cAAc,EACd,cAAc,EACd,eAAe,EACf,SAAS,EACT,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,8BAA8B,EAC9B,iCAAiC,EACjC,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAEhE,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EACnB,4BAA4B,GAC7B,MAAM,cAAc,CAAC;AACtB,OAAO,
|
|
1
|
+
{"version":3,"file":"CoralogixResourcesInstrumentation.js","sourceRoot":"","sources":["../../../../../libs/browser/src/instrumentations/CoralogixResourcesInstrumentation.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,13 +4,11 @@ export declare class CoralogixWebVitalsInstrumentation extends InstrumentationBa
|
|
|
4
4
|
private metrics;
|
|
5
5
|
private loadingPageObserver;
|
|
6
6
|
private totalBLockingTimeObserver;
|
|
7
|
-
private totalBlockingTimeListAfterPageLoaded;
|
|
8
7
|
constructor(config: CoralogixWebVitalsInstrumentationConfig);
|
|
9
8
|
private registerToCoreWebVitalMetrics;
|
|
10
9
|
private registerToCalculatedWebVitalMetrics;
|
|
11
10
|
private onReport;
|
|
12
11
|
private calculateLoadingPageTime;
|
|
13
|
-
private calculateTotalBlockingTimeAfterLoadPage;
|
|
14
12
|
private calculateAllTotalBlockingTime;
|
|
15
13
|
enable(): void;
|
|
16
14
|
disable(): void;
|
|
@@ -8,7 +8,6 @@ import { calculateTotalBlockingTime, generateWebVitalUniqueID, getCircularReplac
|
|
|
8
8
|
export class CoralogixWebVitalsInstrumentation extends InstrumentationBase {
|
|
9
9
|
constructor(config) {
|
|
10
10
|
super(WEB_VITALS_INSTRUMENTATION_NAME, WEB_VITALS_INSTRUMENTATION_VERSION, config);
|
|
11
|
-
this.totalBlockingTimeListAfterPageLoaded = [];
|
|
12
11
|
this.metrics = !isEmpty(config === null || config === void 0 ? void 0 : config.metrics)
|
|
13
12
|
? config.metrics
|
|
14
13
|
: ALL_WEB_VITALS_METRICS;
|
|
@@ -54,17 +53,18 @@ export class CoralogixWebVitalsInstrumentation extends InstrumentationBase {
|
|
|
54
53
|
}
|
|
55
54
|
}
|
|
56
55
|
registerToCalculatedWebVitalMetrics() {
|
|
57
|
-
if (
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
56
|
+
if (supportedPerformanceTypes[PerformanceTypes.LongTask]) {
|
|
57
|
+
if (this.metrics.tbt) {
|
|
58
|
+
this.calculateAllTotalBlockingTime();
|
|
59
|
+
}
|
|
61
60
|
}
|
|
62
61
|
else {
|
|
63
62
|
console.warn('Coralogix Browser SDK - browser doesnt support TBT events');
|
|
64
63
|
}
|
|
65
|
-
if (
|
|
66
|
-
|
|
67
|
-
|
|
64
|
+
if (supportedPerformanceTypes[PerformanceTypes.Navigation]) {
|
|
65
|
+
if (this.metrics.lt) {
|
|
66
|
+
this.calculateLoadingPageTime();
|
|
67
|
+
}
|
|
68
68
|
}
|
|
69
69
|
else {
|
|
70
70
|
console.warn('Coralogix Browser SDK - browser doesnt support navigation events');
|
|
@@ -90,44 +90,30 @@ export class CoralogixWebVitalsInstrumentation extends InstrumentationBase {
|
|
|
90
90
|
webVitalsSpan.end();
|
|
91
91
|
}
|
|
92
92
|
calculateLoadingPageTime() {
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
};
|
|
108
|
-
});
|
|
109
|
-
this.onReport(loadTimeMetric);
|
|
93
|
+
this.loadingPageObserver = new PerformanceObserver((list) => {
|
|
94
|
+
let loadTimeMetric = {};
|
|
95
|
+
// @ts-ignore
|
|
96
|
+
list.getEntries().forEach((entry) => {
|
|
97
|
+
const { duration, type, name } = entry;
|
|
98
|
+
loadTimeMetric = {
|
|
99
|
+
//@ts-ignore
|
|
100
|
+
name: 'LT',
|
|
101
|
+
id: generateWebVitalUniqueID(),
|
|
102
|
+
value: duration,
|
|
103
|
+
url: name,
|
|
104
|
+
//@ts-ignore
|
|
105
|
+
navigationType: type,
|
|
106
|
+
};
|
|
110
107
|
});
|
|
111
|
-
this.
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
const tbtMetric = {
|
|
118
|
-
//@ts-ignore
|
|
119
|
-
name: 'TBT_AFTER_PAGE_LOADED',
|
|
120
|
-
id: generateWebVitalUniqueID(),
|
|
121
|
-
rating: rateForTBTMetricValue(totalBlockingTime),
|
|
122
|
-
value: totalBlockingTime,
|
|
123
|
-
};
|
|
124
|
-
this.onReport(tbtMetric);
|
|
125
|
-
}, { once: true });
|
|
108
|
+
this.onReport(loadTimeMetric);
|
|
109
|
+
});
|
|
110
|
+
this.loadingPageObserver.observe({
|
|
111
|
+
type: PerformanceTypes.Navigation,
|
|
112
|
+
buffered: true,
|
|
113
|
+
});
|
|
126
114
|
}
|
|
127
115
|
calculateAllTotalBlockingTime() {
|
|
128
116
|
this.totalBLockingTimeObserver = new PerformanceObserver((list) => {
|
|
129
|
-
this.totalBlockingTimeListAfterPageLoaded =
|
|
130
|
-
this.totalBlockingTimeListAfterPageLoaded.concat(list.getEntries());
|
|
131
117
|
const totalBlockingTime = calculateTotalBlockingTime(list.getEntries());
|
|
132
118
|
const tbtMetric = {
|
|
133
119
|
//@ts-ignore
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CoralogixWebVitalsInstrumentation.js","sourceRoot":"","sources":["../../../../../libs/browser/src/instrumentations/CoralogixWebVitalsInstrumentation.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,GAEpB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAOL,KAAK,EACL,KAAK,EACL,KAAK,EACL,KAAK,EACL,KAAK,EACL,MAAM,GAEP,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAChE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EACL,sBAAsB,EACtB,+BAA+B,EAC/B,kCAAkC,GACnC,MAAM,0BAA0B,CAAC;AAMlC,OAAO,EACL,0BAA0B,EAC1B,wBAAwB,EACxB,mBAAmB,EACnB,qBAAqB,EACrB,yBAAyB,GAC1B,MAAM,UAAU,CAAC;AAElB,MAAM,OAAO,iCAAkC,SAAQ,mBAAmB;
|
|
1
|
+
{"version":3,"file":"CoralogixWebVitalsInstrumentation.js","sourceRoot":"","sources":["../../../../../libs/browser/src/instrumentations/CoralogixWebVitalsInstrumentation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,21 +1,22 @@
|
|
|
1
1
|
export class UrlBasedLabelProvider {
|
|
2
2
|
constructor(config) {
|
|
3
3
|
const { urlPatterns, defaultLabels, urlType } = config;
|
|
4
|
+
const compiledRegexps = urlPatterns.map(({ regexps }) => regexps.map((regexp) => new RegExp(regexp)));
|
|
4
5
|
this.urlType = urlType;
|
|
5
6
|
this.providerFunc = (url, _) => {
|
|
6
|
-
|
|
7
|
-
for (const
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
7
|
+
let providerLabels = {};
|
|
8
|
+
outerLoop: for (const [index, compiledRegex,] of compiledRegexps.entries()) {
|
|
9
|
+
const { labels } = urlPatterns[index];
|
|
10
|
+
if (compiledRegex.some((regexp) => regexp.test(url))) {
|
|
11
|
+
providerLabels = Object.assign(Object.assign({}, providerLabels), labels);
|
|
12
|
+
break outerLoop;
|
|
12
13
|
}
|
|
13
14
|
}
|
|
14
15
|
const shouldAddDefaultLabels = !Object.keys(providerLabels).length &&
|
|
15
16
|
defaultLabels &&
|
|
16
17
|
Object.keys(defaultLabels).length;
|
|
17
18
|
if (shouldAddDefaultLabels) {
|
|
18
|
-
Object.assign(providerLabels, defaultLabels);
|
|
19
|
+
providerLabels = Object.assign(Object.assign({}, providerLabels), defaultLabels);
|
|
19
20
|
}
|
|
20
21
|
return providerLabels;
|
|
21
22
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"url-based-label-provider.js","sourceRoot":"","sources":["../../../../../libs/browser/src/label-providers/url-based-label-provider.ts"],"names":[],"mappings":"AAmBA,MAAM,OAAO,qBAAqB;IAIhC,YAAY,MAAmC;QAC7C,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"url-based-label-provider.js","sourceRoot":"","sources":["../../../../../libs/browser/src/label-providers/url-based-label-provider.ts"],"names":[],"mappings":"AAmBA,MAAM,OAAO,qBAAqB;IAIhC,YAAY,MAAmC;QAC7C,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;QACvD,MAAM,eAAe,GAAe,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAClE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAc,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CACpD,CAAC;QAEF,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,CAAC,GAAW,EAAE,CAAa,EAAE,EAAE;YACjD,IAAI,cAAc,GAAuB,EAAE,CAAC;YAE5C,SAAS,EAAE,KAAK,MAAM,CACpB,KAAK,EACL,aAAa,EACd,IAAI,eAAe,CAAC,OAAO,EAAE,EAAE;gBAC9B,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;gBACtC,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE;oBACpD,cAAc,mCAAQ,cAAc,GAAK,MAAM,CAAE,CAAC;oBAClD,MAAM,SAAS,CAAC;iBACjB;aACF;YAED,MAAM,sBAAsB,GAC1B,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM;gBACnC,aAAa;gBACb,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC;YAEpC,IAAI,sBAAsB,EAAE;gBAC1B,cAAc,mCAAQ,cAAc,GAAK,aAAa,CAAE,CAAC;aAC1D;YAED,OAAO,cAAc,CAAC;QACxB,CAAC,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -4,3 +4,5 @@ export declare const SESSION_RECORDING_DEFAULT_ERROR_MESSAGE: string;
|
|
|
4
4
|
export declare const SESSION_RECORDING_NETWORK_ERR0R_MESSAGE: string;
|
|
5
5
|
export declare const BATCH_TIME_DELAY: number;
|
|
6
6
|
export declare const SESSION_RECORDING_POSTFIX_URL = "browser/alpha/sessionrecording";
|
|
7
|
+
export declare const SESSION_KEY: string;
|
|
8
|
+
export declare const PREV_SESSION_KEY: string;
|
|
@@ -6,4 +6,6 @@ export const SESSION_RECORDING_DEFAULT_ERROR_MESSAGE = 'Coralogix Browser SDK -
|
|
|
6
6
|
export const SESSION_RECORDING_NETWORK_ERR0R_MESSAGE = 'Coralogix Browser SDK - Error while sending record';
|
|
7
7
|
export const BATCH_TIME_DELAY = 1000;
|
|
8
8
|
export const SESSION_RECORDING_POSTFIX_URL = 'browser/alpha/sessionrecording';
|
|
9
|
+
export const SESSION_KEY = 'rum_session';
|
|
10
|
+
export const PREV_SESSION_KEY = 'rum_prev_session';
|
|
9
11
|
//# sourceMappingURL=session.consts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.consts.js","sourceRoot":"","sources":["../../../../../libs/browser/src/session/session.consts.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,iBAAiB,GAAW,KAAM,CAAC,CAAC,KAAK;AAEtD,MAAM,CAAC,MAAM,iCAAiC,GAA2B;IACvE,kBAAkB,EAAE,MAAM;CAC3B,CAAC;AAEF,MAAM,CAAC,MAAM,uCAAuC,GAClD,qEAAqE,CAAC;AAExE,MAAM,CAAC,MAAM,uCAAuC,GAClD,oDAAoD,CAAC;AAEvD,MAAM,CAAC,MAAM,gBAAgB,GAAW,IAAI,CAAC;AAE7C,MAAM,CAAC,MAAM,6BAA6B,GAAG,gCAAgC,
|
|
1
|
+
{"version":3,"file":"session.consts.js","sourceRoot":"","sources":["../../../../../libs/browser/src/session/session.consts.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,iBAAiB,GAAW,KAAM,CAAC,CAAC,KAAK;AAEtD,MAAM,CAAC,MAAM,iCAAiC,GAA2B;IACvE,kBAAkB,EAAE,MAAM;CAC3B,CAAC;AAEF,MAAM,CAAC,MAAM,uCAAuC,GAClD,qEAAqE,CAAC;AAExE,MAAM,CAAC,MAAM,uCAAuC,GAClD,oDAAoD,CAAC;AAEvD,MAAM,CAAC,MAAM,gBAAgB,GAAW,IAAI,CAAC;AAE7C,MAAM,CAAC,MAAM,6BAA6B,GAAG,gCAAgC,CAAC;AAE9E,MAAM,CAAC,MAAM,WAAW,GAAW,aAAa,CAAC;AACjD,MAAM,CAAC,MAAM,gBAAgB,GAAW,kBAAkB,CAAC"}
|
|
@@ -69,6 +69,8 @@ export interface SessionRecordingMetadata {
|
|
|
69
69
|
}
|
|
70
70
|
export type SessionRecordingWorkerEvent = 'compressRecordData' | 'splitRecordData' | 'sendRecordData';
|
|
71
71
|
export interface SessionRecordingWorkerData {
|
|
72
|
+
sessionId: string;
|
|
73
|
+
sessionCreationDate: number;
|
|
72
74
|
gzipBlob?: Blob;
|
|
73
75
|
chunkIndex?: number;
|
|
74
76
|
totalChunks?: number;
|
|
@@ -1,17 +1,19 @@
|
|
|
1
1
|
import { Session } from '../types';
|
|
2
2
|
import { SessionRecordingConfig } from './session.model';
|
|
3
3
|
export declare class SessionManager {
|
|
4
|
-
private readonly sessionKey;
|
|
5
4
|
private idle;
|
|
6
5
|
private sessionRecorder;
|
|
7
6
|
private activeSession;
|
|
7
|
+
private sessionRecorderConfig;
|
|
8
8
|
constructor(recordConfig?: SessionRecordingConfig);
|
|
9
9
|
getSessionKey(): string;
|
|
10
10
|
getActiveSession(): Session;
|
|
11
11
|
start(): void;
|
|
12
12
|
stop(): void;
|
|
13
|
+
getPrevSession(): Session;
|
|
13
14
|
getSession(): Session;
|
|
15
|
+
private clearSessionWhenIdle;
|
|
14
16
|
private initIdle;
|
|
15
17
|
private clearSession;
|
|
16
|
-
setSession(sessionId?: string): Session;
|
|
18
|
+
setSession(afterIdle?: boolean, sessionId?: string): Session;
|
|
17
19
|
}
|