@multiplayer-app/session-recorder-react-native 1.3.21 → 1.3.23

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.
@@ -12,6 +12,7 @@ import { trace, SpanStatusCode, context } from '@opentelemetry/api';
12
12
  import { getPlatformAttributes } from "../utils/platform.js";
13
13
  import { WebTracerProvider } from '@opentelemetry/sdk-trace-web';
14
14
  import { CrashBufferSpanProcessor } from "./CrashBufferSpanProcessor.js";
15
+ const clientIdGenerator = SessionRecorderSdk.getIdGenerator(MULTIPLAYER_TRACE_CLIENT_ID_LENGTH);
15
16
  export class TracerReactNativeSDK {
16
17
  clientId = '';
17
18
  sessionId = '';
@@ -19,11 +20,13 @@ export class TracerReactNativeSDK {
19
20
  constructor() {}
20
21
  _setSessionId(sessionId, sessionType = SessionType.MANUAL) {
21
22
  this.sessionId = sessionId;
22
- this.idGenerator?.setSessionId(sessionId, sessionType, this.clientId);
23
+ if (!this.idGenerator) {
24
+ throw new Error('Id generator not initialized');
25
+ }
26
+ this.idGenerator.setSessionId(sessionId, sessionType, this.clientId);
23
27
  }
24
28
  init(options) {
25
29
  this.config = options;
26
- const clientIdGenerator = SessionRecorderSdk.getIdGenerator(MULTIPLAYER_TRACE_CLIENT_ID_LENGTH);
27
30
  this.clientId = clientIdGenerator();
28
31
  const {
29
32
  application,
@@ -31,6 +34,7 @@ export class TracerReactNativeSDK {
31
34
  environment
32
35
  } = this.config;
33
36
  this.idGenerator = new SessionRecorderIdGenerator();
37
+ this._setSessionId('', SessionType.SESSION_CACHE);
34
38
  this.exporter = new SessionRecorderBrowserTraceExporter({
35
39
  apiKey: options.apiKey,
36
40
  url: getExporterEndpoint(options.exporterEndpoint)
@@ -95,21 +99,13 @@ export class TracerReactNativeSDK {
95
99
  if (!this.tracerProvider) {
96
100
  throw new Error('Configuration not initialized. Call init() before start().');
97
101
  }
98
- this._setSessionId('');
102
+ this._setSessionId('', SessionType.SESSION_CACHE);
99
103
  }
100
104
  setApiKey(apiKey) {
101
105
  if (!this.exporter) {
102
106
  throw new Error('Configuration not initialized. Call init() before setApiKey().');
103
107
  }
104
- this.exporter.setApiKey?.(apiKey);
105
- }
106
- setSessionId(sessionId, sessionType) {
107
- this._setSessionId(sessionId, sessionType);
108
- }
109
-
110
- // Shutdown (React Native specific)
111
- shutdown() {
112
- return Promise.resolve();
108
+ this.exporter.setApiKey(apiKey);
113
109
  }
114
110
 
115
111
  /**
@@ -1 +1 @@
1
- {"version":3,"names":["resourceFromAttributes","W3CTraceContextPropagator","AlwaysOnSampler","BatchSpanProcessor","SemanticAttributes","registerInstrumentations","SessionType","SessionRecorderSdk","SessionRecorderIdGenerator","SessionRecorderBrowserTraceExporter","ATTR_MULTIPLAYER_SESSION_ID","MULTIPLAYER_TRACE_CLIENT_ID_LENGTH","getInstrumentations","getExporterEndpoint","trace","SpanStatusCode","context","getPlatformAttributes","WebTracerProvider","CrashBufferSpanProcessor","TracerReactNativeSDK","clientId","sessionId","globalErrorHandlerRegistered","constructor","_setSessionId","sessionType","MANUAL","idGenerator","setSessionId","init","options","config","clientIdGenerator","getIdGenerator","application","version","environment","exporter","apiKey","url","exporterEndpoint","batchSpanProcessor","tracerProvider","resource","SEMRESATTRS_SERVICE_NAME","SEMRESATTRS_SERVICE_VERSION","SEMRESATTRS_DEPLOYMENT_ENVIRONMENT","sampler","spanProcessors","_getSpanSessionIdProcessor","crashBuffer","serializeSpan","bind","register","propagator","instrumentations","_registerGlobalErrorHandlers","setCrashBuffer","windowMs","Number","isFinite","setDefaultWindowMs","exportTraces","spans","map","span","onEnd","Promise","resolve","Error","onStart","setAttribute","shutdown","forceFlush","start","stop","setApiKey","captureException","error","errorInfo","activeSpan","getSpan","active","_recordException","_ignored","tracer","getTracer","startSpan","name","end","recordException","setStatus","code","ERROR","message","stack","Object","entries","forEach","key","value","ErrorUtilsRef","global","ErrorUtils","setGlobalHandler","previous","getGlobalHandler","isFatal","err","String","_e"],"sourceRoot":"../../../src","sources":["otel/index.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["resourceFromAttributes","W3CTraceContextPropagator","AlwaysOnSampler","BatchSpanProcessor","SemanticAttributes","registerInstrumentations","SessionType","SessionRecorderSdk","SessionRecorderIdGenerator","SessionRecorderBrowserTraceExporter","ATTR_MULTIPLAYER_SESSION_ID","MULTIPLAYER_TRACE_CLIENT_ID_LENGTH","getInstrumentations","getExporterEndpoint","trace","SpanStatusCode","context","getPlatformAttributes","WebTracerProvider","CrashBufferSpanProcessor","clientIdGenerator","getIdGenerator","TracerReactNativeSDK","clientId","sessionId","globalErrorHandlerRegistered","constructor","_setSessionId","sessionType","MANUAL","idGenerator","Error","setSessionId","init","options","config","application","version","environment","SESSION_CACHE","exporter","apiKey","url","exporterEndpoint","batchSpanProcessor","tracerProvider","resource","SEMRESATTRS_SERVICE_NAME","SEMRESATTRS_SERVICE_VERSION","SEMRESATTRS_DEPLOYMENT_ENVIRONMENT","sampler","spanProcessors","_getSpanSessionIdProcessor","crashBuffer","serializeSpan","bind","register","propagator","instrumentations","_registerGlobalErrorHandlers","setCrashBuffer","windowMs","Number","isFinite","setDefaultWindowMs","exportTraces","spans","map","span","onEnd","Promise","resolve","onStart","setAttribute","shutdown","forceFlush","start","stop","setApiKey","captureException","error","errorInfo","activeSpan","getSpan","active","_recordException","_ignored","tracer","getTracer","startSpan","name","end","recordException","setStatus","code","ERROR","message","stack","Object","entries","forEach","key","value","ErrorUtilsRef","global","ErrorUtils","setGlobalHandler","previous","getGlobalHandler","isFatal","err","String","_e"],"sourceRoot":"../../../src","sources":["otel/index.ts"],"mappings":"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","ignoreList":[]}
@@ -22,8 +22,6 @@ export declare class TracerReactNativeSDK {
22
22
  start(sessionId: string, sessionType: SessionType): void;
23
23
  stop(): void;
24
24
  setApiKey(apiKey: string): void;
25
- setSessionId(sessionId: string, sessionType: SessionType): void;
26
- shutdown(): Promise<void>;
27
25
  /**
28
26
  * Capture an exception as an error span/event.
29
27
  * If there is an active span, the exception will be recorded on it.
@@ -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,EAGL,KAAK,YAAY,EAClB,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EACL,WAAW,EAMZ,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAOxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAGrE,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,kBAAkB,CAAC,CAAqB;IAChD,OAAO,CAAC,4BAA4B,CAAS;IAC7C,OAAO,CAAC,WAAW,CAAC,CAAqB;;IAIzC,OAAO,CAAC,aAAa;IAQrB,IAAI,CAAC,OAAO,EAAE,uBAAuB,GAAG,IAAI;IAkD5C,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;IAW3C,OAAO,CAAC,0BAA0B;IAalC,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,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,GAAG,IAAI;IAK/D,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAIzB;;;;OAIG;IACH,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAoBrE,OAAO,CAAC,gBAAgB;IAiBxB,OAAO,CAAC,4BAA4B;CA4BrC"}
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,EAGL,KAAK,YAAY,EAClB,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EACL,WAAW,EAMZ,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAOxD,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,kBAAkB,CAAC,CAAqB;IAChD,OAAO,CAAC,4BAA4B,CAAS;IAC7C,OAAO,CAAC,WAAW,CAAC,CAAqB;;IAIzC,OAAO,CAAC,aAAa;IAarB,IAAI,CAAC,OAAO,EAAE,uBAAuB,GAAG,IAAI;IAiD5C,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;IAW3C,OAAO,CAAC,0BAA0B;IAalC,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;IAoBrE,OAAO,CAAC,gBAAgB;IAiBxB,OAAO,CAAC,4BAA4B;CA4BrC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@multiplayer-app/session-recorder-react-native",
3
- "version": "1.3.21",
3
+ "version": "1.3.23",
4
4
  "description": "Multiplayer Fullstack Session Recorder for React Native",
5
5
  "author": {
6
6
  "name": "Multiplayer Software, Inc.",
@@ -57,7 +57,8 @@
57
57
  "test": "jest",
58
58
  "typecheck": "tsc",
59
59
  "lint": "eslint \"**/*.{js,ts,tsx}\"",
60
- "prepare": "bob build",
60
+ "build": "bob build",
61
+ "prepublishOnly": "npm run build",
61
62
  "release": "release-it --only-version"
62
63
  },
63
64
  "keywords": [
@@ -107,7 +108,7 @@
107
108
  "typescript": "^5.9.2"
108
109
  },
109
110
  "dependencies": {
110
- "@multiplayer-app/session-recorder-common": "1.3.21",
111
+ "@multiplayer-app/session-recorder-common": "1.3.23",
111
112
  "@opentelemetry/core": "2.0.1",
112
113
  "@opentelemetry/exporter-trace-otlp-http": "0.203.0",
113
114
  "@opentelemetry/instrumentation": "0.203.0",
package/src/otel/index.ts CHANGED
@@ -28,6 +28,10 @@ import { WebTracerProvider } from '@opentelemetry/sdk-trace-web';
28
28
  import { CrashBufferService } from '../services/crashBuffer.service';
29
29
  import { CrashBufferSpanProcessor } from './CrashBufferSpanProcessor';
30
30
 
31
+ const clientIdGenerator = SessionRecorderSdk.getIdGenerator(
32
+ MULTIPLAYER_TRACE_CLIENT_ID_LENGTH
33
+ );
34
+
31
35
  export class TracerReactNativeSDK {
32
36
  clientId = '';
33
37
  private tracerProvider?: WebTracerProvider;
@@ -47,20 +51,24 @@ export class TracerReactNativeSDK {
47
51
  sessionType: SessionType = SessionType.MANUAL
48
52
  ) {
49
53
  this.sessionId = sessionId;
50
- this.idGenerator?.setSessionId(sessionId, sessionType, this.clientId);
54
+
55
+ if (!this.idGenerator) {
56
+ throw new Error('Id generator not initialized');
57
+ }
58
+
59
+ this.idGenerator.setSessionId(sessionId, sessionType, this.clientId);
51
60
  }
52
61
 
53
62
  init(options: TracerReactNativeConfig): void {
54
63
  this.config = options;
55
- const clientIdGenerator = SessionRecorderSdk.getIdGenerator(
56
- MULTIPLAYER_TRACE_CLIENT_ID_LENGTH
57
- );
58
64
  this.clientId = clientIdGenerator();
59
65
 
60
66
  const { application, version, environment } = this.config;
61
67
 
62
68
  this.idGenerator = new SessionRecorderIdGenerator();
63
69
 
70
+ this._setSessionId('', SessionType.SESSION_CACHE);
71
+
64
72
  this.exporter = new SessionRecorderBrowserTraceExporter({
65
73
  apiKey: options.apiKey,
66
74
  url: getExporterEndpoint(options.exporterEndpoint),
@@ -157,7 +165,7 @@ export class TracerReactNativeSDK {
157
165
  );
158
166
  }
159
167
 
160
- this._setSessionId('');
168
+ this._setSessionId('', SessionType.SESSION_CACHE);
161
169
  }
162
170
 
163
171
  setApiKey(apiKey: string): void {
@@ -167,16 +175,7 @@ export class TracerReactNativeSDK {
167
175
  );
168
176
  }
169
177
 
170
- this.exporter.setApiKey?.(apiKey);
171
- }
172
-
173
- setSessionId(sessionId: string, sessionType: SessionType): void {
174
- this._setSessionId(sessionId, sessionType);
175
- }
176
-
177
- // Shutdown (React Native specific)
178
- shutdown(): Promise<void> {
179
- return Promise.resolve();
178
+ this.exporter.setApiKey(apiKey);
180
179
  }
181
180
 
182
181
  /**