@multiplayer-app/session-recorder-react-native 1.3.22 → 1.3.32
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/README.md +22 -13
- package/lib/module/config/defaults.js +2 -2
- package/lib/module/config/defaults.js.map +1 -1
- package/lib/module/config/session-recorder.js.map +1 -1
- package/lib/module/otel/CrashBufferSpanProcessor.js +14 -13
- package/lib/module/otel/CrashBufferSpanProcessor.js.map +1 -1
- package/lib/module/otel/index.js +93 -71
- package/lib/module/otel/index.js.map +1 -1
- package/lib/module/recorder/index.js +1 -1
- package/lib/module/recorder/index.js.map +1 -1
- package/lib/module/services/api.service.js.map +1 -1
- package/lib/module/services/crashBuffer.service.js +51 -19
- package/lib/module/services/crashBuffer.service.js.map +1 -1
- package/lib/module/services/socket.service.js +2 -2
- package/lib/module/services/socket.service.js.map +1 -1
- package/lib/module/session-recorder.js +29 -78
- package/lib/module/session-recorder.js.map +1 -1
- package/lib/module/types/session-recorder.js.map +1 -1
- package/lib/module/utils/rrweb-events.js +1 -1
- package/lib/module/utils/rrweb-events.js.map +1 -1
- package/lib/typescript/src/config/defaults.d.ts.map +1 -1
- package/lib/typescript/src/config/session-recorder.d.ts.map +1 -1
- package/lib/typescript/src/otel/CrashBufferSpanProcessor.d.ts +3 -4
- package/lib/typescript/src/otel/CrashBufferSpanProcessor.d.ts.map +1 -1
- package/lib/typescript/src/otel/index.d.ts +2 -5
- package/lib/typescript/src/otel/index.d.ts.map +1 -1
- package/lib/typescript/src/services/api.service.d.ts +2 -1
- package/lib/typescript/src/services/api.service.d.ts.map +1 -1
- package/lib/typescript/src/services/crashBuffer.service.d.ts +4 -23
- package/lib/typescript/src/services/crashBuffer.service.d.ts.map +1 -1
- package/lib/typescript/src/services/socket.service.d.ts +4 -1
- package/lib/typescript/src/services/socket.service.d.ts.map +1 -1
- package/lib/typescript/src/session-recorder.d.ts +0 -3
- package/lib/typescript/src/session-recorder.d.ts.map +1 -1
- package/lib/typescript/src/types/session-recorder.d.ts +6 -13
- package/lib/typescript/src/types/session-recorder.d.ts.map +1 -1
- package/lib/typescript/src/utils/rrweb-events.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/config/defaults.ts +29 -29
- package/src/config/session-recorder.ts +8 -2
- package/src/otel/CrashBufferSpanProcessor.ts +17 -24
- package/src/otel/index.ts +124 -76
- package/src/recorder/index.ts +1 -1
- package/src/services/api.service.ts +2 -1
- package/src/services/crashBuffer.service.ts +73 -31
- package/src/services/socket.service.ts +5 -2
- package/src/session-recorder.ts +43 -98
- package/src/types/session-recorder.ts +15 -18
- package/src/utils/rrweb-events.ts +3 -3
|
@@ -10,7 +10,6 @@ export declare class TracerReactNativeSDK {
|
|
|
10
10
|
private sessionId;
|
|
11
11
|
private idGenerator?;
|
|
12
12
|
private exporter?;
|
|
13
|
-
private batchSpanProcessor?;
|
|
14
13
|
private globalErrorHandlerRegistered;
|
|
15
14
|
private crashBuffer?;
|
|
16
15
|
constructor();
|
|
@@ -18,19 +17,17 @@ export declare class TracerReactNativeSDK {
|
|
|
18
17
|
init(options: TracerReactNativeConfig): void;
|
|
19
18
|
setCrashBuffer(crashBuffer: CrashBufferService | undefined, windowMs?: number): void;
|
|
20
19
|
exportTraces(spans: ReadableSpan[]): Promise<ExportResult | undefined | void>;
|
|
21
|
-
private _getSpanSessionIdProcessor;
|
|
22
20
|
start(sessionId: string, sessionType: SessionType): void;
|
|
23
21
|
stop(): void;
|
|
24
22
|
setApiKey(apiKey: string): void;
|
|
25
|
-
setSessionId(sessionId: string, sessionType: SessionType): void;
|
|
26
|
-
shutdown(): Promise<void>;
|
|
27
23
|
/**
|
|
28
24
|
* Capture an exception as an error span/event.
|
|
29
25
|
* If there is an active span, the exception will be recorded on it.
|
|
30
26
|
* Otherwise, a short-lived span will be created to hold the exception event.
|
|
31
27
|
*/
|
|
32
28
|
captureException(error: Error, errorInfo?: Record<string, any>): void;
|
|
33
|
-
private
|
|
29
|
+
private _getSpanSessionIdProcessor;
|
|
34
30
|
private _registerGlobalErrorHandlers;
|
|
31
|
+
private static _toReadableSpanLike;
|
|
35
32
|
}
|
|
36
33
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/otel/index.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,YAAY,EAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/otel/index.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,YAAY,EAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAEL,KAAK,YAAY,EAClB,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EACL,WAAW,EAOZ,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAMxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAOrE,qBAAa,oBAAoB;IAC/B,QAAQ,SAAM;IACd,OAAO,CAAC,cAAc,CAAC,CAAoB;IAC3C,OAAO,CAAC,MAAM,CAAC,CAA0B;IAEzC,OAAO,CAAC,SAAS,CAAM;IACvB,OAAO,CAAC,WAAW,CAAC,CAA6B;IACjD,OAAO,CAAC,QAAQ,CAAC,CAAsC;IACvD,OAAO,CAAC,4BAA4B,CAAS;IAC7C,OAAO,CAAC,WAAW,CAAC,CAAqB;;IAIzC,OAAO,CAAC,aAAa;IAarB,IAAI,CAAC,OAAO,EAAE,uBAAuB,GAAG,IAAI;IAqD5C,cAAc,CACZ,WAAW,EAAE,kBAAkB,GAAG,SAAS,EAC3C,QAAQ,CAAC,EAAE,MAAM,GAChB,IAAI;IAWD,YAAY,CAChB,KAAK,EAAE,YAAY,EAAE,GACpB,OAAO,CAAC,YAAY,GAAG,SAAS,GAAG,IAAI,CAAC;IAmB3C,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,GAAG,IAAI;IAUxD,IAAI,IAAI,IAAI;IAUZ,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAU/B;;;;OAIG;IACH,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAKrE,OAAO,CAAC,0BAA0B;IAalC,OAAO,CAAC,4BAA4B;IA6BpC,OAAO,CAAC,MAAM,CAAC,mBAAmB;CAsEnC"}
|
|
@@ -47,7 +47,8 @@ export declare class ApiService {
|
|
|
47
47
|
*/
|
|
48
48
|
createErrorSession(request: CreateErrorSpanSessionRequest, signal?: AbortSignal): Promise<any>;
|
|
49
49
|
updateSessionAttributes(sessionId: string, requestBody: {
|
|
50
|
-
|
|
50
|
+
startedAt?: string;
|
|
51
|
+
stoppedAt?: string;
|
|
51
52
|
userAttributes?: IUserAttributes;
|
|
52
53
|
sessionAttributes?: ISessionAttributes;
|
|
53
54
|
resourceAttributes?: IResourceAttributes;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.service.d.ts","sourceRoot":"","sources":["../../../../src/services/api.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAElD,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,kBAAkB,CAAC;IACvC,kBAAkB,CAAC,EAAE,mBAAmB,CAAC;IACzC,cAAc,CAAC,EAAE,eAAe,CAAC;IACjC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACvC,IAAI,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC1C;AAED,MAAM,WAAW,kBAAkB;IACjC,iBAAiB,CAAC,EAAE,kBAAkB,CAAC;IACvC,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,yBAAyB;IACxC,iBAAiB,CAAC,EAAE,kBAAkB,CAAC;IACvC,kBAAkB,CAAC,EAAE,mBAAmB,CAAC;IACzC,cAAc,CAAC,EAAE,eAAe,CAAC;CAClC;AAED,MAAM,WAAW,6BAA6B;IAC5C,IAAI,EAAE,GAAG,CAAC;CACX;AAED,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAC,CAAmB;IAClC,OAAO,CAAC,OAAO,CAAyC;;IAUxD,IAAI,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAUpC;;;OAGG;IACI,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,gBAAgB,CAAC;IAMtD;;;OAGG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAM/B;;;;OAIG;IACG,kBAAkB,CACtB,OAAO,EAAE,6BAA6B,EACtC,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,GAAG,CAAC;IAST,uBAAuB,CAC3B,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE;QACX,
|
|
1
|
+
{"version":3,"file":"api.service.d.ts","sourceRoot":"","sources":["../../../../src/services/api.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,18 +1,4 @@
|
|
|
1
|
-
import type { CrashBufferEventMap, CrashBufferEventName, CrashBuffer } from '@multiplayer-app/session-recorder-common';
|
|
2
|
-
export type CrashBufferSnapshot = {
|
|
3
|
-
rrwebEvents: Array<{
|
|
4
|
-
ts: number;
|
|
5
|
-
event: any;
|
|
6
|
-
}>;
|
|
7
|
-
otelSpans: Array<{
|
|
8
|
-
ts: number;
|
|
9
|
-
span: any;
|
|
10
|
-
}>;
|
|
11
|
-
attrs: any | null;
|
|
12
|
-
windowMs: number;
|
|
13
|
-
fromTs: number;
|
|
14
|
-
toTs: number;
|
|
15
|
-
};
|
|
1
|
+
import type { CrashBufferEventMap, CrashBufferEventName, CrashBuffer, CrashBufferRrwebEventPayload, CrashBufferOtelSpanBatchPayload, CrashBufferSnapshot } from '@multiplayer-app/session-recorder-common';
|
|
16
2
|
export declare class CrashBufferService implements CrashBuffer {
|
|
17
3
|
private static instance;
|
|
18
4
|
private index;
|
|
@@ -20,19 +6,14 @@ export declare class CrashBufferService implements CrashBuffer {
|
|
|
20
6
|
private lastPruneAt;
|
|
21
7
|
private opChain;
|
|
22
8
|
private defaultWindowMs;
|
|
9
|
+
private lastSeenEventTs;
|
|
23
10
|
private listeners;
|
|
24
11
|
static getInstance(): CrashBufferService;
|
|
25
12
|
private enqueue;
|
|
26
13
|
private ensureIndexLoaded;
|
|
27
14
|
setAttrs(attrs: any): Promise<void>;
|
|
28
|
-
appendEvent(payload:
|
|
29
|
-
|
|
30
|
-
event: any;
|
|
31
|
-
}, windowMs?: number): Promise<void>;
|
|
32
|
-
appendSpans(payload: Array<{
|
|
33
|
-
ts: number;
|
|
34
|
-
span: any;
|
|
35
|
-
}>, windowMs?: number): Promise<void>;
|
|
15
|
+
appendEvent(payload: CrashBufferRrwebEventPayload, windowMs?: number): Promise<void>;
|
|
16
|
+
appendSpans(payload: CrashBufferOtelSpanBatchPayload, windowMs?: number): Promise<void>;
|
|
36
17
|
setDefaultWindowMs(windowMs: number): void;
|
|
37
18
|
on<E extends CrashBufferEventName>(event: E, listener: (payload: CrashBufferEventMap[E]) => void): () => void;
|
|
38
19
|
off<E extends CrashBufferEventName>(event: E, listener: (payload: CrashBufferEventMap[E]) => void): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crashBuffer.service.d.ts","sourceRoot":"","sources":["../../../../src/services/crashBuffer.service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"crashBuffer.service.d.ts","sourceRoot":"","sources":["../../../../src/services/crashBuffer.service.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,mBAAmB,EACnB,oBAAoB,EAEpB,WAAW,EACX,4BAA4B,EAE5B,+BAA+B,EAC/B,mBAAmB,EACpB,MAAM,0CAA0C,CAAC;AAuClD,qBAAa,kBAAmB,YAAW,WAAW;IACpD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAmC;IAE1D,OAAO,CAAC,KAAK,CAAoB;IACjC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,OAAO,CAAmC;IAClD,OAAO,CAAC,eAAe,CAA2B;IAClD,OAAO,CAAC,eAAe,CAAa;IAEpC,OAAO,CAAC,SAAS,CAGb;IAEJ,MAAM,CAAC,WAAW,IAAI,kBAAkB;IAOxC,OAAO,CAAC,OAAO;YAUD,iBAAiB;IAiBzB,QAAQ,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAWnC,WAAW,CACf,OAAO,EAAE,4BAA4B,EACrC,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC;IAwBV,WAAW,CACf,OAAO,EAAE,+BAA+B,EACxC,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC;IAmChB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAI1C,EAAE,CAAC,CAAC,SAAS,oBAAoB,EAC/B,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,KAAK,IAAI,GAClD,MAAM,IAAI;IAOb,GAAG,CAAC,CAAC,SAAS,oBAAoB,EAChC,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,KAAK,IAAI,GAClD,IAAI;IAOP,OAAO,CAAC,KAAK;YAeC,YAAY;IA0B1B,OAAO,CAAC,SAAS;IAQX,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB/C,QAAQ,CACZ,QAAQ,CAAC,EAAE,MAAM,EACjB,GAAG,GAAE,MAAmB,GACvB,OAAO,CAAC,mBAAmB,CAAC;IAoFzB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAc7B"}
|
|
@@ -34,7 +34,10 @@ export declare class SocketService extends Observable<SocketServiceEvents> {
|
|
|
34
34
|
send(event: any): void;
|
|
35
35
|
subscribeToSession(session: ISession): void;
|
|
36
36
|
unsubscribeFromSession(stopSession?: boolean): void;
|
|
37
|
-
setUser(
|
|
37
|
+
setUser(data: {
|
|
38
|
+
userAttributes: IUserAttributes | null;
|
|
39
|
+
clientId?: string;
|
|
40
|
+
}): void;
|
|
38
41
|
close(): Promise<void>;
|
|
39
42
|
}
|
|
40
43
|
//# sourceMappingURL=socket.service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"socket.service.d.ts","sourceRoot":"","sources":["../../../../src/services/socket.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAI7C,OAAO,EAEL,oBAAoB,EACpB,qBAAqB,EAIrB,8BAA8B,EAC9B,6BAA6B,EAE7B,yBAAyB,EAC1B,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,KAAK,QAAQ,EACb,KAAK,eAAe,EAErB,MAAM,0CAA0C,CAAC;AAIlD,MAAM,MAAM,mBAAmB,GAC3B,OAAO,qBAAqB,GAC5B,OAAO,oBAAoB,GAC3B,OAAO,8BAA8B,GACrC,OAAO,6BAA6B,GACpC,OAAO,yBAAyB,CAAC;AAErC,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,aAAc,SAAQ,UAAU,CAAC,mBAAmB,CAAC;IAChE,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,KAAK,CAAa;IAC1B,OAAO,CAAC,YAAY,CAAkB;IACtC,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,OAAO,CAAuB;;IAWtC;;;OAGG;IACI,IAAI,CAAC,MAAM,EAAE,oBAAoB,GAAG,IAAI;IAc/C;;;OAGG;IACI,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,oBAAoB,CAAC,GAAG,IAAI;IA0BjE,OAAO,CAAC,eAAe;IAyDvB,OAAO,CAAC,yBAAyB;IAMjC,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,UAAU;IAWX,IAAI,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI;IAItB,kBAAkB,CAAC,OAAO,EAAE,QAAQ,GAAG,IAAI;IAe3C,sBAAsB,CAAC,WAAW,CAAC,EAAE,OAAO;IAW5C,OAAO,CAAC,cAAc,EAAE,eAAe,GAAG,IAAI,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"socket.service.d.ts","sourceRoot":"","sources":["../../../../src/services/socket.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAI7C,OAAO,EAEL,oBAAoB,EACpB,qBAAqB,EAIrB,8BAA8B,EAC9B,6BAA6B,EAE7B,yBAAyB,EAC1B,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,KAAK,QAAQ,EACb,KAAK,eAAe,EAErB,MAAM,0CAA0C,CAAC;AAIlD,MAAM,MAAM,mBAAmB,GAC3B,OAAO,qBAAqB,GAC5B,OAAO,oBAAoB,GAC3B,OAAO,8BAA8B,GACrC,OAAO,6BAA6B,GACpC,OAAO,yBAAyB,CAAC;AAErC,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,aAAc,SAAQ,UAAU,CAAC,mBAAmB,CAAC;IAChE,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,KAAK,CAAa;IAC1B,OAAO,CAAC,YAAY,CAAkB;IACtC,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,OAAO,CAAuB;;IAWtC;;;OAGG;IACI,IAAI,CAAC,MAAM,EAAE,oBAAoB,GAAG,IAAI;IAc/C;;;OAGG;IACI,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,oBAAoB,CAAC,GAAG,IAAI;IA0BjE,OAAO,CAAC,eAAe;IAyDvB,OAAO,CAAC,yBAAyB;IAMjC,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,UAAU;IAWX,IAAI,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI;IAItB,kBAAkB,CAAC,OAAO,EAAE,QAAQ,GAAG,IAAI;IAe3C,sBAAsB,CAAC,WAAW,CAAC,EAAE,OAAO;IAW5C,OAAO,CAAC,IAAI,EAAE;QACnB,cAAc,EAAE,eAAe,GAAG,IAAI,CAAC;QACvC,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,GAAG,IAAI;IAID,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAiB9B"}
|
|
@@ -55,9 +55,6 @@ declare class SessionRecorder extends Observable<SessionRecorderEvents> implemen
|
|
|
55
55
|
* Capture an exception manually and send it as an error trace.
|
|
56
56
|
*/
|
|
57
57
|
captureException(error: unknown, errorInfo?: Record<string, any>): void;
|
|
58
|
-
flushBuffer(payload?: {
|
|
59
|
-
reason?: string;
|
|
60
|
-
}): Promise<any>;
|
|
61
58
|
private _flushBuffer;
|
|
62
59
|
private _createExceptionSession;
|
|
63
60
|
private _loadStoredSessionData;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-recorder.d.ts","sourceRoot":"","sources":["../../../src/session-recorder.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,KAAK,QAAQ,EACb,KAAK,eAAe,EACrB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAMlD,OAAO,EACL,YAAY,EACZ,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAC3B,KAAK,aAAa,EACnB,MAAM,SAAS,CAAC;AAwBjB,KAAK,qBAAqB,GAAG,cAAc,GAAG,MAAM,CAAC;AAErD,cAAM,eACJ,SAAQ,UAAU,CAAC,qBAAqB,CACxC,YAAW,gBAAgB,EAAE,aAAa;IAE1C,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,WAAW,CAAoB;IACvC,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,OAAO,CAA8B;IAC7C,OAAO,CAAC,SAAS,CAAgC;IACjD,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,YAAY,CAAoC;IACxD,OAAO,CAAC,iBAAiB,CAAkB;IAC3C,OAAO,CAAC,uBAAuB,CAAgC;IAG/D,OAAO,CAAC,cAAc,CAAS;IAC/B,IAAI,aAAa,IAAI,OAAO,CAE3B;IACD,IAAI,aAAa,CAAC,aAAa,EAAE,OAAO,EAEvC;IAGD,OAAO,CAAC,UAAU,CAAuB;IACzC,IAAI,SAAS,IAAI,MAAM,GAAG,IAAI,CAE7B;IACD,IAAI,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,EAKrC;IAED,OAAO,CAAC,YAAY,CAAmC;IACvD,IAAI,WAAW,IAAI,WAAW,CAE7B;IACD,IAAI,WAAW,CAAC,WAAW,EAAE,WAAW,EAGvC;IAED,IAAI,mBAAmB,IAAI,OAAO,CAEjC;IAED,OAAO,CAAC,aAAa,CAA6B;IAClD,IAAI,YAAY,IAAI,YAAY,GAAG,IAAI,CAEtC;IACD,IAAI,YAAY,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,EAS1C;IAED,OAAO,CAAC,QAAQ,CAAyB;IACzC,IAAI,OAAO,IAAI,QAAQ,GAAG,IAAI,CAE7B;IACD,IAAI,OAAO,CAAC,OAAO,EAAE,QAAQ,GAAG,IAAI,EAKnC;IAED,OAAO,CAAC,kBAAkB,CAAoC;IAC9D,IAAI,iBAAiB,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAE3C;IACD,IAAI,iBAAiB,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,EAE3D;IAED,OAAO,CAAC,eAAe,CAAgC;IACvD,IAAI,cAAc,IAAI,eAAe,GAAG,IAAI,CAE3C;IACD,IAAI,cAAc,CAAC,cAAc,EAAE,eAAe,GAAG,IAAI,EAExD;IACD;;OAEG;IACH,IAAW,KAAK,IAAI,MAAM,CAEzB;IAED,IAAW,KAAK,CAAC,CAAC,EAAE,MAAM,EAEzB;IACD,OAAO,CAAC,MAAM,CAAc;IAE5B;;OAEG;IACH,IAAW,0BAA0B,IAAI,GAAG,CAE3C;IAED,IAAW,MAAM,IAAI,sBAAsB,CAE1C;IACD;;OAEG;;IAQH;;OAEG;IACI,gBAAgB,CACrB,KAAK,EAAE,OAAO,EACd,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC9B,IAAI;
|
|
1
|
+
{"version":3,"file":"session-recorder.d.ts","sourceRoot":"","sources":["../../../src/session-recorder.ts"],"names":[],"mappings":"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"}
|
|
@@ -135,10 +135,10 @@ export interface SessionRecorderOptions {
|
|
|
135
135
|
enabled?: boolean;
|
|
136
136
|
};
|
|
137
137
|
/**
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
138
|
+
* @description
|
|
139
|
+
* If true, webSocket will be used to manage remote recording sessions.
|
|
140
|
+
* @default true
|
|
141
|
+
*/
|
|
142
142
|
useWebsocket?: boolean;
|
|
143
143
|
/**
|
|
144
144
|
* (Optional) Client-side crash buffer configuration.
|
|
@@ -146,9 +146,9 @@ export interface SessionRecorderOptions {
|
|
|
146
146
|
* even if the user did not start a manual/continuous recording.
|
|
147
147
|
*/
|
|
148
148
|
buffering?: {
|
|
149
|
-
/** Enable/disable buffering. @default
|
|
149
|
+
/** Enable/disable buffering. @default false */
|
|
150
150
|
enabled?: boolean;
|
|
151
|
-
/** Rolling window size (minutes). @default
|
|
151
|
+
/** Rolling window size (minutes). @default 0.5 */
|
|
152
152
|
windowMinutes?: number;
|
|
153
153
|
};
|
|
154
154
|
}
|
|
@@ -314,13 +314,6 @@ export interface ISessionRecorder {
|
|
|
314
314
|
* Capture an exception and send it as an error trace
|
|
315
315
|
*/
|
|
316
316
|
captureException(error: unknown, errorInfo?: Record<string, any>): void;
|
|
317
|
-
/**
|
|
318
|
-
* Flush the local crash buffer by creating a debug session and uploading buffered data.
|
|
319
|
-
* No-op if a live recording is currently active.
|
|
320
|
-
*/
|
|
321
|
-
flushBuffer(payload?: {
|
|
322
|
-
reason?: string;
|
|
323
|
-
}): Promise<any>;
|
|
324
317
|
}
|
|
325
318
|
/**
|
|
326
319
|
* Interface representing screen capture events
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-recorder.d.ts","sourceRoot":"","sources":["../../../../src/types/session-recorder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,
|
|
1
|
+
{"version":3,"file":"session-recorder.d.ts","sourceRoot":"","sources":["../../../../src/types/session-recorder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rrweb-events.d.ts","sourceRoot":"","sources":["../../../../src/utils/rrweb-events.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"rrweb-events.d.ts","sourceRoot":"","sources":["../../../../src/utils/rrweb-events.ts"],"names":[],"mappings":"AACA,OAAO,EAKL,KAAK,aAAa,EAClB,KAAK,oBAAoB,EAC1B,MAAM,cAAc,CAAC;AAGtB;;;;;;GAMG;AACH,wBAAgB,wBAAwB,IAAI,aAAa,CAcxD;AAED;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CACrC,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,YAAQ,EAC7B,aAAa,EAAE;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,EAClC,SAAS,CAAC,EAAE,MAAM,GACjB,aAAa,CA2Ff;AAED;;;;;;GAMG;AACH,wBAAgB,wCAAwC,CACtD,WAAW,EAAE,MAAM,EACnB,aAAa,GAAE,MAAc,EAC7B,SAAS,CAAC,EAAE,MAAM,GACjB,aAAa,CAqBf;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAC7B,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,YAAQ,EAC7B,MAAM,EAAE,MAAM,GACb,oBAAoB,CAatB;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,oBAAoB,EAC/B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,aAAa,EAAE;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,GACjC,oBAAoB,CAkEtB;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,MAAM,EACnB,UAAU,GAAE,MAAY,GACvB,MAAM,CAaR;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAQ9C"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@multiplayer-app/session-recorder-react-native",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.32",
|
|
4
4
|
"description": "Multiplayer Fullstack Session Recorder for React Native",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Multiplayer Software, Inc.",
|
|
@@ -108,7 +108,7 @@
|
|
|
108
108
|
"typescript": "^5.9.2"
|
|
109
109
|
},
|
|
110
110
|
"dependencies": {
|
|
111
|
-
"@multiplayer-app/session-recorder-common": "1.3.
|
|
111
|
+
"@multiplayer-app/session-recorder-common": "1.3.32",
|
|
112
112
|
"@opentelemetry/core": "2.0.1",
|
|
113
113
|
"@opentelemetry/exporter-trace-otlp-http": "0.203.0",
|
|
114
114
|
"@opentelemetry/instrumentation": "0.203.0",
|
package/src/config/defaults.ts
CHANGED
|
@@ -33,33 +33,33 @@ export const DEFAULT_MASKING_CONFIG: SessionRecorderConfigs['masking'] = {
|
|
|
33
33
|
};
|
|
34
34
|
|
|
35
35
|
export const DEFAULT_WIDGET_TEXT_CONFIG: SessionRecorderConfigs['widget']['textOverrides'] =
|
|
36
|
-
{
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
};
|
|
36
|
+
{
|
|
37
|
+
initialTitleWithContinuous: 'Encountered an issue?',
|
|
38
|
+
initialTitleWithoutContinuous: 'Encountered an issue?',
|
|
39
|
+
initialDescriptionWithContinuous:
|
|
40
|
+
'Record your session so we can see the problem and fix it faster.',
|
|
41
|
+
initialDescriptionWithoutContinuous:
|
|
42
|
+
'Record your session so we can see the problem and fix it faster.',
|
|
43
|
+
continuousRecordingLabel: 'Continuous recording',
|
|
44
|
+
startRecordingButtonText: 'Start recording',
|
|
45
|
+
finalTitle: 'Done recording?',
|
|
46
|
+
finalDescription:
|
|
47
|
+
'You can also add a quick note with extra context, expectations, or questions. Thank you!',
|
|
48
|
+
commentPlaceholder: 'Add a message...',
|
|
49
|
+
saveButtonText: 'Submit recording',
|
|
50
|
+
cancelButtonText: 'Cancel recording',
|
|
51
|
+
continuousOverlayTitle: 'Save time, skip the reproductions',
|
|
52
|
+
continuousOverlayDescription:
|
|
53
|
+
'We keep a rolling record of your recent activity. If something doesn’t work as expected, just save the recording and continue working. No need to worry about exceptions and errors - we automatically save recordings for those!',
|
|
54
|
+
saveLastSnapshotButtonText: 'Save recording',
|
|
55
|
+
submitDialogTitle: 'Save recording',
|
|
56
|
+
submitDialogSubtitle:
|
|
57
|
+
'This full-stack session recording will be saved directly to your selected Multiplayer project. All data is automatically correlated end-to-end.',
|
|
58
|
+
submitDialogCommentLabel: 'You can also add context, comments, or notes.',
|
|
59
|
+
submitDialogCommentPlaceholder: 'Add a message...',
|
|
60
|
+
submitDialogSubmitText: 'Save',
|
|
61
|
+
submitDialogCancelText: 'Cancel',
|
|
62
|
+
};
|
|
63
63
|
|
|
64
64
|
export const BASE_CONFIG: SessionRecorderConfigs = {
|
|
65
65
|
apiKey: '',
|
|
@@ -106,7 +106,7 @@ export const BASE_CONFIG: SessionRecorderConfigs = {
|
|
|
106
106
|
useWebsocket: true,
|
|
107
107
|
|
|
108
108
|
buffering: {
|
|
109
|
-
enabled:
|
|
110
|
-
windowMinutes:
|
|
109
|
+
enabled: false,
|
|
110
|
+
windowMinutes: 0.5,
|
|
111
111
|
},
|
|
112
112
|
};
|
|
@@ -87,8 +87,14 @@ export const getSessionRecorderConfig = (
|
|
|
87
87
|
useWebsocket: isValidBoolean(c.useWebsocket, BASE_CONFIG.useWebsocket),
|
|
88
88
|
|
|
89
89
|
buffering: {
|
|
90
|
-
enabled: isValidBoolean(
|
|
91
|
-
|
|
90
|
+
enabled: isValidBoolean(
|
|
91
|
+
c.buffering?.enabled,
|
|
92
|
+
BASE_CONFIG.buffering.enabled
|
|
93
|
+
),
|
|
94
|
+
windowMinutes: isValidNumber(
|
|
95
|
+
c.buffering?.windowMinutes,
|
|
96
|
+
BASE_CONFIG.buffering.windowMinutes
|
|
97
|
+
),
|
|
92
98
|
},
|
|
93
99
|
};
|
|
94
100
|
};
|
|
@@ -1,15 +1,11 @@
|
|
|
1
|
+
import { type Context } from '@opentelemetry/api';
|
|
1
2
|
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
import type { CrashBuffer } from '@multiplayer-app/session-recorder-common';
|
|
6
|
-
import { type Context, TraceFlags } from '@opentelemetry/api';
|
|
7
|
-
import type {
|
|
8
|
-
Span,
|
|
9
|
-
SpanProcessor,
|
|
10
|
-
BatchSpanProcessor,
|
|
11
|
-
ReadableSpan,
|
|
3
|
+
type ReadableSpan,
|
|
4
|
+
type SpanProcessor,
|
|
5
|
+
type Span,
|
|
12
6
|
} from '@opentelemetry/sdk-trace-base';
|
|
7
|
+
import { MULTIPLAYER_TRACE_SESSION_CACHE_PREFIX } from '@multiplayer-app/session-recorder-common';
|
|
8
|
+
import type { CrashBuffer } from '@multiplayer-app/session-recorder-common';
|
|
13
9
|
|
|
14
10
|
/**
|
|
15
11
|
* Implementation of the {@link SpanProcessor} that batches spans exported by
|
|
@@ -17,30 +13,29 @@ import type {
|
|
|
17
13
|
*/
|
|
18
14
|
export class CrashBufferSpanProcessor implements SpanProcessor {
|
|
19
15
|
constructor(
|
|
20
|
-
private readonly _exporter: BatchSpanProcessor,
|
|
21
16
|
private readonly _crashBuffer: CrashBuffer | undefined,
|
|
22
17
|
private readonly _serializeSpan: (span: ReadableSpan) => any
|
|
23
18
|
) {}
|
|
24
19
|
|
|
25
20
|
forceFlush(): Promise<void> {
|
|
26
|
-
return
|
|
21
|
+
return Promise.resolve();
|
|
27
22
|
}
|
|
28
23
|
|
|
29
24
|
onStart(_span: Span, _parentContext: Context): void {
|
|
30
|
-
return
|
|
25
|
+
return;
|
|
31
26
|
}
|
|
32
27
|
|
|
33
28
|
onEnd(span: ReadableSpan): void {
|
|
34
|
-
const
|
|
29
|
+
const _spanContext = span.spanContext();
|
|
35
30
|
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
31
|
+
const traceId = _spanContext.traceId;
|
|
32
|
+
|
|
33
|
+
// // Never buffer/export unsampled spans.
|
|
34
|
+
// if ((_spanContext.traceFlags & TraceFlags.SAMPLED) === 0) {
|
|
35
|
+
// return
|
|
36
|
+
// }
|
|
39
37
|
|
|
40
|
-
if (
|
|
41
|
-
traceId.startsWith(MULTIPLAYER_TRACE_SESSION_CACHE_PREFIX) ||
|
|
42
|
-
traceId.startsWith(MULTIPLAYER_TRACE_CONTINUOUS_SESSION_CACHE_PREFIX)
|
|
43
|
-
) {
|
|
38
|
+
if (traceId.startsWith(MULTIPLAYER_TRACE_SESSION_CACHE_PREFIX)) {
|
|
44
39
|
if (this._crashBuffer) {
|
|
45
40
|
this._crashBuffer.appendSpans([
|
|
46
41
|
{
|
|
@@ -51,11 +46,9 @@ export class CrashBufferSpanProcessor implements SpanProcessor {
|
|
|
51
46
|
}
|
|
52
47
|
return;
|
|
53
48
|
}
|
|
54
|
-
|
|
55
|
-
this._exporter.onEnd(span);
|
|
56
49
|
}
|
|
57
50
|
|
|
58
51
|
shutdown(): Promise<void> {
|
|
59
|
-
return
|
|
52
|
+
return Promise.resolve();
|
|
60
53
|
}
|
|
61
54
|
}
|