@multiplayer-app/session-recorder-react-native 1.2.26 → 1.2.28

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.
@@ -101,29 +101,42 @@ export class TracerReactNativeSDK {
101
101
  * If there is an active span, the exception will be recorded on it.
102
102
  * Otherwise, a short-lived span will be created to hold the exception event.
103
103
  */
104
- captureException(error) {
104
+ captureException(error, errorInfo) {
105
105
  if (!error) return;
106
- const activeSpan = trace.getSpan(context.active());
107
- if (activeSpan) {
108
- try {
106
+
107
+ // Prefer attaching to the active span to keep correlation intact
108
+ try {
109
+ const activeSpan = trace.getSpan(context.active());
110
+ if (activeSpan) {
111
+ // Standard OTEL exception event + span status
109
112
  SessionRecorderSdk.captureException(error);
113
+ activeSpan.addEvent('exception', {
114
+ 'exception.type': error.name || 'Error',
115
+ 'exception.message': error.message,
116
+ 'exception.stacktrace': error.stack || '',
117
+ ...(errorInfo || {})
118
+ });
110
119
  return;
111
- } catch (_e) {
112
- // fallthrough
113
120
  }
114
- }
121
+ } catch (_ignored) {}
122
+
123
+ // Fallback: create a short-lived span to hold the exception details
115
124
  try {
116
- const tracer = trace.getTracer('session-recorder');
117
- const span = tracer.startSpan('exception');
125
+ const tracer = trace.getTracer('exception');
126
+ const span = tracer.startSpan(error.name || 'Error');
118
127
  span.recordException(error);
119
128
  span.setStatus({
120
129
  code: SpanStatusCode.ERROR,
121
130
  message: error.message
122
131
  });
132
+ span.addEvent('exception', {
133
+ 'exception.type': error.name || 'Error',
134
+ 'exception.message': error.message,
135
+ 'exception.stacktrace': error.stack || '',
136
+ ...(errorInfo || {})
137
+ });
123
138
  span.end();
124
- } catch (_err) {
125
- // no-op
126
- }
139
+ } catch (_ignored) {}
127
140
  }
128
141
  _registerGlobalErrorHandlers() {
129
142
  if (this.globalErrorHandlerRegistered) return;
@@ -1 +1 @@
1
- {"version":3,"names":["resourceFromAttributes","W3CTraceContextPropagator","BatchSpanProcessor","SemanticAttributes","registerInstrumentations","SessionType","ATTR_MULTIPLAYER_SESSION_ID","SessionRecorderIdGenerator","SessionRecorderTraceIdRatioBasedSampler","SessionRecorderBrowserTraceExporter","getInstrumentations","getExporterEndpoint","SessionRecorderSdk","trace","SpanStatusCode","context","getPlatformAttributes","WebTracerProvider","TracerReactNativeSDK","sessionId","globalErrorHandlerRegistered","constructor","_setSessionId","sessionType","MANUAL","idGenerator","setSessionId","init","options","config","application","version","environment","exporter","apiKey","url","exporterEndpoint","tracerProvider","resource","SEMRESATTRS_SERVICE_NAME","SEMRESATTRS_SERVICE_VERSION","SEMRESATTRS_DEPLOYMENT_ENVIRONMENT","sampler","sampleTraceRatio","spanProcessors","_getSpanSessionIdProcessor","register","propagator","instrumentations","_registerGlobalErrorHandlers","onStart","span","setAttribute","Date","now","onEnd","shutdown","Promise","resolve","forceFlush","start","Error","stop","setApiKey","captureException","error","activeSpan","getSpan","active","_e","tracer","getTracer","startSpan","recordException","setStatus","code","ERROR","message","end","_err","ErrorUtilsRef","global","ErrorUtils","setGlobalHandler","previous","getGlobalHandler","isFatal","err","String"],"sourceRoot":"../../../src","sources":["otel/index.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["resourceFromAttributes","W3CTraceContextPropagator","BatchSpanProcessor","SemanticAttributes","registerInstrumentations","SessionType","ATTR_MULTIPLAYER_SESSION_ID","SessionRecorderIdGenerator","SessionRecorderTraceIdRatioBasedSampler","SessionRecorderBrowserTraceExporter","getInstrumentations","getExporterEndpoint","SessionRecorderSdk","trace","SpanStatusCode","context","getPlatformAttributes","WebTracerProvider","TracerReactNativeSDK","sessionId","globalErrorHandlerRegistered","constructor","_setSessionId","sessionType","MANUAL","idGenerator","setSessionId","init","options","config","application","version","environment","exporter","apiKey","url","exporterEndpoint","tracerProvider","resource","SEMRESATTRS_SERVICE_NAME","SEMRESATTRS_SERVICE_VERSION","SEMRESATTRS_DEPLOYMENT_ENVIRONMENT","sampler","sampleTraceRatio","spanProcessors","_getSpanSessionIdProcessor","register","propagator","instrumentations","_registerGlobalErrorHandlers","onStart","span","setAttribute","Date","now","onEnd","shutdown","Promise","resolve","forceFlush","start","Error","stop","setApiKey","captureException","error","errorInfo","activeSpan","getSpan","active","addEvent","name","message","stack","_ignored","tracer","getTracer","startSpan","recordException","setStatus","code","ERROR","end","ErrorUtilsRef","global","ErrorUtils","setGlobalHandler","previous","getGlobalHandler","isFatal","err","String","_e"],"sourceRoot":"../../../src","sources":["otel/index.ts"],"mappings":"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","ignoreList":[]}
@@ -24,6 +24,33 @@ function _tryReadFetchBody({
24
24
  }
25
25
  return `[Fetch] Cannot read body of type ${Object.prototype.toString.call(body)}`;
26
26
  }
27
+ async function _tryReadResponseBody(response) {
28
+ try {
29
+ // Clone the response to avoid consuming the original stream.
30
+ const clonedResponse = response.clone();
31
+ const contentType = response.headers.get('content-type') || '';
32
+ if (contentType.includes('application/json')) {
33
+ const json = await clonedResponse.json();
34
+ return JSON.stringify(json);
35
+ } else if (contentType.includes('text/')) {
36
+ return await clonedResponse.text();
37
+ } else {
38
+ // For other content types, try text first, fallback to arrayBuffer
39
+ try {
40
+ return await clonedResponse.text();
41
+ } catch {
42
+ try {
43
+ const arrayBuffer = await clonedResponse.arrayBuffer();
44
+ return `[Fetch] Binary data (${arrayBuffer.byteLength} bytes)`;
45
+ } catch {
46
+ return '[Fetch] Unable to read response body';
47
+ }
48
+ }
49
+ }
50
+ } catch (error) {
51
+ return `[Fetch] Error reading response body: ${error instanceof Error ? error.message : 'Unknown error'}`;
52
+ }
53
+ }
27
54
  function _headersToObject(headers) {
28
55
  const result = {};
29
56
  headers.forEach((value, key) => {
@@ -32,6 +59,31 @@ function _headersToObject(headers) {
32
59
  return result;
33
60
  }
34
61
 
62
+ // Convert HeadersInit to a plain object without needing to construct a Request
63
+ function _headersInitToObject(headersInit) {
64
+ if (!headersInit) return {};
65
+
66
+ // Headers instance
67
+ if (typeof Headers !== 'undefined' && headersInit instanceof Headers) {
68
+ return _headersToObject(headersInit);
69
+ }
70
+ const result = {};
71
+
72
+ // Array of tuples
73
+ if (Array.isArray(headersInit)) {
74
+ for (const [key, value] of headersInit) {
75
+ result[String(key).toLowerCase()] = String(value);
76
+ }
77
+ return result;
78
+ }
79
+
80
+ // Record<string, string>
81
+ for (const [key, value] of Object.entries(headersInit)) {
82
+ result[String(key).toLowerCase()] = String(value);
83
+ }
84
+ return result;
85
+ }
86
+
35
87
  // Only patch fetch if available and safe to do so
36
88
  if (typeof fetch !== 'undefined' && typeof global !== 'undefined') {
37
89
  // Store original fetch
@@ -40,72 +92,52 @@ if (typeof fetch !== 'undefined' && typeof global !== 'undefined') {
40
92
  // Override fetch with safer implementation
41
93
  global.fetch = async function (input, init) {
42
94
  const networkRequest = {};
43
- try {
44
- // Capture request data safely
45
- const request = new Request(input, init);
46
- if (configs.recordRequestHeaders) {
47
- try {
48
- networkRequest.requestHeaders = _headersToObject(request.headers);
49
- } catch (error) {
50
- console.warn('[Fetch Patch] Failed to capture request headers:', error);
51
- }
95
+
96
+ // Capture request data
97
+ const inputIsRequest = typeof Request !== 'undefined' && input instanceof Request;
98
+ const safeToConstructRequest = !inputIsRequest || !input.bodyUsed;
99
+
100
+ // Only construct a new Request when it's safe (i.e., body not already used)
101
+ let requestForMetadata = null;
102
+ if (safeToConstructRequest) {
103
+ try {
104
+ requestForMetadata = new Request(input, init);
105
+ } catch {
106
+ requestForMetadata = null;
52
107
  }
53
- if (configs.shouldRecordBody && request.body) {
54
- try {
55
- const requestBody = _tryReadFetchBody({
56
- body: request.body
57
- });
58
- if (requestBody?.length && requestBody.length <= configs.maxCapturingHttpPayloadSize) {
59
- networkRequest.requestBody = requestBody;
60
- }
61
- } catch (error) {
62
- console.warn('[Fetch Patch] Failed to capture request body:', error);
108
+ }
109
+ if (configs.recordRequestHeaders) {
110
+ if (requestForMetadata) {
111
+ networkRequest.requestHeaders = _headersToObject(requestForMetadata.headers);
112
+ } else if (inputIsRequest) {
113
+ networkRequest.requestHeaders = _headersToObject(input.headers);
114
+ } else {
115
+ networkRequest.requestHeaders = _headersInitToObject(init?.headers);
116
+ }
117
+ }
118
+ if (configs.shouldRecordBody) {
119
+ const candidateBody = requestForMetadata ? requestForMetadata.body : inputIsRequest ? init?.body : init?.body;
120
+ if (!isNullish(candidateBody)) {
121
+ const requestBody = _tryReadFetchBody({
122
+ body: candidateBody
123
+ });
124
+ if (requestBody?.length && (typeof Blob !== 'undefined' ? new Blob([requestBody]).size <= configs.maxCapturingHttpPayloadSize : requestBody.length <= configs.maxCapturingHttpPayloadSize)) {
125
+ networkRequest.requestBody = requestBody;
63
126
  }
64
127
  }
65
-
128
+ }
129
+ try {
66
130
  // Make the actual fetch request
67
131
  const response = await originalFetch(input, init);
68
132
 
69
- // Capture response data safely
133
+ // Capture response data
70
134
  if (configs.recordResponseHeaders) {
71
- try {
72
- networkRequest.responseHeaders = _headersToObject(response.headers);
73
- } catch (error) {
74
- console.warn('[Fetch Patch] Failed to capture response headers:', error);
75
- }
135
+ networkRequest.responseHeaders = _headersToObject(response.headers);
76
136
  }
77
137
  if (configs.shouldRecordBody) {
78
- try {
79
- // Try to capture response body without cloning first
80
- let responseBody = null;
81
-
82
- // Check if response body is available and not consumed
83
- if (response.body && !response.bodyUsed) {
84
- try {
85
- // Try cloning first (might fail in React Native)
86
- const clonedResponse = response.clone();
87
- responseBody = await clonedResponse.text();
88
- } catch (cloneError) {
89
- // If cloning fails, try to read from original response
90
- // This is risky but we'll catch the error
91
- try {
92
- responseBody = await response.text();
93
- // If we get here, we consumed the body, so we need to recreate the response
94
- // This is a limitation - we can't both capture and preserve the body
95
- console.warn('[Fetch Patch] Response body consumed for capture - user code may not be able to read it');
96
- } catch (readError) {
97
- console.warn('[Fetch Patch] Failed to read response body:', readError);
98
- responseBody = '[Fetch] Unable to read response body';
99
- }
100
- }
101
- } else if (response.bodyUsed) {
102
- responseBody = '[Fetch] Response body already consumed';
103
- }
104
- if (responseBody?.length && responseBody.length <= configs.maxCapturingHttpPayloadSize) {
105
- networkRequest.responseBody = responseBody;
106
- }
107
- } catch (error) {
108
- console.warn('[Fetch Patch] Failed to capture response body:', error);
138
+ const responseBody = await _tryReadResponseBody(response);
139
+ if (responseBody?.length && (typeof Blob !== 'undefined' ? new Blob([responseBody]).size <= configs.maxCapturingHttpPayloadSize : responseBody.length <= configs.maxCapturingHttpPayloadSize)) {
140
+ networkRequest.responseBody = responseBody;
109
141
  }
110
142
  }
111
143
 
@@ -114,8 +146,13 @@ if (typeof fetch !== 'undefined' && typeof global !== 'undefined') {
114
146
  response.networkRequest = networkRequest;
115
147
  return response;
116
148
  } catch (error) {
117
- // Don't interfere with the original error - just log and rethrow
118
- console.warn('[Fetch Patch] Fetch failed:', error);
149
+ // Even if the fetch fails, we can still capture the request data
150
+ // Attach captured request data to the thrown error for downstream handling
151
+ // @ts-ignore
152
+ if (error && typeof error === 'object') {
153
+ // @ts-ignore
154
+ error.networkRequest = networkRequest;
155
+ }
119
156
  throw error;
120
157
  }
121
158
  };
@@ -1 +1 @@
1
- {"version":3,"names":["isFormData","isNullish","isObject","isString","formDataToQuery","configs","_tryReadFetchBody","body","JSON","stringify","Object","prototype","toString","call","_headersToObject","headers","result","forEach","value","key","fetch","global","originalFetch","input","init","networkRequest","request","Request","recordRequestHeaders","requestHeaders","error","console","warn","shouldRecordBody","requestBody","length","maxCapturingHttpPayloadSize","response","recordResponseHeaders","responseHeaders","responseBody","bodyUsed","clonedResponse","clone","text","cloneError","readError","setPrototypeOf","defineProperty","info"],"sourceRoot":"../../../src","sources":["patch/fetch.ts"],"mappings":";;AAAA,SACEA,UAAU,EACVC,SAAS,EACTC,QAAQ,EACRC,QAAQ,QACH,wBAAqB;AAC5B,SAASC,eAAe,QAAQ,2BAAwB;AACxD,SAASC,OAAO,QAAQ,cAAW;AAEnC,SAASC,iBAAiBA,CAAC;EACzBC;AAGF,CAAC,EAAiB;EAChB,IAAIN,SAAS,CAACM,IAAI,CAAC,EAAE;IACnB,OAAO,IAAI;EACb;EAEA,IAAIJ,QAAQ,CAACI,IAAI,CAAC,EAAE;IAClB,OAAOA,IAAI;EACb;EAEA,IAAIP,UAAU,CAACO,IAAI,CAAC,EAAE;IACpB,OAAOH,eAAe,CAACG,IAAI,CAAC;EAC9B;EAEA,IAAIL,QAAQ,CAACK,IAAI,CAAC,EAAE;IAClB,IAAI;MACF,OAAOC,IAAI,CAACC,SAAS,CAACF,IAAI,CAAC;IAC7B,CAAC,CAAC,MAAM;MACN,OAAO,4CAA4C;IACrD;EACF;EAEA,OAAO,oCAAoCG,MAAM,CAACC,SAAS,CAACC,QAAQ,CAACC,IAAI,CAACN,IAAI,CAAC,EAAE;AACnF;AAEA,SAASO,gBAAgBA,CAACC,OAAgB,EAA0B;EAClE,MAAMC,MAA8B,GAAG,CAAC,CAAC;EACzCD,OAAO,CAACE,OAAO,CAAC,CAACC,KAAK,EAAEC,GAAG,KAAK;IAC9BH,MAAM,CAACG,GAAG,CAAC,GAAGD,KAAK;EACrB,CAAC,CAAC;EACF,OAAOF,MAAM;AACf;;AAEA;AACA,IAAI,OAAOI,KAAK,KAAK,WAAW,IAAI,OAAOC,MAAM,KAAK,WAAW,EAAE;EACjE;EACA,MAAMC,aAAa,GAAGD,MAAM,CAACD,KAAK;;EAElC;EACAC,MAAM,CAACD,KAAK,GAAG,gBACbG,KAAU,EACVC,IAAU,EACS;IACnB,MAAMC,cAKL,GAAG,CAAC,CAAC;IAEN,IAAI;MACF;MACA,MAAMC,OAAO,GAAG,IAAIC,OAAO,CAACJ,KAAK,EAAEC,IAAI,CAAC;MAExC,IAAInB,OAAO,CAACuB,oBAAoB,EAAE;QAChC,IAAI;UACFH,cAAc,CAACI,cAAc,GAAGf,gBAAgB,CAACY,OAAO,CAACX,OAAO,CAAC;QACnE,CAAC,CAAC,OAAOe,KAAK,EAAE;UACdC,OAAO,CAACC,IAAI,CAAC,kDAAkD,EAAEF,KAAK,CAAC;QACzE;MACF;MAEA,IAAIzB,OAAO,CAAC4B,gBAAgB,IAAIP,OAAO,CAACnB,IAAI,EAAE;QAC5C,IAAI;UACF,MAAM2B,WAAW,GAAG5B,iBAAiB,CAAC;YACpCC,IAAI,EAAEmB,OAAO,CAACnB;UAChB,CAAC,CAAC;UAEF,IACE2B,WAAW,EAAEC,MAAM,IACnBD,WAAW,CAACC,MAAM,IAAI9B,OAAO,CAAC+B,2BAA2B,EACzD;YACAX,cAAc,CAACS,WAAW,GAAGA,WAAW;UAC1C;QACF,CAAC,CAAC,OAAOJ,KAAK,EAAE;UACdC,OAAO,CAACC,IAAI,CAAC,+CAA+C,EAAEF,KAAK,CAAC;QACtE;MACF;;MAEA;MACA,MAAMO,QAAQ,GAAG,MAAMf,aAAa,CAACC,KAAK,EAAEC,IAAI,CAAC;;MAEjD;MACA,IAAInB,OAAO,CAACiC,qBAAqB,EAAE;QACjC,IAAI;UACFb,cAAc,CAACc,eAAe,GAAGzB,gBAAgB,CAACuB,QAAQ,CAACtB,OAAO,CAAC;QACrE,CAAC,CAAC,OAAOe,KAAK,EAAE;UACdC,OAAO,CAACC,IAAI,CAAC,mDAAmD,EAAEF,KAAK,CAAC;QAC1E;MACF;MAEA,IAAIzB,OAAO,CAAC4B,gBAAgB,EAAE;QAC5B,IAAI;UACF;UACA,IAAIO,YAA2B,GAAG,IAAI;;UAEtC;UACA,IAAIH,QAAQ,CAAC9B,IAAI,IAAI,CAAC8B,QAAQ,CAACI,QAAQ,EAAE;YACvC,IAAI;cACF;cACA,MAAMC,cAAc,GAAGL,QAAQ,CAACM,KAAK,CAAC,CAAC;cACvCH,YAAY,GAAG,MAAME,cAAc,CAACE,IAAI,CAAC,CAAC;YAC5C,CAAC,CAAC,OAAOC,UAAU,EAAE;cACnB;cACA;cACA,IAAI;gBACFL,YAAY,GAAG,MAAMH,QAAQ,CAACO,IAAI,CAAC,CAAC;gBACpC;gBACA;gBACAb,OAAO,CAACC,IAAI,CAAC,yFAAyF,CAAC;cACzG,CAAC,CAAC,OAAOc,SAAS,EAAE;gBAClBf,OAAO,CAACC,IAAI,CAAC,6CAA6C,EAAEc,SAAS,CAAC;gBACtEN,YAAY,GAAG,sCAAsC;cACvD;YACF;UACF,CAAC,MAAM,IAAIH,QAAQ,CAACI,QAAQ,EAAE;YAC5BD,YAAY,GAAG,wCAAwC;UACzD;UAEA,IACEA,YAAY,EAAEL,MAAM,IACpBK,YAAY,CAACL,MAAM,IAAI9B,OAAO,CAAC+B,2BAA2B,EAC1D;YACAX,cAAc,CAACe,YAAY,GAAGA,YAAY;UAC5C;QACF,CAAC,CAAC,OAAOV,KAAK,EAAE;UACdC,OAAO,CAACC,IAAI,CAAC,gDAAgD,EAAEF,KAAK,CAAC;QACvE;MACF;;MAEA;MACA;MACAO,QAAQ,CAACZ,cAAc,GAAGA,cAAc;MAExC,OAAOY,QAAQ;IACjB,CAAC,CAAC,OAAOP,KAAK,EAAE;MACd;MACAC,OAAO,CAACC,IAAI,CAAC,6BAA6B,EAAEF,KAAK,CAAC;MAClD,MAAMA,KAAK;IACb;EACF,CAAC;;EAED;EACA,IAAI;IACFpB,MAAM,CAACqC,cAAc,CAAC1B,MAAM,CAACD,KAAK,EAAEE,aAAa,CAAC;IAClDZ,MAAM,CAACsC,cAAc,CAAC3B,MAAM,CAACD,KAAK,EAAE,MAAM,EAAE;MAAEF,KAAK,EAAE;IAAQ,CAAC,CAAC;IAC/DR,MAAM,CAACsC,cAAc,CAAC3B,MAAM,CAACD,KAAK,EAAE,QAAQ,EAAE;MAAEF,KAAK,EAAEI,aAAa,CAACa;IAAO,CAAC,CAAC;EAChF,CAAC,CAAC,OAAOL,KAAK,EAAE;IACdC,OAAO,CAACC,IAAI,CAAC,oDAAoD,EAAEF,KAAK,CAAC;EAC3E;AACF,CAAC,MAAM;EACLC,OAAO,CAACkB,IAAI,CAAC,kFAAkF,CAAC;AAClG","ignoreList":[]}
1
+ {"version":3,"names":["isFormData","isNullish","isObject","isString","formDataToQuery","configs","_tryReadFetchBody","body","JSON","stringify","Object","prototype","toString","call","_tryReadResponseBody","response","clonedResponse","clone","contentType","headers","get","includes","json","text","arrayBuffer","byteLength","error","Error","message","_headersToObject","result","forEach","value","key","_headersInitToObject","headersInit","Headers","Array","isArray","String","toLowerCase","entries","fetch","global","originalFetch","input","init","networkRequest","inputIsRequest","Request","safeToConstructRequest","bodyUsed","requestForMetadata","recordRequestHeaders","requestHeaders","shouldRecordBody","candidateBody","requestBody","length","Blob","size","maxCapturingHttpPayloadSize","recordResponseHeaders","responseHeaders","responseBody","setPrototypeOf","defineProperty","console","warn","info"],"sourceRoot":"../../../src","sources":["patch/fetch.ts"],"mappings":"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","ignoreList":[]}
@@ -113,10 +113,11 @@ class SessionRecorder extends Observable {
113
113
  /**
114
114
  * Capture an exception manually and send it as an error trace.
115
115
  */
116
- captureException(error) {
116
+ captureException(error, errorInfo) {
117
117
  try {
118
- const normalized = this._normalizeError(error);
119
- this._tracer.captureException(normalized);
118
+ const normalizedError = this._normalizeError(error);
119
+ const normalizedErrorInfo = this._normalizeErrorInfo(errorInfo);
120
+ this._tracer.captureException(normalizedError, normalizedErrorInfo);
120
121
  } catch (e) {
121
122
  this.error = e?.message || 'Failed to capture exception';
122
123
  }
@@ -549,6 +550,12 @@ class SessionRecorder extends Observable {
549
550
  cleanup() {
550
551
  this._networkService.cleanup();
551
552
  }
553
+
554
+ /**
555
+ * Normalize an error to an Error object
556
+ * @param error - the error to normalize
557
+ * @returns the normalized error
558
+ */
552
559
  _normalizeError(error) {
553
560
  if (error instanceof Error) return error;
554
561
  if (typeof error === 'string') return new Error(error);
@@ -558,6 +565,22 @@ class SessionRecorder extends Observable {
558
565
  return new Error(String(error));
559
566
  }
560
567
  }
568
+
569
+ /**
570
+ * Normalize an error info object to a Record<string, any>
571
+ * @param errorInfo - the error info to normalize
572
+ * @returns the normalized error info
573
+ */
574
+ _normalizeErrorInfo(errorInfo) {
575
+ if (!errorInfo) return {};
576
+ try {
577
+ return JSON.parse(JSON.stringify(errorInfo));
578
+ } catch (_e) {
579
+ return {
580
+ errorInfo: String(errorInfo)
581
+ };
582
+ }
583
+ }
561
584
  }
562
585
  export default new SessionRecorder();
563
586
  //# sourceMappingURL=session-recorder.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["SessionType","Observable","TracerReactNativeSDK","RecorderReactNativeSDK","logger","SessionState","getFormattedDate","isSessionActive","getNavigatorInfo","setShouldRecordHttpData","setMaxCapturingHttpPayloadSize","BASE_CONFIG","getSessionRecorderConfig","StorageService","NetworkService","ApiService","SessionRecorder","_apiService","_tracer","_recorder","_storageService","getInstance","_networkService","_startRequestController","_isInitialized","isInitialized","_sessionId","sessionId","saveSessionId","_sessionType","MANUAL","sessionType","saveSessionType","continuousRecording","CONTINUOUS","_sessionState","sessionState","stopped","state","emit","saveSessionState","_session","session","saveSessionObject","_sessionAttributes","sessionAttributes","attributes","error","_error","v","sessionWidgetButtonElement","config","_configs","constructor","initialize","captureException","normalized","_normalizeError","e","message","_loadStoredSessionData","storedData","getAllSessionData","sessionObject","init","configs","configure","maxCapturingHttpPayloadSize","captureBody","captureHeaders","_setupNetworkCallbacks","started","paused","_start","addCallback","isConnected","info","pause","resume","start","type","_checkOperation","isOnline","warn","Error","showContinuousRecording","AbortController","_setupSessionAndStart","_createSessionAndStart","stop","comment","_stop","stopContinuousDebugSession","request","stoppedAt","Date","now","stopSession","_clearSession","_pause","_resume","cancel","cancelSession","save","res","saveContinuousDebugSession","resourceAttributes","name","userName","month","day","setSessionAttributes","checkRemoteContinuousSession","sessionPayload","payload","checkRemoteSession","signal","debugSessionData","startContinuousDebugSession","startSession","shutdown","setSessionId","configureExporters","tempApiKey","apiKey","setApiKey","_setSession","createdAt","toISOString","shortId","_id","clearSessionData","action","_payload","setSessionAttribute","key","value","updatedAt","recordEvent","event","setViewShotRef","ref","setNavigationRef","cleanup","JSON","stringify","_e","String"],"sourceRoot":"../../src","sources":["session-recorder.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["SessionType","Observable","TracerReactNativeSDK","RecorderReactNativeSDK","logger","SessionState","getFormattedDate","isSessionActive","getNavigatorInfo","setShouldRecordHttpData","setMaxCapturingHttpPayloadSize","BASE_CONFIG","getSessionRecorderConfig","StorageService","NetworkService","ApiService","SessionRecorder","_apiService","_tracer","_recorder","_storageService","getInstance","_networkService","_startRequestController","_isInitialized","isInitialized","_sessionId","sessionId","saveSessionId","_sessionType","MANUAL","sessionType","saveSessionType","continuousRecording","CONTINUOUS","_sessionState","sessionState","stopped","state","emit","saveSessionState","_session","session","saveSessionObject","_sessionAttributes","sessionAttributes","attributes","error","_error","v","sessionWidgetButtonElement","config","_configs","constructor","initialize","captureException","errorInfo","normalizedError","_normalizeError","normalizedErrorInfo","_normalizeErrorInfo","e","message","_loadStoredSessionData","storedData","getAllSessionData","sessionObject","init","configs","configure","maxCapturingHttpPayloadSize","captureBody","captureHeaders","_setupNetworkCallbacks","started","paused","_start","addCallback","isConnected","info","pause","resume","start","type","_checkOperation","isOnline","warn","Error","showContinuousRecording","AbortController","_setupSessionAndStart","_createSessionAndStart","stop","comment","_stop","stopContinuousDebugSession","request","stoppedAt","Date","now","stopSession","_clearSession","_pause","_resume","cancel","cancelSession","save","res","saveContinuousDebugSession","resourceAttributes","name","userName","month","day","setSessionAttributes","checkRemoteContinuousSession","sessionPayload","payload","checkRemoteSession","signal","debugSessionData","startContinuousDebugSession","startSession","shutdown","setSessionId","configureExporters","tempApiKey","apiKey","setApiKey","_setSession","createdAt","toISOString","shortId","_id","clearSessionData","action","_payload","setSessionAttribute","key","value","updatedAt","recordEvent","event","setViewShotRef","ref","setNavigationRef","cleanup","JSON","stringify","_e","String","parse"],"sourceRoot":"../../src","sources":["session-recorder.ts"],"mappings":"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","ignoreList":[]}
@@ -21,7 +21,7 @@ export declare class TracerReactNativeSDK {
21
21
  * If there is an active span, the exception will be recorded on it.
22
22
  * Otherwise, a short-lived span will be created to hold the exception event.
23
23
  */
24
- captureException(error: Error): void;
24
+ captureException(error: Error, errorInfo?: Record<string, any>): void;
25
25
  private _registerGlobalErrorHandlers;
26
26
  }
27
27
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/otel/index.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,WAAW,EAKZ,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,UAAU,CAAC;AASxD,qBAAa,oBAAoB;IAC/B,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,CAAM;IACvB,OAAO,CAAC,4BAA4B,CAAS;;IAI7C,OAAO,CAAC,aAAa;IAQrB,IAAI,CAAC,OAAO,EAAE,uBAAuB,GAAG,IAAI;IA0C5C,OAAO,CAAC,0BAA0B;IAgBlC,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,GAAG,IAAI;IAwBpC,OAAO,CAAC,4BAA4B;CAqBrC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/otel/index.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,WAAW,EAKZ,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,UAAU,CAAC;AASxD,qBAAa,oBAAoB;IAC/B,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,CAAM;IACvB,OAAO,CAAC,4BAA4B,CAAS;;IAI7C,OAAO,CAAC,aAAa;IAQrB,IAAI,CAAC,OAAO,EAAE,uBAAuB,GAAG,IAAI;IA0C5C,OAAO,CAAC,0BAA0B;IAgBlC,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;IAoCrE,OAAO,CAAC,4BAA4B;CAqBrC"}
@@ -48,7 +48,7 @@ declare class SessionRecorder extends Observable<SessionRecorderEvents> implemen
48
48
  /**
49
49
  * Capture an exception manually and send it as an error trace.
50
50
  */
51
- captureException(error: unknown): void;
51
+ captureException(error: unknown, errorInfo?: Record<string, any>): void;
52
52
  private _loadStoredSessionData;
53
53
  /**
54
54
  * Initialize the session debugger
@@ -150,7 +150,18 @@ declare class SessionRecorder extends Observable<SessionRecorderEvents> implemen
150
150
  * Cleanup resources and unsubscribe from network monitoring
151
151
  */
152
152
  cleanup(): void;
153
+ /**
154
+ * Normalize an error to an Error object
155
+ * @param error - the error to normalize
156
+ * @returns the normalized error
157
+ */
153
158
  private _normalizeError;
159
+ /**
160
+ * Normalize an error info object to a Record<string, any>
161
+ * @param errorInfo - the error info to normalize
162
+ * @returns the normalized error info
163
+ */
164
+ private _normalizeErrorInfo;
154
165
  }
155
166
  declare const _default: SessionRecorder;
156
167
  export default _default;
@@ -1 +1 @@
1
- {"version":3,"file":"session-recorder.d.ts","sourceRoot":"","sources":["../../../src/session-recorder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-recorder.d.ts","sourceRoot":"","sources":["../../../src/session-recorder.ts"],"names":[],"mappings":"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"}
@@ -292,7 +292,7 @@ export interface ISessionRecorder {
292
292
  /**
293
293
  * Capture an exception and send it as an error trace
294
294
  */
295
- captureException(error: unknown): void;
295
+ captureException(error: unknown, errorInfo?: Record<string, any>): void;
296
296
  }
297
297
  /**
298
298
  * Interface representing screen capture events
@@ -1 +1 @@
1
- {"version":3,"file":"session-recorder.d.ts","sourceRoot":"","sources":["../../../../src/types/session-recorder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-recorder.d.ts","sourceRoot":"","sources":["../../../../src/types/session-recorder.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@multiplayer-app/session-recorder-react-native",
3
- "version": "1.2.26",
3
+ "version": "1.2.28",
4
4
  "description": "Multiplayer Fullstack Session Recorder for React Native",
5
5
  "author": {
6
6
  "name": "Multiplayer Software, Inc.",
@@ -107,7 +107,7 @@
107
107
  "typescript": "^5.9.2"
108
108
  },
109
109
  "dependencies": {
110
- "@multiplayer-app/session-recorder-common": "1.2.26",
110
+ "@multiplayer-app/session-recorder-common": "1.2.28",
111
111
  "@opentelemetry/core": "2.0.1",
112
112
  "@opentelemetry/exporter-trace-otlp-http": "0.203.0",
113
113
  "@opentelemetry/instrumentation": "0.203.0",
package/src/otel/index.ts CHANGED
@@ -140,28 +140,40 @@ export class TracerReactNativeSDK {
140
140
  * If there is an active span, the exception will be recorded on it.
141
141
  * Otherwise, a short-lived span will be created to hold the exception event.
142
142
  */
143
- captureException(error: Error): void {
143
+ captureException(error: Error, errorInfo?: Record<string, any>): void {
144
144
  if (!error) return;
145
145
 
146
- const activeSpan = trace.getSpan(context.active());
147
- if (activeSpan) {
148
- try {
149
- SessionRecorderSdk.captureException(error);
150
- return;
151
- } catch (_e) {
152
- // fallthrough
146
+
147
+ // Prefer attaching to the active span to keep correlation intact
148
+ try {
149
+ const activeSpan = trace.getSpan(context.active())
150
+ if (activeSpan) {
151
+ // Standard OTEL exception event + span status
152
+ SessionRecorderSdk.captureException(error)
153
+ activeSpan.addEvent('exception', {
154
+ 'exception.type': error.name || 'Error',
155
+ 'exception.message': error.message,
156
+ 'exception.stacktrace': error.stack || '',
157
+ ...(errorInfo || {}),
158
+ })
159
+ return
153
160
  }
154
- }
161
+ } catch (_ignored) { }
155
162
 
163
+ // Fallback: create a short-lived span to hold the exception details
156
164
  try {
157
- const tracer = trace.getTracer('session-recorder');
158
- const span = tracer.startSpan('exception');
159
- span.recordException(error);
160
- span.setStatus({ code: SpanStatusCode.ERROR, message: error.message });
161
- span.end();
162
- } catch (_err) {
163
- // no-op
164
- }
165
+ const tracer = trace.getTracer('exception')
166
+ const span = tracer.startSpan(error.name || 'Error')
167
+ span.recordException(error)
168
+ span.setStatus({ code: SpanStatusCode.ERROR, message: error.message })
169
+ span.addEvent('exception', {
170
+ 'exception.type': error.name || 'Error',
171
+ 'exception.message': error.message,
172
+ 'exception.stacktrace': error.stack || '',
173
+ ...(errorInfo || {}),
174
+ })
175
+ span.end()
176
+ } catch (_ignored) { }
165
177
  }
166
178
 
167
179
  private _registerGlobalErrorHandlers(): void {
@@ -35,6 +35,35 @@ function _tryReadFetchBody({
35
35
  return `[Fetch] Cannot read body of type ${Object.prototype.toString.call(body)}`
36
36
  }
37
37
 
38
+ async function _tryReadResponseBody(response: Response): Promise<string | null> {
39
+ try {
40
+ // Clone the response to avoid consuming the original stream.
41
+ const clonedResponse = response.clone()
42
+
43
+ const contentType = response.headers.get('content-type') || ''
44
+ if (contentType.includes('application/json')) {
45
+ const json = await clonedResponse.json()
46
+ return JSON.stringify(json)
47
+ } else if (contentType.includes('text/')) {
48
+ return await clonedResponse.text()
49
+ } else {
50
+ // For other content types, try text first, fallback to arrayBuffer
51
+ try {
52
+ return await clonedResponse.text()
53
+ } catch {
54
+ try {
55
+ const arrayBuffer = await clonedResponse.arrayBuffer()
56
+ return `[Fetch] Binary data (${arrayBuffer.byteLength} bytes)`
57
+ } catch {
58
+ return '[Fetch] Unable to read response body'
59
+ }
60
+ }
61
+ }
62
+ } catch (error) {
63
+ return `[Fetch] Error reading response body: ${error instanceof Error ? error.message : 'Unknown error'}`
64
+ }
65
+ }
66
+
38
67
  function _headersToObject(headers: Headers): Record<string, string> {
39
68
  const result: Record<string, string> = {}
40
69
  headers.forEach((value, key) => {
@@ -43,6 +72,33 @@ function _headersToObject(headers: Headers): Record<string, string> {
43
72
  return result
44
73
  }
45
74
 
75
+ // Convert HeadersInit to a plain object without needing to construct a Request
76
+ function _headersInitToObject(headersInit?: any): Record<string, string> {
77
+ if (!headersInit) return {}
78
+
79
+ // Headers instance
80
+ if (typeof Headers !== 'undefined' && headersInit instanceof Headers) {
81
+ return _headersToObject(headersInit)
82
+ }
83
+
84
+ const result: Record<string, string> = {}
85
+
86
+ // Array of tuples
87
+ if (Array.isArray(headersInit)) {
88
+ for (const [key, value] of headersInit) {
89
+ result[String(key).toLowerCase()] = String(value)
90
+ }
91
+ return result
92
+ }
93
+
94
+ // Record<string, string>
95
+ for (const [key, value] of Object.entries(headersInit as Record<string, string>)) {
96
+ result[String(key).toLowerCase()] = String(value)
97
+ }
98
+
99
+ return result
100
+ }
101
+
46
102
  // Only patch fetch if available and safe to do so
47
103
  if (typeof fetch !== 'undefined' && typeof global !== 'undefined') {
48
104
  // Store original fetch
@@ -60,83 +116,70 @@ if (typeof fetch !== 'undefined' && typeof global !== 'undefined') {
60
116
  responseBody?: string
61
117
  } = {}
62
118
 
63
- try {
64
- // Capture request data safely
65
- const request = new Request(input, init)
119
+ // Capture request data
120
+ const inputIsRequest = typeof Request !== 'undefined' && input instanceof Request
121
+ const safeToConstructRequest = !inputIsRequest || !(input as Request).bodyUsed
122
+
123
+ // Only construct a new Request when it's safe (i.e., body not already used)
124
+ let requestForMetadata: Request | null = null
125
+ if (safeToConstructRequest) {
126
+ try {
127
+ requestForMetadata = new Request(input as RequestInfo, init)
128
+ } catch {
129
+ requestForMetadata = null
130
+ }
131
+ }
66
132
 
67
- if (configs.recordRequestHeaders) {
68
- try {
69
- networkRequest.requestHeaders = _headersToObject(request.headers)
70
- } catch (error) {
71
- console.warn('[Fetch Patch] Failed to capture request headers:', error)
72
- }
133
+ if (configs.recordRequestHeaders) {
134
+ if (requestForMetadata) {
135
+ networkRequest.requestHeaders = _headersToObject(requestForMetadata.headers)
136
+ } else if (inputIsRequest) {
137
+ networkRequest.requestHeaders = _headersToObject((input as Request).headers)
138
+ } else {
139
+ networkRequest.requestHeaders = _headersInitToObject(init?.headers)
73
140
  }
141
+ }
74
142
 
75
- if (configs.shouldRecordBody && request.body) {
76
- try {
77
- const requestBody = _tryReadFetchBody({
78
- body: request.body,
79
- })
80
-
81
- if (
82
- requestBody?.length &&
83
- requestBody.length <= configs.maxCapturingHttpPayloadSize
84
- ) {
85
- networkRequest.requestBody = requestBody
86
- }
87
- } catch (error) {
88
- console.warn('[Fetch Patch] Failed to capture request body:', error)
143
+ if (configs.shouldRecordBody) {
144
+ const candidateBody: any | null | undefined = requestForMetadata
145
+ ? (requestForMetadata as any).body as any
146
+ : (inputIsRequest ? (init as any)?.body : (init as any)?.body)
147
+
148
+ if (!isNullish(candidateBody)) {
149
+ const requestBody = _tryReadFetchBody({
150
+ body: candidateBody,
151
+ })
152
+
153
+ if (
154
+ requestBody?.length &&
155
+ (typeof Blob !== 'undefined'
156
+ ? new Blob([requestBody]).size <= configs.maxCapturingHttpPayloadSize
157
+ : requestBody.length <= configs.maxCapturingHttpPayloadSize)
158
+ ) {
159
+ networkRequest.requestBody = requestBody
89
160
  }
90
161
  }
162
+ }
91
163
 
164
+ try {
92
165
  // Make the actual fetch request
93
166
  const response = await originalFetch(input, init)
94
167
 
95
- // Capture response data safely
168
+ // Capture response data
96
169
  if (configs.recordResponseHeaders) {
97
- try {
98
- networkRequest.responseHeaders = _headersToObject(response.headers)
99
- } catch (error) {
100
- console.warn('[Fetch Patch] Failed to capture response headers:', error)
101
- }
170
+ networkRequest.responseHeaders = _headersToObject(response.headers)
102
171
  }
103
172
 
104
173
  if (configs.shouldRecordBody) {
105
- try {
106
- // Try to capture response body without cloning first
107
- let responseBody: string | null = null
108
-
109
- // Check if response body is available and not consumed
110
- if (response.body && !response.bodyUsed) {
111
- try {
112
- // Try cloning first (might fail in React Native)
113
- const clonedResponse = response.clone()
114
- responseBody = await clonedResponse.text()
115
- } catch (cloneError) {
116
- // If cloning fails, try to read from original response
117
- // This is risky but we'll catch the error
118
- try {
119
- responseBody = await response.text()
120
- // If we get here, we consumed the body, so we need to recreate the response
121
- // This is a limitation - we can't both capture and preserve the body
122
- console.warn('[Fetch Patch] Response body consumed for capture - user code may not be able to read it')
123
- } catch (readError) {
124
- console.warn('[Fetch Patch] Failed to read response body:', readError)
125
- responseBody = '[Fetch] Unable to read response body'
126
- }
127
- }
128
- } else if (response.bodyUsed) {
129
- responseBody = '[Fetch] Response body already consumed'
130
- }
131
-
132
- if (
133
- responseBody?.length &&
134
- responseBody.length <= configs.maxCapturingHttpPayloadSize
135
- ) {
136
- networkRequest.responseBody = responseBody
137
- }
138
- } catch (error) {
139
- console.warn('[Fetch Patch] Failed to capture response body:', error)
174
+ const responseBody = await _tryReadResponseBody(response)
175
+
176
+ if (
177
+ responseBody?.length &&
178
+ (typeof Blob !== 'undefined'
179
+ ? new Blob([responseBody]).size <= configs.maxCapturingHttpPayloadSize
180
+ : responseBody.length <= configs.maxCapturingHttpPayloadSize)
181
+ ) {
182
+ networkRequest.responseBody = responseBody
140
183
  }
141
184
  }
142
185
 
@@ -146,8 +189,13 @@ if (typeof fetch !== 'undefined' && typeof global !== 'undefined') {
146
189
 
147
190
  return response
148
191
  } catch (error) {
149
- // Don't interfere with the original error - just log and rethrow
150
- console.warn('[Fetch Patch] Fetch failed:', error)
192
+ // Even if the fetch fails, we can still capture the request data
193
+ // Attach captured request data to the thrown error for downstream handling
194
+ // @ts-ignore
195
+ if (error && typeof error === 'object') {
196
+ // @ts-ignore
197
+ error.networkRequest = networkRequest
198
+ }
151
199
  throw error
152
200
  }
153
201
  }
@@ -145,10 +145,11 @@ class SessionRecorder
145
145
  /**
146
146
  * Capture an exception manually and send it as an error trace.
147
147
  */
148
- public captureException(error: unknown): void {
148
+ public captureException(error: unknown, errorInfo?: Record<string, any>): void {
149
149
  try {
150
- const normalized = this._normalizeError(error);
151
- this._tracer.captureException(normalized);
150
+ const normalizedError = this._normalizeError(error);
151
+ const normalizedErrorInfo = this._normalizeErrorInfo(errorInfo);
152
+ this._tracer.captureException(normalizedError, normalizedErrorInfo);
152
153
  } catch (e: any) {
153
154
  this.error = e?.message || 'Failed to capture exception';
154
155
  }
@@ -655,6 +656,11 @@ class SessionRecorder
655
656
  this._networkService.cleanup();
656
657
  }
657
658
 
659
+ /**
660
+ * Normalize an error to an Error object
661
+ * @param error - the error to normalize
662
+ * @returns the normalized error
663
+ */
658
664
  private _normalizeError(error: unknown): Error {
659
665
  if (error instanceof Error) return error;
660
666
  if (typeof error === 'string') return new Error(error);
@@ -664,6 +670,21 @@ class SessionRecorder
664
670
  return new Error(String(error));
665
671
  }
666
672
  }
673
+
674
+
675
+ /**
676
+ * Normalize an error info object to a Record<string, any>
677
+ * @param errorInfo - the error info to normalize
678
+ * @returns the normalized error info
679
+ */
680
+ private _normalizeErrorInfo(errorInfo?: Record<string, any>): Record<string, any> {
681
+ if (!errorInfo) return {}
682
+ try {
683
+ return JSON.parse(JSON.stringify(errorInfo))
684
+ } catch (_e) {
685
+ return { errorInfo: String(errorInfo) }
686
+ }
687
+ }
667
688
  }
668
689
 
669
690
  export default new SessionRecorder();
@@ -335,7 +335,7 @@ export interface ISessionRecorder {
335
335
  /**
336
336
  * Capture an exception and send it as an error trace
337
337
  */
338
- captureException(error: unknown): void;
338
+ captureException(error: unknown, errorInfo?: Record<string, any>): void;
339
339
  }
340
340
 
341
341
  /**