Skip to content

Commit b8598c0

Browse files
committed
ref(replay): Hide internal breadcrumbs behind experiments flag
1 parent 55e0b62 commit b8598c0

File tree

3 files changed

+23
-28
lines changed

3 files changed

+23
-28
lines changed

packages/replay/src/coreHandlers/handleGlobalEvent.ts

Lines changed: 19 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1+
import { addBreadcrumb } from '@sentry/core';
12
import { Event } from '@sentry/types';
23

34
import { REPLAY_EVENT_NAME, UNABLE_TO_SEND_REPLAY } from '../constants';
45
import type { ReplayContainer } from '../types';
5-
import { addInternalBreadcrumb } from '../util/addInternalBreadcrumb';
66

77
/**
88
* Returns a listener to be added to `addGlobalEventProcessor(listener)`.
@@ -39,11 +39,13 @@ export function handleGlobalEventListener(replay: ReplayContainer): (event: Even
3939
}
4040

4141
const exc = event.exception?.values?.[0];
42-
addInternalBreadcrumb({
43-
message: `Tagging event (${event.event_id}) - ${event.message} - ${exc?.type || 'Unknown'}: ${
44-
exc?.value || 'n/a'
45-
}`,
46-
});
42+
if (__DEBUG_BUILD__ && replay.getOptions()._experiments?.traceInternals) {
43+
addInternalBreadcrumb({
44+
message: `Tagging event (${event.event_id}) - ${event.message} - ${exc?.type || 'Unknown'}: ${
45+
exc?.value || 'n/a'
46+
}`,
47+
});
48+
}
4749

4850
// Need to be very careful that this does not cause an infinite loop
4951
if (
@@ -72,3 +74,14 @@ export function handleGlobalEventListener(replay: ReplayContainer): (event: Even
7274
return event;
7375
};
7476
}
77+
78+
function addInternalBreadcrumb(arg: Parameters<typeof addBreadcrumb>[0]): void {
79+
const { category, level, message, ...rest } = arg;
80+
81+
addBreadcrumb({
82+
category: category || 'console',
83+
level: level || 'debug',
84+
message: `[debug]: ${message}`,
85+
...rest,
86+
});
87+
}

packages/replay/src/types.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,10 @@ export interface ReplayPluginOptions extends SessionOptions {
113113
*
114114
* Default: undefined
115115
*/
116-
_experiments?: Partial<{ captureExceptions: boolean }>;
116+
_experiments?: Partial<{
117+
captureExceptions: boolean;
118+
traceInternals: boolean;
119+
}>;
117120
}
118121

119122
// These are optional for ReplayPluginOptions because the plugin sets default values

packages/replay/src/util/addInternalBreadcrumb.ts

Lines changed: 0 additions & 21 deletions
This file was deleted.

0 commit comments

Comments
 (0)