@sentry/browser 11.0.0-alpha.0 → 11.0.0-alpha.2
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/build/npm/cjs/dev/client.js.map +1 -1
- package/build/npm/cjs/dev/helpers.js +2 -1
- package/build/npm/cjs/dev/helpers.js.map +1 -1
- package/build/npm/cjs/dev/index.js +7 -4
- package/build/npm/cjs/dev/index.js.map +1 -1
- package/build/npm/cjs/dev/integrations/bfcache.js +113 -0
- package/build/npm/cjs/dev/integrations/bfcache.js.map +1 -0
- package/build/npm/cjs/dev/integrations/breadcrumbs.js +1 -1
- package/build/npm/cjs/dev/integrations/breadcrumbs.js.map +1 -1
- package/build/npm/cjs/dev/integrations/fetchStreamPerformance.js +11 -11
- package/build/npm/cjs/dev/integrations/fetchStreamPerformance.js.map +1 -1
- package/build/npm/cjs/dev/integrations/globalhandlers.js +2 -1
- package/build/npm/cjs/dev/integrations/globalhandlers.js.map +1 -1
- package/build/npm/cjs/dev/integrations/graphqlClient.js +3 -3
- package/build/npm/cjs/dev/integrations/graphqlClient.js.map +1 -1
- package/build/npm/cjs/dev/integrations/httpclient.js.map +1 -1
- package/build/npm/cjs/dev/integrations/reportingobserver.js +4 -1
- package/build/npm/cjs/dev/integrations/reportingobserver.js.map +1 -1
- package/build/npm/cjs/dev/integrations/spotlight.js +2 -1
- package/build/npm/cjs/dev/integrations/spotlight.js.map +1 -1
- package/build/npm/cjs/dev/integrations/view-hierarchy.js +2 -1
- package/build/npm/cjs/dev/integrations/view-hierarchy.js.map +1 -1
- package/build/npm/cjs/dev/profiling/index.js.map +1 -1
- package/build/npm/cjs/dev/profiling/integration.js +21 -91
- package/build/npm/cjs/dev/profiling/integration.js.map +1 -1
- package/build/npm/cjs/dev/profiling/utils.js +0 -283
- package/build/npm/cjs/dev/profiling/utils.js.map +1 -1
- package/build/npm/cjs/dev/sdk.js +0 -4
- package/build/npm/cjs/dev/sdk.js.map +1 -1
- package/build/npm/cjs/dev/tracing/backgroundtab.js +5 -1
- package/build/npm/cjs/dev/tracing/backgroundtab.js.map +1 -1
- package/build/npm/cjs/dev/tracing/browserTracingIntegration.js +30 -86
- package/build/npm/cjs/dev/tracing/browserTracingIntegration.js.map +1 -1
- package/build/npm/cjs/dev/tracing/linkedTraces.js +3 -3
- package/build/npm/cjs/dev/tracing/linkedTraces.js.map +1 -1
- package/build/npm/cjs/dev/tracing/request.js +7 -9
- package/build/npm/cjs/dev/tracing/request.js.map +1 -1
- package/build/npm/cjs/dev/utils/detectBrowserExtension.js +2 -1
- package/build/npm/cjs/dev/utils/detectBrowserExtension.js.map +1 -1
- package/build/npm/cjs/dev/utils/lazyLoadIntegration.js +1 -0
- package/build/npm/cjs/dev/utils/lazyLoadIntegration.js.map +1 -1
- package/build/npm/cjs/prod/client.js.map +1 -1
- package/build/npm/cjs/prod/helpers.js +2 -1
- package/build/npm/cjs/prod/helpers.js.map +1 -1
- package/build/npm/cjs/prod/index.js +7 -4
- package/build/npm/cjs/prod/index.js.map +1 -1
- package/build/npm/cjs/prod/integrations/bfcache.js +113 -0
- package/build/npm/cjs/prod/integrations/bfcache.js.map +1 -0
- package/build/npm/cjs/prod/integrations/breadcrumbs.js +1 -1
- package/build/npm/cjs/prod/integrations/breadcrumbs.js.map +1 -1
- package/build/npm/cjs/prod/integrations/fetchStreamPerformance.js +11 -11
- package/build/npm/cjs/prod/integrations/fetchStreamPerformance.js.map +1 -1
- package/build/npm/cjs/prod/integrations/globalhandlers.js +2 -1
- package/build/npm/cjs/prod/integrations/globalhandlers.js.map +1 -1
- package/build/npm/cjs/prod/integrations/graphqlClient.js +3 -3
- package/build/npm/cjs/prod/integrations/graphqlClient.js.map +1 -1
- package/build/npm/cjs/prod/integrations/httpclient.js.map +1 -1
- package/build/npm/cjs/prod/integrations/reportingobserver.js +4 -1
- package/build/npm/cjs/prod/integrations/reportingobserver.js.map +1 -1
- package/build/npm/cjs/prod/integrations/spotlight.js +2 -1
- package/build/npm/cjs/prod/integrations/spotlight.js.map +1 -1
- package/build/npm/cjs/prod/integrations/view-hierarchy.js +2 -1
- package/build/npm/cjs/prod/integrations/view-hierarchy.js.map +1 -1
- package/build/npm/cjs/prod/profiling/index.js.map +1 -1
- package/build/npm/cjs/prod/profiling/integration.js +21 -91
- package/build/npm/cjs/prod/profiling/integration.js.map +1 -1
- package/build/npm/cjs/prod/profiling/utils.js +0 -283
- package/build/npm/cjs/prod/profiling/utils.js.map +1 -1
- package/build/npm/cjs/prod/sdk.js +0 -4
- package/build/npm/cjs/prod/sdk.js.map +1 -1
- package/build/npm/cjs/prod/tracing/backgroundtab.js +5 -1
- package/build/npm/cjs/prod/tracing/backgroundtab.js.map +1 -1
- package/build/npm/cjs/prod/tracing/browserTracingIntegration.js +30 -86
- package/build/npm/cjs/prod/tracing/browserTracingIntegration.js.map +1 -1
- package/build/npm/cjs/prod/tracing/linkedTraces.js +3 -3
- package/build/npm/cjs/prod/tracing/linkedTraces.js.map +1 -1
- package/build/npm/cjs/prod/tracing/request.js +7 -9
- package/build/npm/cjs/prod/tracing/request.js.map +1 -1
- package/build/npm/cjs/prod/utils/detectBrowserExtension.js +2 -1
- package/build/npm/cjs/prod/utils/detectBrowserExtension.js.map +1 -1
- package/build/npm/cjs/prod/utils/lazyLoadIntegration.js +1 -0
- package/build/npm/cjs/prod/utils/lazyLoadIntegration.js.map +1 -1
- package/build/npm/esm/dev/client.js.map +1 -1
- package/build/npm/esm/dev/helpers.js +2 -1
- package/build/npm/esm/dev/helpers.js.map +1 -1
- package/build/npm/esm/dev/index.js +4 -4
- package/build/npm/esm/dev/integrations/bfcache.js +109 -0
- package/build/npm/esm/dev/integrations/bfcache.js.map +1 -0
- package/build/npm/esm/dev/integrations/breadcrumbs.js +2 -2
- package/build/npm/esm/dev/integrations/breadcrumbs.js.map +1 -1
- package/build/npm/esm/dev/integrations/fetchStreamPerformance.js +3 -3
- package/build/npm/esm/dev/integrations/fetchStreamPerformance.js.map +1 -1
- package/build/npm/esm/dev/integrations/globalhandlers.js +2 -1
- package/build/npm/esm/dev/integrations/globalhandlers.js.map +1 -1
- package/build/npm/esm/dev/integrations/graphqlClient.js +5 -5
- package/build/npm/esm/dev/integrations/graphqlClient.js.map +1 -1
- package/build/npm/esm/dev/integrations/httpclient.js.map +1 -1
- package/build/npm/esm/dev/integrations/reportingobserver.js +4 -1
- package/build/npm/esm/dev/integrations/reportingobserver.js.map +1 -1
- package/build/npm/esm/dev/integrations/spotlight.js +2 -1
- package/build/npm/esm/dev/integrations/spotlight.js.map +1 -1
- package/build/npm/esm/dev/integrations/view-hierarchy.js +2 -1
- package/build/npm/esm/dev/integrations/view-hierarchy.js.map +1 -1
- package/build/npm/esm/dev/package.json +1 -1
- package/build/npm/esm/dev/profiling/index.js.map +1 -1
- package/build/npm/esm/dev/profiling/integration.js +22 -92
- package/build/npm/esm/dev/profiling/integration.js.map +1 -1
- package/build/npm/esm/dev/profiling/utils.js +2 -272
- package/build/npm/esm/dev/profiling/utils.js.map +1 -1
- package/build/npm/esm/dev/sdk.js +0 -4
- package/build/npm/esm/dev/sdk.js.map +1 -1
- package/build/npm/esm/dev/tracing/backgroundtab.js +5 -1
- package/build/npm/esm/dev/tracing/backgroundtab.js.map +1 -1
- package/build/npm/esm/dev/tracing/browserTracingIntegration.js +32 -87
- package/build/npm/esm/dev/tracing/browserTracingIntegration.js.map +1 -1
- package/build/npm/esm/dev/tracing/linkedTraces.js +3 -3
- package/build/npm/esm/dev/tracing/linkedTraces.js.map +1 -1
- package/build/npm/esm/dev/tracing/request.js +9 -11
- package/build/npm/esm/dev/tracing/request.js.map +1 -1
- package/build/npm/esm/dev/utils/detectBrowserExtension.js +2 -1
- package/build/npm/esm/dev/utils/detectBrowserExtension.js.map +1 -1
- package/build/npm/esm/dev/utils/lazyLoadIntegration.js +1 -0
- package/build/npm/esm/dev/utils/lazyLoadIntegration.js.map +1 -1
- package/build/npm/esm/prod/client.js.map +1 -1
- package/build/npm/esm/prod/helpers.js +2 -1
- package/build/npm/esm/prod/helpers.js.map +1 -1
- package/build/npm/esm/prod/index.js +4 -4
- package/build/npm/esm/prod/integrations/bfcache.js +109 -0
- package/build/npm/esm/prod/integrations/bfcache.js.map +1 -0
- package/build/npm/esm/prod/integrations/breadcrumbs.js +2 -2
- package/build/npm/esm/prod/integrations/breadcrumbs.js.map +1 -1
- package/build/npm/esm/prod/integrations/fetchStreamPerformance.js +3 -3
- package/build/npm/esm/prod/integrations/fetchStreamPerformance.js.map +1 -1
- package/build/npm/esm/prod/integrations/globalhandlers.js +2 -1
- package/build/npm/esm/prod/integrations/globalhandlers.js.map +1 -1
- package/build/npm/esm/prod/integrations/graphqlClient.js +5 -5
- package/build/npm/esm/prod/integrations/graphqlClient.js.map +1 -1
- package/build/npm/esm/prod/integrations/httpclient.js.map +1 -1
- package/build/npm/esm/prod/integrations/reportingobserver.js +4 -1
- package/build/npm/esm/prod/integrations/reportingobserver.js.map +1 -1
- package/build/npm/esm/prod/integrations/spotlight.js +2 -1
- package/build/npm/esm/prod/integrations/spotlight.js.map +1 -1
- package/build/npm/esm/prod/integrations/view-hierarchy.js +2 -1
- package/build/npm/esm/prod/integrations/view-hierarchy.js.map +1 -1
- package/build/npm/esm/prod/package.json +1 -1
- package/build/npm/esm/prod/profiling/index.js.map +1 -1
- package/build/npm/esm/prod/profiling/integration.js +22 -92
- package/build/npm/esm/prod/profiling/integration.js.map +1 -1
- package/build/npm/esm/prod/profiling/utils.js +2 -272
- package/build/npm/esm/prod/profiling/utils.js.map +1 -1
- package/build/npm/esm/prod/sdk.js +0 -4
- package/build/npm/esm/prod/sdk.js.map +1 -1
- package/build/npm/esm/prod/tracing/backgroundtab.js +5 -1
- package/build/npm/esm/prod/tracing/backgroundtab.js.map +1 -1
- package/build/npm/esm/prod/tracing/browserTracingIntegration.js +32 -87
- package/build/npm/esm/prod/tracing/browserTracingIntegration.js.map +1 -1
- package/build/npm/esm/prod/tracing/linkedTraces.js +3 -3
- package/build/npm/esm/prod/tracing/linkedTraces.js.map +1 -1
- package/build/npm/esm/prod/tracing/request.js +9 -11
- package/build/npm/esm/prod/tracing/request.js.map +1 -1
- package/build/npm/esm/prod/utils/detectBrowserExtension.js +2 -1
- package/build/npm/esm/prod/utils/detectBrowserExtension.js.map +1 -1
- package/build/npm/esm/prod/utils/lazyLoadIntegration.js +1 -0
- package/build/npm/esm/prod/utils/lazyLoadIntegration.js.map +1 -1
- package/build/npm/types/client.d.ts +22 -1
- package/build/npm/types/client.d.ts.map +1 -1
- package/build/npm/types/exports.d.ts +2 -2
- package/build/npm/types/exports.d.ts.map +1 -1
- package/build/npm/types/helpers.d.ts.map +1 -1
- package/build/npm/types/index.bundle.d.ts +2 -2
- package/build/npm/types/index.bundle.d.ts.map +1 -1
- package/build/npm/types/index.bundle.feedback.d.ts +2 -2
- package/build/npm/types/index.bundle.feedback.d.ts.map +1 -1
- package/build/npm/types/index.bundle.logs.metrics.d.ts +1 -1
- package/build/npm/types/index.bundle.logs.metrics.d.ts.map +1 -1
- package/build/npm/types/index.bundle.replay.d.ts +2 -2
- package/build/npm/types/index.bundle.replay.d.ts.map +1 -1
- package/build/npm/types/index.bundle.replay.feedback.d.ts +2 -2
- package/build/npm/types/index.bundle.replay.feedback.d.ts.map +1 -1
- package/build/npm/types/index.bundle.replay.logs.metrics.d.ts +1 -1
- package/build/npm/types/index.bundle.replay.logs.metrics.d.ts.map +1 -1
- package/build/npm/types/index.bundle.tracing.d.ts +5 -4
- package/build/npm/types/index.bundle.tracing.d.ts.map +1 -1
- package/build/npm/types/index.bundle.tracing.logs.metrics.d.ts +4 -3
- package/build/npm/types/index.bundle.tracing.logs.metrics.d.ts.map +1 -1
- package/build/npm/types/index.bundle.tracing.replay.d.ts +5 -4
- package/build/npm/types/index.bundle.tracing.replay.d.ts.map +1 -1
- package/build/npm/types/index.bundle.tracing.replay.feedback.d.ts +5 -4
- package/build/npm/types/index.bundle.tracing.replay.feedback.d.ts.map +1 -1
- package/build/npm/types/index.bundle.tracing.replay.feedback.logs.metrics.d.ts +4 -3
- package/build/npm/types/index.bundle.tracing.replay.feedback.logs.metrics.d.ts.map +1 -1
- package/build/npm/types/index.bundle.tracing.replay.logs.metrics.d.ts +4 -3
- package/build/npm/types/index.bundle.tracing.replay.logs.metrics.d.ts.map +1 -1
- package/build/npm/types/index.d.ts +6 -5
- package/build/npm/types/index.d.ts.map +1 -1
- package/build/npm/types/integrations/bfcache.d.ts +42 -0
- package/build/npm/types/integrations/bfcache.d.ts.map +1 -0
- package/build/npm/types/integrations/breadcrumbs.d.ts.map +1 -1
- package/build/npm/types/integrations/graphqlClient.d.ts.map +1 -1
- package/build/npm/types/integrations/httpclient.d.ts.map +1 -1
- package/build/npm/types/integrations/interactions.d.ts +2 -0
- package/build/npm/types/integrations/interactions.d.ts.map +1 -0
- package/build/npm/types/integrations/reportingobserver.d.ts.map +1 -1
- package/build/npm/types/integrations/spotlight.d.ts.map +1 -1
- package/build/npm/types/integrations/view-hierarchy.d.ts.map +1 -1
- package/build/npm/types/profiling/index.d.ts.map +1 -1
- package/build/npm/types/profiling/integration.d.ts.map +1 -1
- package/build/npm/types/profiling/utils.d.ts +1 -74
- package/build/npm/types/profiling/utils.d.ts.map +1 -1
- package/build/npm/types/sdk.d.ts.map +1 -1
- package/build/npm/types/tracing/backgroundtab.d.ts.map +1 -1
- package/build/npm/types/tracing/browserTracingIntegration.d.ts +0 -19
- package/build/npm/types/tracing/browserTracingIntegration.d.ts.map +1 -1
- package/build/npm/types/tracing/linkedTraces.d.ts.map +1 -1
- package/build/npm/types/tracing/request.d.ts +1 -13
- package/build/npm/types/tracing/request.d.ts.map +1 -1
- package/build/npm/types/utils/detectBrowserExtension.d.ts.map +1 -1
- package/build/npm/types/utils/lazyLoadIntegration.d.ts +1 -1
- package/build/npm/types/utils/lazyLoadIntegration.d.ts.map +1 -1
- package/package.json +10 -9
- package/build/npm/cjs/dev/integrations/spanstreaming.js +0 -34
- package/build/npm/cjs/dev/integrations/spanstreaming.js.map +0 -1
- package/build/npm/cjs/dev/profiling/startProfileForSpan.js +0 -91
- package/build/npm/cjs/dev/profiling/startProfileForSpan.js.map +0 -1
- package/build/npm/cjs/prod/integrations/spanstreaming.js +0 -34
- package/build/npm/cjs/prod/integrations/spanstreaming.js.map +0 -1
- package/build/npm/cjs/prod/profiling/startProfileForSpan.js +0 -91
- package/build/npm/cjs/prod/profiling/startProfileForSpan.js.map +0 -1
- package/build/npm/esm/dev/integrations/spanstreaming.js +0 -31
- package/build/npm/esm/dev/integrations/spanstreaming.js.map +0 -1
- package/build/npm/esm/dev/profiling/startProfileForSpan.js +0 -89
- package/build/npm/esm/dev/profiling/startProfileForSpan.js.map +0 -1
- package/build/npm/esm/prod/integrations/spanstreaming.js +0 -31
- package/build/npm/esm/prod/integrations/spanstreaming.js.map +0 -1
- package/build/npm/esm/prod/profiling/startProfileForSpan.js +0 -89
- package/build/npm/esm/prod/profiling/startProfileForSpan.js.map +0 -1
- package/build/npm/types/integrations/spanstreaming.d.ts +0 -5
- package/build/npm/types/integrations/spanstreaming.d.ts.map +0 -1
- package/build/npm/types/profiling/startProfileForSpan.d.ts +0 -8
- package/build/npm/types/profiling/startProfileForSpan.d.ts.map +0 -1
|
@@ -6,24 +6,25 @@ export { httpClientIntegration } from './integrations/httpclient';
|
|
|
6
6
|
export { contextLinesIntegration } from './integrations/contextlines';
|
|
7
7
|
export { graphqlClientIntegration } from './integrations/graphqlClient';
|
|
8
8
|
export { viewHierarchyIntegration } from './integrations/view-hierarchy';
|
|
9
|
-
export { captureConsoleIntegration, extraErrorDataIntegration, rewriteFramesIntegration, consoleLoggingIntegration, createConsolaReporter, } from '@sentry/core/browser';
|
|
10
9
|
export { replayIntegration, getReplay } from '@sentry/replay';
|
|
11
10
|
export type { ReplayEventType, ReplayEventWithTime, ReplayBreadcrumbFrame, ReplayBreadcrumbFrameEvent, ReplayOptionFrameEvent, ReplayFrame, ReplayFrameEvent, ReplaySpanFrame, ReplaySpanFrameEvent, } from '@sentry/replay';
|
|
12
11
|
export { replayCanvasIntegration } from '@sentry/replay-canvas';
|
|
13
12
|
export { feedbackAsyncIntegration, feedbackSyncIntegration, feedbackSyncIntegration as feedbackIntegration };
|
|
14
13
|
export { getFeedback, sendFeedback } from '@sentry/feedback';
|
|
15
14
|
export { defaultRequestInstrumentationOptions, instrumentOutgoingRequests } from './tracing/request';
|
|
16
|
-
export { browserTracingIntegration,
|
|
17
|
-
export { elementTimingIntegration, getAbsoluteUrl } from '@sentry/browser-utils';
|
|
15
|
+
export { browserTracingIntegration, startBrowserTracingNavigationSpan, startBrowserTracingPageLoadSpan, } from './tracing/browserTracingIntegration';
|
|
16
|
+
export { elementTimingIntegration, getAbsoluteUrl, isBotUserAgent } from '@sentry/browser-utils';
|
|
18
17
|
export { normalizeStringifyValue } from './normalizeStringifyValue';
|
|
19
18
|
export { reportPageLoaded } from './tracing/reportPageLoaded';
|
|
20
19
|
export { setActiveSpanInBrowser } from './tracing/setActiveSpan';
|
|
21
|
-
export { spanStreamingIntegration } from '
|
|
20
|
+
export { spanStreamingIntegration } from '@sentry/core/browser';
|
|
22
21
|
export { fetchStreamPerformanceIntegration } from './integrations/fetchStreamPerformance';
|
|
23
22
|
export { webVitalsIntegration } from './integrations/webVitals';
|
|
24
23
|
export { userTimingIntegration } from './integrations/usertiming';
|
|
24
|
+
export { bfcacheIntegration } from './integrations/bfcache';
|
|
25
|
+
export { interactionsIntegration } from './integrations/interactions';
|
|
25
26
|
export type { RequestInstrumentationOptions } from './tracing/request';
|
|
26
|
-
export { registerSpanErrorInstrumentation, getActiveSpan, getRootSpan, startSpan, startInactiveSpan, startSpanManual, withActiveSpan, startNewTrace, bindScopeToEmitter, getSpanDescendants, setMeasurement, getSpanStatusFromHttpCode, setHttpStatus, makeMultiplexedTransport, MULTIPLEXED_TRANSPORT_EXTRA_KEY, moduleMetadataIntegration, supabaseIntegration, instrumentSupabaseClient, zodErrorsIntegration, thirdPartyErrorFilterIntegration, featureFlagsIntegration, logger, } from '@sentry/core/browser';
|
|
27
|
+
export { captureConsoleIntegration, extraErrorDataIntegration, rewriteFramesIntegration, consoleLoggingIntegration, createConsolaReporter, registerSpanErrorInstrumentation, getActiveSpan, getRootSpan, startSpan, startInactiveSpan, startSpanManual, withActiveSpan, startNewTrace, bindScopeToEmitter, getSpanDescendants, setMeasurement, getSpanStatusFromHttpCode, setHttpStatus, makeMultiplexedTransport, MULTIPLEXED_TRANSPORT_EXTRA_KEY, moduleMetadataIntegration, supabaseIntegration, instrumentSupabaseClient, zodErrorsIntegration, thirdPartyErrorFilterIntegration, featureFlagsIntegration, logger, metrics, } from '@sentry/core/browser';
|
|
27
28
|
export type { Span, FeatureFlagsIntegration } from '@sentry/core/browser';
|
|
28
29
|
export { makeBrowserOfflineTransport } from './transports/offline';
|
|
29
30
|
export { browserProfilingIntegration } from './profiling/integration';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAEzD,cAAc,WAAW,CAAC;AAE1B,OAAO,EAAE,4BAA4B,EAAE,MAAM,kCAAkC,CAAC;AAChF,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAEzE,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
type BFCacheFrame = 'top' | 'child';
|
|
2
|
+
interface BFCacheIntegrationOptions {
|
|
3
|
+
/**
|
|
4
|
+
* Maximum number of not-restored reasons to emit per miss.
|
|
5
|
+
*
|
|
6
|
+
* By default every reason is reported. Set this to cap the number emitted per miss.
|
|
7
|
+
* Values below 1 are clamped to 1.
|
|
8
|
+
*/
|
|
9
|
+
maxReasons: number;
|
|
10
|
+
}
|
|
11
|
+
interface NotRestoredReason {
|
|
12
|
+
reason?: string;
|
|
13
|
+
}
|
|
14
|
+
interface NotRestoredReasons {
|
|
15
|
+
children?: NotRestoredReasons[] | null;
|
|
16
|
+
reasons?: (NotRestoredReason | string)[] | null;
|
|
17
|
+
}
|
|
18
|
+
interface CollectedReason {
|
|
19
|
+
reason: string;
|
|
20
|
+
frame: BFCacheFrame;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Captures bfcache hit/miss counters and Chromium notRestoredReasons when available.
|
|
24
|
+
*/
|
|
25
|
+
export declare const bfcacheIntegration: (options?: Partial<BFCacheIntegrationOptions> | undefined) => import("@sentry/core").Integration & {
|
|
26
|
+
name: string;
|
|
27
|
+
};
|
|
28
|
+
/**
|
|
29
|
+
* Resolves the configured `maxReasons` cap. Reports every reason by default and clamps values below 1 to 1,
|
|
30
|
+
* since a cap under 1 would silently drop all reasons.
|
|
31
|
+
*
|
|
32
|
+
* Exported for tests only.
|
|
33
|
+
*/
|
|
34
|
+
export declare function _resolveMaxReasons(maxReasons: number | undefined): number;
|
|
35
|
+
/**
|
|
36
|
+
* Flattens the (possibly nested) bfcache `notRestoredReasons` tree into a capped list of reasons.
|
|
37
|
+
*
|
|
38
|
+
* Exported for tests only.
|
|
39
|
+
*/
|
|
40
|
+
export declare function _collectNotRestoredReasons(notRestoredReasons: NotRestoredReasons | null | undefined, maxReasons: number): CollectedReason[];
|
|
41
|
+
export {};
|
|
42
|
+
//# sourceMappingURL=bfcache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bfcache.d.ts","sourceRoot":"","sources":["../../../../src/integrations/bfcache.ts"],"names":[],"mappings":"AAiBA,KAAK,YAAY,GAAG,KAAK,GAAG,OAAO,CAAC;AAEpC,UAAU,yBAAyB;IACjC;;;;;OAKG;IACH,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,UAAU,iBAAiB;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,kBAAkB;IAC1B,QAAQ,CAAC,EAAE,kBAAkB,EAAE,GAAG,IAAI,CAAC;IACvC,OAAO,CAAC,EAAE,CAAC,iBAAiB,GAAG,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC;CACjD;AAMD,UAAU,eAAe;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,YAAY,CAAC;CACrB;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB;;CAiDL,CAAC;AAwC3B;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAYzE;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,kBAAkB,EAAE,kBAAkB,GAAG,IAAI,GAAG,SAAS,EACzD,UAAU,EAAE,MAAM,GACjB,eAAe,EAAE,CAUnB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"breadcrumbs.d.ts","sourceRoot":"","sources":["../../../../src/integrations/breadcrumbs.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"breadcrumbs.d.ts","sourceRoot":"","sources":["../../../../src/integrations/breadcrumbs.ts"],"names":[],"mappings":"AAuCA,UAAU,kBAAkB;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EACC,OAAO,GACP;QACE,kBAAkB,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;QACvC,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAC;IACN,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,GAAG,EAAE,OAAO,CAAC;CACd;AA4CD,eAAO,MAAM,sBAAsB;;CAA6C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graphqlClient.d.ts","sourceRoot":"","sources":["../../../../src/integrations/graphqlClient.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"graphqlClient.d.ts","sourceRoot":"","sources":["../../../../src/integrations/graphqlClient.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAIhE,UAAU,oBAAoB;IAC5B,SAAS,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;CACnC;AAED,yGAAyG;AACzG,UAAU,sBAAsB;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC;AAED,kCAAkC;AAClC,UAAU,uBAAuB;IAC/B,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,UAAU,EAAE;QACV,cAAc,EAAE;YACd,OAAO,EAAE,MAAM,CAAC;YAChB,UAAU,EAAE,MAAM,CAAC;SACpB,CAAC;KACH,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC7B;AAED,KAAK,qBAAqB,GAAG,sBAAsB,GAAG,uBAAuB,CAAC;AAE9E,UAAU,gBAAgB;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAkGD;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,qBAAqB,GAAG,MAAM,CAgB/E;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAczF;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,gBAAgB,CAuBjE;AA2BD;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,qBAAqB,GAAG,SAAS,CAe3F;AAED;;;GAGG;AACH,eAAO,MAAM,wBAAwB;;CAA+C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpclient.d.ts","sourceRoot":"","sources":["../../../../src/integrations/httpclient.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"httpclient.d.ts","sourceRoot":"","sources":["../../../../src/integrations/httpclient.ts"],"names":[],"mappings":"AAkBA,MAAM,MAAM,mBAAmB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC;AAC5D,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,MAAM,CAAC;AAIhD,UAAU,iBAAiB;IACzB;;;;;;;OAOG;IACH,wBAAwB,EAAE,mBAAmB,EAAE,CAAC;IAEhD;;;;;;OAMG;IACH,oBAAoB,EAAE,iBAAiB,EAAE,CAAC;CAC3C;AAkBD;;GAEG;AACH,eAAO,MAAM,qBAAqB;;CAA4C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interactions.d.ts","sourceRoot":"","sources":["../../../../src/integrations/interactions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reportingobserver.d.ts","sourceRoot":"","sources":["../../../../src/integrations/reportingobserver.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"reportingobserver.d.ts","sourceRoot":"","sources":["../../../../src/integrations/reportingobserver.ts"],"names":[],"mappings":"AAwBA,KAAK,WAAW,GAAG,OAAO,GAAG,aAAa,GAAG,cAAc,CAAC;AA6B5D,UAAU,wBAAwB;IAChC,KAAK,CAAC,EAAE,WAAW,EAAE,CAAC;CACvB;AAkFD;;GAEG;AACH,eAAO,MAAM,4BAA4B;;CAAmD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spotlight.d.ts","sourceRoot":"","sources":["../../../../src/integrations/spotlight.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"spotlight.d.ts","sourceRoot":"","sources":["../../../../src/integrations/spotlight.ts"],"names":[],"mappings":"AAOA,MAAM,MAAM,0BAA0B,GAAG;IACvC;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAG,kBAA2B,CAAC;AAE5D,eAAO,MAAM,sBAAsB;;;GAA4D,CAAC;AAuDhG;;;;GAIG;AACH,eAAO,MAAM,2BAA2B;;CAA2C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view-hierarchy.d.ts","sourceRoot":"","sources":["../../../../src/integrations/view-hierarchy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,KAAK,EAAE,SAAS,EAA0C,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"view-hierarchy.d.ts","sourceRoot":"","sources":["../../../../src/integrations/view-hierarchy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,KAAK,EAAE,SAAS,EAA0C,MAAM,sBAAsB,CAAC;AAKjH,UAAU,aAAa;IACrB;;OAEG;IACH,OAAO,EAAE,WAAW,CAAC;IACrB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,OAAO;IACf;;;;OAIG;IACH,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,KAAK,OAAO,CAAC;IAE1D;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,WAAW,GAAG,SAAS,CAAC;IAE5C;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,aAAa,KAAK,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,GAAG,MAAM,GAAG,UAAU,CAAC;CACtG;AAED;;GAEG;AACH,eAAO,MAAM,wBAAwB;;CA0FnC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/profiling/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/profiling/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAgDrD;;;;GAIG;AACH,eAAO,MAAM,UAAU,EAAE,QAGxB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"integration.d.ts","sourceRoot":"","sources":["../../../../src/profiling/integration.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"integration.d.ts","sourceRoot":"","sources":["../../../../src/profiling/integration.ts"],"names":[],"mappings":"AA4DA,eAAO,MAAM,2BAA2B;;CAAkD,CAAC"}
|
|
@@ -1,30 +1,8 @@
|
|
|
1
|
-
import type { Client, DebugImage,
|
|
1
|
+
import type { Client, DebugImage, ProfileChunk, Span } from '@sentry/core/browser';
|
|
2
2
|
import type { BrowserOptions } from '../client';
|
|
3
3
|
import type { JSSelfProfile, JSSelfProfiler } from './jsSelfProfiling';
|
|
4
4
|
export declare const PROFILER_THREAD_ID_STRING: string;
|
|
5
5
|
export declare const PROFILER_THREAD_NAME: string;
|
|
6
|
-
/**
|
|
7
|
-
*
|
|
8
|
-
*/
|
|
9
|
-
export declare function enrichWithThreadInformation(profile: ThreadCpuProfile | JSSelfProfile): ThreadCpuProfile;
|
|
10
|
-
export interface ProfiledEvent extends Event {
|
|
11
|
-
sdkProcessingMetadata: {
|
|
12
|
-
profile?: JSSelfProfile;
|
|
13
|
-
};
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Creates a profiling event envelope from a Sentry event. If profile does not pass
|
|
17
|
-
* validation, returns null.
|
|
18
|
-
* @param event
|
|
19
|
-
* @param dsn
|
|
20
|
-
* @param metadata
|
|
21
|
-
* @param tunnel
|
|
22
|
-
* @returns {EventEnvelope | null}
|
|
23
|
-
*/
|
|
24
|
-
/**
|
|
25
|
-
* Creates a profiling event envelope from a Sentry event.
|
|
26
|
-
*/
|
|
27
|
-
export declare function createProfilePayload(profile_id: string, start_timestamp: number | undefined, processed_profile: JSSelfProfile, event: ProfiledEvent): Profile;
|
|
28
6
|
/**
|
|
29
7
|
* Create a profile chunk envelope item
|
|
30
8
|
*/
|
|
@@ -40,30 +18,6 @@ export declare function validateProfileChunk(chunk: ProfileChunk): {
|
|
|
40
18
|
} | {
|
|
41
19
|
reason: string;
|
|
42
20
|
};
|
|
43
|
-
/**
|
|
44
|
-
*
|
|
45
|
-
*/
|
|
46
|
-
export declare function isProfiledTransactionEvent(event: Event): event is ProfiledEvent;
|
|
47
|
-
/**
|
|
48
|
-
*
|
|
49
|
-
*/
|
|
50
|
-
export declare function isAutomatedPageLoadSpan(span: Span): boolean;
|
|
51
|
-
/**
|
|
52
|
-
* Converts a JSSelfProfile to a our sampled format.
|
|
53
|
-
* Does not currently perform stack indexing.
|
|
54
|
-
*/
|
|
55
|
-
export declare function convertJSSelfProfileToSampledFormat(input: JSSelfProfile): Profile['profile'];
|
|
56
|
-
/**
|
|
57
|
-
* Adds items to envelope if they are not already present - mutates the envelope.
|
|
58
|
-
* @param envelope
|
|
59
|
-
*/
|
|
60
|
-
export declare function addProfilesToEnvelope(envelope: EventEnvelope, profiles: Profile[]): Envelope;
|
|
61
|
-
/**
|
|
62
|
-
* Finds transactions with profile_id context in the envelope
|
|
63
|
-
* @param envelope
|
|
64
|
-
* @returns
|
|
65
|
-
*/
|
|
66
|
-
export declare function findProfiledTransactionsFromEnvelope(envelope: Envelope): Event[];
|
|
67
21
|
/**
|
|
68
22
|
* Applies debug meta data to an event from a list of paths to resources (sourcemaps)
|
|
69
23
|
*/
|
|
@@ -77,36 +31,9 @@ export declare const MAX_PROFILE_DURATION_MS = 30000;
|
|
|
77
31
|
* Starts the profiler and returns the profiler instance.
|
|
78
32
|
*/
|
|
79
33
|
export declare function startJSSelfProfile(): JSSelfProfiler | undefined;
|
|
80
|
-
/**
|
|
81
|
-
* Determine if a profile should be profiled.
|
|
82
|
-
*/
|
|
83
|
-
export declare function shouldProfileSpanLegacy(span: Span): boolean;
|
|
84
34
|
/**
|
|
85
35
|
* Determine if a profile should be created for the current session.
|
|
86
36
|
*/
|
|
87
37
|
export declare function shouldProfileSession(options: BrowserOptions): boolean;
|
|
88
|
-
/**
|
|
89
|
-
* Checks if legacy profiling is configured.
|
|
90
|
-
*/
|
|
91
|
-
export declare function hasLegacyProfiling(options: BrowserOptions): boolean;
|
|
92
|
-
/**
|
|
93
|
-
* Creates a profiling envelope item, if the profile does not pass validation, returns null.
|
|
94
|
-
* @param event
|
|
95
|
-
* @returns {Profile | null}
|
|
96
|
-
*/
|
|
97
|
-
export declare function createProfilingEvent(profile_id: string, start_timestamp: number | undefined, profile: JSSelfProfile, event: ProfiledEvent): Profile | null;
|
|
98
|
-
/**
|
|
99
|
-
*
|
|
100
|
-
*/
|
|
101
|
-
export declare function getActiveProfilesCount(): number;
|
|
102
|
-
/**
|
|
103
|
-
* Retrieves profile from global cache and removes it.
|
|
104
|
-
*/
|
|
105
|
-
export declare function takeProfileFromGlobalCache(profile_id: string): JSSelfProfile | undefined;
|
|
106
|
-
/**
|
|
107
|
-
* Adds profile to global cache and evicts the oldest profile if the cache is full.
|
|
108
|
-
*/
|
|
109
|
-
export declare function addProfileToGlobalCache(profile_id: string, profile: JSSelfProfile): void;
|
|
110
|
-
export declare const PROFILED_ROOT_SPANS: WeakSet<Span>;
|
|
111
38
|
export declare function setThreadAttributes(span: Span): void;
|
|
112
39
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/profiling/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/profiling/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAA8B,UAAU,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAS/G,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAGhD,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAA6B,MAAM,mBAAmB,CAAC;AAMlG,eAAO,MAAM,yBAAyB,QAAY,CAAC;AACnD,eAAO,MAAM,oBAAoB,QAAmC,CAAC;AAErE;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,aAAa,EAAE,aAAa,EAC5B,MAAM,EAAE,MAAM,EACd,UAAU,CAAC,EAAE,MAAM,GAClB,YAAY,CA8Bd;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,YAAY,GAAG;IAAE,KAAK,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAwC9F;AAsED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,cAAc,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,UAAU,EAAE,CAUtF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAuBxD;AAKD,eAAO,MAAM,uBAAuB,QAAS,CAAC;AAU9C;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,cAAc,GAAG,SAAS,CAgC/D;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CA+BrE;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAGpD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../../src/sdk.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAWzE,OAAO,KAAK,EAAwB,cAAc,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../../src/sdk.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAWzE,OAAO,KAAK,EAAwB,cAAc,EAAE,MAAM,UAAU,CAAC;AAerE,wDAAwD;AACxD,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,OAAO,GAAG,WAAW,EAAE,CAkBvE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,wBAAgB,IAAI,CAAC,OAAO,GAAE,cAAmB,GAAG,MAAM,GAAG,SAAS,CAiCrE;AAED;;;GAGG;AACH,wBAAgB,SAAS,IAAI,IAAI,CAEhC;AAED;;;GAGG;AACH,wBAAgB,MAAM,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI,CAEjD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backgroundtab.d.ts","sourceRoot":"","sources":["../../../../src/tracing/backgroundtab.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"backgroundtab.d.ts","sourceRoot":"","sources":["../../../../src/tracing/backgroundtab.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,wBAAgB,8BAA8B,IAAI,IAAI,CAmCrD"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import type { Client, RequestHookInfo, ResponseHookInfo, Span, StartSpanOptions } from '@sentry/core/browser';
|
|
2
2
|
export declare const BROWSER_TRACING_INTEGRATION_ID = "BrowserTracing";
|
|
3
|
-
export declare function isBotUserAgent(): boolean;
|
|
4
3
|
/** Options for Browser Tracing integration */
|
|
5
4
|
export interface BrowserTracingOptions {
|
|
6
5
|
/**
|
|
@@ -79,16 +78,6 @@ export interface BrowserTracingOptions {
|
|
|
79
78
|
* Default: true
|
|
80
79
|
*/
|
|
81
80
|
traceXHR: boolean;
|
|
82
|
-
/**
|
|
83
|
-
* Flag to disable tracking of long-lived streams, like server-sent events (SSE) via fetch.
|
|
84
|
-
* Do not enable this in case you have live streams or very long running streams.
|
|
85
|
-
*
|
|
86
|
-
* Default: false
|
|
87
|
-
*
|
|
88
|
-
* @deprecated Use `fetchStreamPerformanceIntegration()` instead. Add it to your `integrations` array
|
|
89
|
-
* to track the duration of streamed fetch response bodies.
|
|
90
|
-
*/
|
|
91
|
-
trackFetchStreamPerformance: boolean;
|
|
92
81
|
/**
|
|
93
82
|
* If true, Sentry will capture http timings and add them to the corresponding http spans.
|
|
94
83
|
*
|
|
@@ -164,14 +153,6 @@ export interface BrowserTracingOptions {
|
|
|
164
153
|
* page load time.
|
|
165
154
|
*/
|
|
166
155
|
enableReportPageLoaded: boolean;
|
|
167
|
-
/**
|
|
168
|
-
* _experiments allows the user to send options to define how this integration works.
|
|
169
|
-
*
|
|
170
|
-
* Default: undefined
|
|
171
|
-
*/
|
|
172
|
-
_experiments: Partial<{
|
|
173
|
-
enableInteractions: boolean;
|
|
174
|
-
}>;
|
|
175
156
|
/**
|
|
176
157
|
* A callback which is called before a span for a pageload or navigation is started.
|
|
177
158
|
* It receives the options passed to `startSpan`, and expects to return an updated options object.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browserTracingIntegration.d.ts","sourceRoot":"","sources":["../../../../src/tracing/browserTracingIntegration.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,MAAM,EAEN,eAAe,EACf,gBAAgB,EAChB,IAAI,EACJ,gBAAgB,
|
|
1
|
+
{"version":3,"file":"browserTracingIntegration.d.ts","sourceRoot":"","sources":["../../../../src/tracing/browserTracingIntegration.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,MAAM,EAEN,eAAe,EACf,gBAAgB,EAChB,IAAI,EACJ,gBAAgB,EACjB,MAAM,sBAAsB,CAAC;AAgD9B,eAAO,MAAM,8BAA8B,mBAAmB,CAAC;AAE/D,8CAA8C;AAC9C,MAAM,WAAW,qBAAqB;IACpC;;;;;OAKG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;;;;OAKG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;;;;OAKG;IACH,gBAAgB,EAAE,MAAM,CAAC;IAEzB;;;;OAIG;IACH,kBAAkB,EAAE,OAAO,CAAC;IAE5B;;;;OAIG;IACH,oBAAoB,EAAE,OAAO,CAAC;IAE9B;;;;;;OAMG;IACH,kBAAkB,EAAE,OAAO,CAAC;IAE5B;;;;OAIG;IACH,cAAc,EAAE,OAAO,CAAC;IAExB;;;;OAIG;IACH,wBAAwB,EAAE,OAAO,CAAC;IAElC;;;;OAIG;IACH,SAAS,EAAE,OAAO,CAAC;IAEnB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B;;;;OAIG;IACH,UAAU,EAAE,OAAO,CAAC;IAEpB;;;;OAIG;IACH,QAAQ,EAAE,OAAO,CAAC;IAElB;;;;OAIG;IACH,iBAAiB,EAAE,OAAO,CAAC;IAE3B;;;;OAIG;IACH,mBAAmB,EAAE,KAAK,CAAC,iBAAiB,GAAG,cAAc,GAAG,cAAc,GAAG,gBAAgB,GAAG,MAAM,CAAC,CAAC;IAE5G;;;;;OAKG;IACH,eAAe,EAAE,OAAO,CAAC;IAEzB;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,iBAAiB,EAAE,WAAW,GAAG,iBAAiB,GAAG,KAAK,CAAC;IAE3D;;;;;;;;;;;;;;OAcG;IACH,uBAAuB,EAAE,OAAO,CAAC;IAEjC;;;;;;;;;;;;;;OAcG;IACH,sBAAsB,EAAE,OAAO,CAAC;IAEhC;;;OAGG;IACH,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,gBAAgB,KAAK,gBAAgB,CAAC;IAElE;;;;;OAKG;IACH,0BAA0B,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAE9D;;;;OAIG;IACH,kBAAkB,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,kBAAkB,EAAE,eAAe,GAAG,IAAI,CAAC;IAE3E;;OAEG;IACH,gBAAgB,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,mBAAmB,EAAE,gBAAgB,GAAG,IAAI,CAAC;CAC5E;AAkBD;;;;;;;;GAQG;AACH,eAAO,MAAM,yBAAyB,aAAc,OAAO,CAAC,qBAAqB,CAAC;;;;CAiYxD,CAAC;AAE3B;;;;;;GAMG;AACH,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,gBAAgB,EAC7B,YAAY,CAAC,EAAE;IAAE,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,GAChF,IAAI,GAAG,SAAS,CAyBlB;AAED;;;GAGG;AACH,wBAAgB,iCAAiC,CAC/C,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,gBAAgB,EAC7B,OAAO,CAAC,EAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,GAC/C,IAAI,GAAG,SAAS,CA0BlB;AAED,sCAAsC;AACtC,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CASnE;AAED,uDAAuD;AACvD,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAQhE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"linkedTraces.d.ts","sourceRoot":"","sources":["../../../../src/tracing/linkedTraces.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"linkedTraces.d.ts","sourceRoot":"","sources":["../../../../src/tracing/linkedTraces.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAc9F,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,WAAW,EAAE,eAAe,CAAC;IAE7B;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;CACpB;AAGD,eAAO,MAAM,2BAA2B,OAAO,CAAC;AAGhD,eAAO,MAAM,kBAAkB,0BAA0B,CAAC;AAE1D,eAAO,MAAM,iCAAiC,0BAA0B,CAAC;AAEzE;;;;GAIG;AACH,wBAAgB,UAAU,CACxB,MAAM,EAAE,MAAM,EACd,EACE,iBAAiB,EACjB,uBAAuB,GACxB,EAAE;IACD,iBAAiB,EAAE,iBAAiB,GAAG,WAAW,CAAC;IACnD,uBAAuB,EAAE,OAAO,CAAC;CAClC,GACA,IAAI,CAoEN;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACtC,iBAAiB,EAAE,iBAAiB,GAAG,SAAS,EAChD,IAAI,EAAE,IAAI,EACV,qBAAqB,EAAE,kBAAkB,GACxC,iBAAiB,CAoEnB;AAED;;GAEG;AACH,wBAAgB,kCAAkC,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,IAAI,CAO7F;AAED;;GAEG;AACH,wBAAgB,kCAAkC,IAAI,iBAAiB,GAAG,SAAS,CAQlF;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAEhE"}
|
|
@@ -19,6 +19,7 @@ export interface RequestInstrumentationOptions {
|
|
|
19
19
|
*
|
|
20
20
|
* If any of the two match any of the provided values, tracing headers will be attached to the outgoing request.
|
|
21
21
|
* Both, the string values, and the RegExes you provide in the array will match if they partially match the URL or pathname.
|
|
22
|
+
* Matching is case-insensitive, so `'myApi.com'` and `/^myApi\.com/` both match a request to `https://myapi.com`.
|
|
22
23
|
*
|
|
23
24
|
* Examples:
|
|
24
25
|
* - `tracePropagationTargets: [/^\/api/]` and request to `https://same-origin.com/api/posts`:
|
|
@@ -41,19 +42,6 @@ export interface RequestInstrumentationOptions {
|
|
|
41
42
|
* Default: true
|
|
42
43
|
*/
|
|
43
44
|
traceXHR: boolean;
|
|
44
|
-
/**
|
|
45
|
-
* Flag to disable tracking of long-lived streams, like server-sent events (SSE) via fetch.
|
|
46
|
-
* Do not enable this in case you have live streams or very long running streams.
|
|
47
|
-
*
|
|
48
|
-
* Disabled by default since it can lead to issues with streams using the `cancel()` api
|
|
49
|
-
* (https://github.com/getsentry/sentry-javascript/issues/13950)
|
|
50
|
-
*
|
|
51
|
-
* Default: false
|
|
52
|
-
*
|
|
53
|
-
* @deprecated Use `fetchStreamPerformanceIntegration()` instead. Add it to your `integrations` array
|
|
54
|
-
* to track the duration of streamed fetch response bodies.
|
|
55
|
-
*/
|
|
56
|
-
trackFetchStreamPerformance: boolean;
|
|
57
45
|
/**
|
|
58
46
|
* If true, Sentry will capture http timings and add them to the corresponding http spans.
|
|
59
47
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../../../src/tracing/request.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../../../src/tracing/request.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,gBAAgB,EAAE,IAAI,EAAiB,MAAM,sBAAsB,CAAC;AAsC3G,0CAA0C;AAC1C,MAAM,WAAW,6BAA6B;IAC5C;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,uBAAuB,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;IAEjD;;;;OAIG;IACH,UAAU,EAAE,OAAO,CAAC;IAEpB;;;;OAIG;IACH,QAAQ,EAAE,OAAO,CAAC;IAElB;;;;OAIG;IACH,iBAAiB,EAAE,OAAO,CAAC;IAE3B;;;;;OAKG;IACH,0BAA0B,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAE9D;;OAEG;IACH,kBAAkB,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,kBAAkB,EAAE,eAAe,GAAG,IAAI,CAAC;IAE3E;;OAEG;IACH,gBAAgB,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,mBAAmB,EAAE,gBAAgB,GAAG,IAAI,CAAC;CAC5E;AAED,eAAO,MAAM,oCAAoC,EAAE,6BAIlD,CAAC;AAEF,0DAA0D;AAC1D,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,CAAC,6BAA6B,CAAC,GAAG,IAAI,CAyElH;AAiED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,MAAM,EACjB,uBAAuB,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,SAAS,GACvD,OAAO,CAqCT"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detectBrowserExtension.d.ts","sourceRoot":"","sources":["../../../../src/utils/detectBrowserExtension.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"detectBrowserExtension.d.ts","sourceRoot":"","sources":["../../../../src/utils/detectBrowserExtension.ts"],"names":[],"mappings":"AAgBA;;;GAGG;AACH,wBAAgB,wCAAwC,IAAI,OAAO,CAelE"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { IntegrationFn } from '@sentry/core/browser';
|
|
2
|
-
declare const LAZY_LOADABLE_NAMES: readonly ['replayIntegration', 'replayCanvasIntegration', 'feedbackIntegration', 'feedbackModalIntegration', 'feedbackScreenshotIntegration', 'captureConsoleIntegration', 'contextLinesIntegration', 'linkedErrorsIntegration', 'dedupeIntegration', 'extraErrorDataIntegration', 'graphqlClientIntegration', 'httpClientIntegration', 'reportingObserverIntegration', 'rewriteFramesIntegration', 'browserProfilingIntegration', 'userTimingIntegration', 'moduleMetadataIntegration'];
|
|
2
|
+
declare const LAZY_LOADABLE_NAMES: readonly ['replayIntegration', 'replayCanvasIntegration', 'feedbackIntegration', 'feedbackModalIntegration', 'feedbackScreenshotIntegration', 'captureConsoleIntegration', 'contextLinesIntegration', 'linkedErrorsIntegration', 'dedupeIntegration', 'extraErrorDataIntegration', 'graphqlClientIntegration', 'httpClientIntegration', 'reportingObserverIntegration', 'rewriteFramesIntegration', 'browserProfilingIntegration', 'userTimingIntegration', 'interactionsIntegration', 'moduleMetadataIntegration'];
|
|
3
3
|
type ElementOf<T extends readonly unknown[]> = T[number];
|
|
4
4
|
type LazyLoadableIntegrationName = ElementOf<typeof LAZY_LOADABLE_NAMES>;
|
|
5
5
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lazyLoadIntegration.d.ts","sourceRoot":"","sources":["../../../../src/utils/lazyLoadIntegration.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAQ1D,QAAA,MAAM,mBAAmB,YACvB,mBAAmB,EACnB,yBAAyB,EACzB,qBAAqB,EACrB,0BAA0B,EAC1B,+BAA+B,EAC/B,2BAA2B,EAC3B,yBAAyB,EACzB,yBAAyB,EACzB,mBAAmB,EACnB,2BAA2B,EAC3B,0BAA0B,EAC1B,uBAAuB,EACvB,8BAA8B,EAC9B,0BAA0B,EAC1B,6BAA6B,EAC7B,uBAAuB,EACvB,2BAA2B,CACnB,CAAC;AAEX,KAAK,SAAS,CAAC,CAAC,SAAS,SAAS,OAAO,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC;AACzD,KAAK,2BAA2B,GAAG,SAAS,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAgBzE;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,2BAA2B,EACjC,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,aAAa,CAAC,CAwDxB"}
|
|
1
|
+
{"version":3,"file":"lazyLoadIntegration.d.ts","sourceRoot":"","sources":["../../../../src/utils/lazyLoadIntegration.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAQ1D,QAAA,MAAM,mBAAmB,YACvB,mBAAmB,EACnB,yBAAyB,EACzB,qBAAqB,EACrB,0BAA0B,EAC1B,+BAA+B,EAC/B,2BAA2B,EAC3B,yBAAyB,EACzB,yBAAyB,EACzB,mBAAmB,EACnB,2BAA2B,EAC3B,0BAA0B,EAC1B,uBAAuB,EACvB,8BAA8B,EAC9B,0BAA0B,EAC1B,6BAA6B,EAC7B,uBAAuB,EACvB,yBAAyB,EACzB,2BAA2B,CACnB,CAAC;AAEX,KAAK,SAAS,CAAC,CAAC,SAAS,SAAS,OAAO,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC;AACzD,KAAK,2BAA2B,GAAG,SAAS,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAgBzE;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,2BAA2B,EACjC,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,aAAa,CAAC,CAwDxB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sentry/browser",
|
|
3
|
-
"version": "11.0.0-alpha.
|
|
3
|
+
"version": "11.0.0-alpha.2",
|
|
4
4
|
"description": "Official Sentry SDK for browsers",
|
|
5
5
|
"repository": "git://github.com/getsentry/sentry-javascript.git",
|
|
6
6
|
"homepage": "https://github.com/getsentry/sentry-javascript/tree/master/packages/browser",
|
|
@@ -38,16 +38,16 @@
|
|
|
38
38
|
"access": "public"
|
|
39
39
|
},
|
|
40
40
|
"dependencies": {
|
|
41
|
-
"@sentry/browser-utils": "11.0.0-alpha.
|
|
42
|
-
"@sentry/conventions": "^0.
|
|
43
|
-
"@sentry/feedback": "11.0.0-alpha.
|
|
44
|
-
"@sentry/replay": "11.0.0-alpha.
|
|
45
|
-
"@sentry/replay-canvas": "11.0.0-alpha.
|
|
46
|
-
"@sentry/core": "11.0.0-alpha.
|
|
41
|
+
"@sentry/browser-utils": "11.0.0-alpha.2",
|
|
42
|
+
"@sentry/conventions": "^0.20.0",
|
|
43
|
+
"@sentry/feedback": "11.0.0-alpha.2",
|
|
44
|
+
"@sentry/replay": "11.0.0-alpha.2",
|
|
45
|
+
"@sentry/replay-canvas": "11.0.0-alpha.2",
|
|
46
|
+
"@sentry/core": "11.0.0-alpha.2"
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
|
-
"@sentry-internal/integration-shims": "11.0.0-alpha.
|
|
50
|
-
"fake-indexeddb": "^6.2.
|
|
49
|
+
"@sentry-internal/integration-shims": "11.0.0-alpha.2",
|
|
50
|
+
"fake-indexeddb": "^6.2.5"
|
|
51
51
|
},
|
|
52
52
|
"scripts": {
|
|
53
53
|
"build": "run-p build:transpile build:bundle build:types",
|
|
@@ -64,6 +64,7 @@
|
|
|
64
64
|
"clean": "rimraf build coverage .rpt2_cache sentry-browser-*.tgz",
|
|
65
65
|
"lint:fix": "oxlint . --fix --type-aware",
|
|
66
66
|
"lint": "oxlint . --type-aware",
|
|
67
|
+
"lint:types": "oxlint src --type-aware --type-check",
|
|
67
68
|
"lint:es-compatibility": "es-check es2020 ./build/{bundles,npm/cjs/prod}/*.js && es-check es2020 ./build/npm/esm/prod/*.js --module",
|
|
68
69
|
"size:check": "cat build/bundles/bundle.min.js | gzip -9 | wc -c | awk '{$1=$1/1024; print \"ES2017: \",$1,\"kB\";}'",
|
|
69
70
|
"test": "vitest run",
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
-
|
|
3
|
-
const browser = require('@sentry/core/browser');
|
|
4
|
-
const debugBuild = require('../debug-build.js');
|
|
5
|
-
|
|
6
|
-
const INTEGRATION_NAME = "SpanStreaming";
|
|
7
|
-
const spanStreamingIntegration = browser.defineIntegration(() => {
|
|
8
|
-
return {
|
|
9
|
-
name: INTEGRATION_NAME,
|
|
10
|
-
setup(client) {
|
|
11
|
-
if (!browser.hasSpanStreamingEnabled(client)) {
|
|
12
|
-
debugBuild.DEBUG_BUILD && browser.debug.log(`[${INTEGRATION_NAME}] \`traceLifecycle\` is "static", skipping setup.`);
|
|
13
|
-
return;
|
|
14
|
-
}
|
|
15
|
-
const buffer = new browser.SpanBuffer(client);
|
|
16
|
-
client.on("afterSpanEnd", (span) => {
|
|
17
|
-
if (!browser.spanIsSampled(span)) {
|
|
18
|
-
return;
|
|
19
|
-
}
|
|
20
|
-
buffer.add(browser.captureSpan(span, client));
|
|
21
|
-
});
|
|
22
|
-
client.on("afterSegmentSpanEnd", (segmentSpan) => {
|
|
23
|
-
const traceId = segmentSpan.spanContext().traceId;
|
|
24
|
-
setTimeout(() => {
|
|
25
|
-
buffer.flush(traceId);
|
|
26
|
-
}, 500);
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
};
|
|
30
|
-
});
|
|
31
|
-
|
|
32
|
-
exports.INTEGRATION_NAME = INTEGRATION_NAME;
|
|
33
|
-
exports.spanStreamingIntegration = spanStreamingIntegration;
|
|
34
|
-
//# sourceMappingURL=spanstreaming.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"spanstreaming.js","sources":["../../../../../src/integrations/spanstreaming.ts"],"sourcesContent":["import type { IntegrationFn } from '@sentry/core/browser';\nimport {\n captureSpan,\n debug,\n defineIntegration,\n hasSpanStreamingEnabled,\n SpanBuffer,\n spanIsSampled,\n} from '@sentry/core/browser';\nimport { DEBUG_BUILD } from '../debug-build';\n\nexport const INTEGRATION_NAME = 'SpanStreaming' as const;\n\nexport const spanStreamingIntegration = defineIntegration(() => {\n return {\n name: INTEGRATION_NAME,\n setup(client) {\n if (!hasSpanStreamingEnabled(client)) {\n DEBUG_BUILD && debug.log(`[${INTEGRATION_NAME}] \\`traceLifecycle\\` is \"static\", skipping setup.`);\n return;\n }\n\n const buffer = new SpanBuffer(client);\n\n client.on('afterSpanEnd', span => {\n // Negatively sampled spans must not be captured.\n // This happens because OTel and we create non-recording spans for negatively sampled spans\n // that go through the same life cycle as recording spans.\n if (!spanIsSampled(span)) {\n return;\n }\n buffer.add(captureSpan(span, client));\n });\n\n // In addition to capturing the span, we also flush the trace when the segment\n // span ends to ensure things are sent timely. We never know when the browser\n // is closed, users navigate away, etc.\n client.on('afterSegmentSpanEnd', segmentSpan => {\n const traceId = segmentSpan.spanContext().traceId;\n setTimeout(() => {\n buffer.flush(traceId);\n }, 500);\n });\n },\n };\n}) satisfies IntegrationFn;\n"],"names":["defineIntegration","hasSpanStreamingEnabled","DEBUG_BUILD","debug","SpanBuffer","spanIsSampled","captureSpan"],"mappings":";;;;;AAWO,MAAM,gBAAA,GAAmB;AAEzB,MAAM,wBAAA,GAA2BA,0BAAkB,MAAM;AAC9D,EAAA,OAAO;AAAA,IACL,IAAA,EAAM,gBAAA;AAAA,IACN,MAAM,MAAA,EAAQ;AACZ,MAAA,IAAI,CAACC,+BAAA,CAAwB,MAAM,CAAA,EAAG;AACpC,QAAAC,sBAAA,IAAeC,aAAA,CAAM,GAAA,CAAI,CAAA,CAAA,EAAI,gBAAgB,CAAA,iDAAA,CAAmD,CAAA;AAChG,QAAA;AAAA,MACF;AAEA,MAAA,MAAM,MAAA,GAAS,IAAIC,kBAAA,CAAW,MAAM,CAAA;AAEpC,MAAA,MAAA,CAAO,EAAA,CAAG,gBAAgB,CAAA,IAAA,KAAQ;AAIhC,QAAA,IAAI,CAACC,qBAAA,CAAc,IAAI,CAAA,EAAG;AACxB,UAAA;AAAA,QACF;AACA,QAAA,MAAA,CAAO,GAAA,CAAIC,mBAAA,CAAY,IAAA,EAAM,MAAM,CAAC,CAAA;AAAA,MACtC,CAAC,CAAA;AAKD,MAAA,MAAA,CAAO,EAAA,CAAG,uBAAuB,CAAA,WAAA,KAAe;AAC9C,QAAA,MAAM,OAAA,GAAU,WAAA,CAAY,WAAA,EAAY,CAAE,OAAA;AAC1C,QAAA,UAAA,CAAW,MAAM;AACf,UAAA,MAAA,CAAO,MAAM,OAAO,CAAA;AAAA,QACtB,GAAG,GAAG,CAAA;AAAA,MACR,CAAC,CAAA;AAAA,IACH;AAAA,GACF;AACF,CAAC;;;;;"}
|
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
-
|
|
3
|
-
const browser = require('@sentry/core/browser');
|
|
4
|
-
const debugBuild = require('../debug-build.js');
|
|
5
|
-
const helpers = require('../helpers.js');
|
|
6
|
-
const utils = require('./utils.js');
|
|
7
|
-
|
|
8
|
-
function startProfileForSpan(span) {
|
|
9
|
-
let startTimestamp;
|
|
10
|
-
if (utils.isAutomatedPageLoadSpan(span)) {
|
|
11
|
-
startTimestamp = browser.timestampInSeconds() * 1e3;
|
|
12
|
-
}
|
|
13
|
-
const profiler = utils.startJSSelfProfile();
|
|
14
|
-
if (!profiler) {
|
|
15
|
-
return;
|
|
16
|
-
}
|
|
17
|
-
if (debugBuild.DEBUG_BUILD) {
|
|
18
|
-
browser.debug.log(`[Profiling] started profiling span: ${browser.spanToJSON(span).description}`);
|
|
19
|
-
}
|
|
20
|
-
const profileId = browser.uuid4();
|
|
21
|
-
let processedProfile = null;
|
|
22
|
-
browser.getCurrentScope().setContext("profile", {
|
|
23
|
-
profile_id: profileId,
|
|
24
|
-
start_timestamp: startTimestamp
|
|
25
|
-
});
|
|
26
|
-
utils.PROFILED_ROOT_SPANS.add(span);
|
|
27
|
-
utils.setThreadAttributes(span);
|
|
28
|
-
async function onProfileHandler() {
|
|
29
|
-
if (!span) {
|
|
30
|
-
return;
|
|
31
|
-
}
|
|
32
|
-
if (!profiler) {
|
|
33
|
-
return;
|
|
34
|
-
}
|
|
35
|
-
if (processedProfile) {
|
|
36
|
-
if (debugBuild.DEBUG_BUILD) {
|
|
37
|
-
browser.debug.log("[Profiling] profile for:", browser.spanToJSON(span).description, "already exists, returning early");
|
|
38
|
-
}
|
|
39
|
-
return;
|
|
40
|
-
}
|
|
41
|
-
return profiler.stop().then((profile) => {
|
|
42
|
-
if (maxDurationTimeoutID) {
|
|
43
|
-
helpers.WINDOW.clearTimeout(maxDurationTimeoutID);
|
|
44
|
-
maxDurationTimeoutID = void 0;
|
|
45
|
-
}
|
|
46
|
-
if (debugBuild.DEBUG_BUILD) {
|
|
47
|
-
browser.debug.log(`[Profiling] stopped profiling of span: ${browser.spanToJSON(span).description}`);
|
|
48
|
-
}
|
|
49
|
-
if (!profile) {
|
|
50
|
-
if (debugBuild.DEBUG_BUILD) {
|
|
51
|
-
browser.debug.log(
|
|
52
|
-
`[Profiling] profiler returned null profile for: ${browser.spanToJSON(span).description}`,
|
|
53
|
-
"this may indicate an overlapping span or a call to stopProfiling with a profile title that was never started"
|
|
54
|
-
);
|
|
55
|
-
}
|
|
56
|
-
return;
|
|
57
|
-
}
|
|
58
|
-
processedProfile = profile;
|
|
59
|
-
utils.addProfileToGlobalCache(profileId, profile);
|
|
60
|
-
}).catch((error) => {
|
|
61
|
-
if (debugBuild.DEBUG_BUILD) {
|
|
62
|
-
browser.debug.log("[Profiling] error while stopping profiler:", error);
|
|
63
|
-
}
|
|
64
|
-
});
|
|
65
|
-
}
|
|
66
|
-
let maxDurationTimeoutID = helpers.WINDOW.setTimeout(() => {
|
|
67
|
-
if (debugBuild.DEBUG_BUILD) {
|
|
68
|
-
browser.debug.log("[Profiling] max profile duration elapsed, stopping profiling for:", browser.spanToJSON(span).description);
|
|
69
|
-
}
|
|
70
|
-
onProfileHandler();
|
|
71
|
-
}, utils.MAX_PROFILE_DURATION_MS);
|
|
72
|
-
const originalEnd = span.end.bind(span);
|
|
73
|
-
function profilingWrappedSpanEnd() {
|
|
74
|
-
if (!span) {
|
|
75
|
-
return originalEnd();
|
|
76
|
-
}
|
|
77
|
-
void onProfileHandler().then(
|
|
78
|
-
() => {
|
|
79
|
-
originalEnd();
|
|
80
|
-
},
|
|
81
|
-
() => {
|
|
82
|
-
originalEnd();
|
|
83
|
-
}
|
|
84
|
-
);
|
|
85
|
-
return span;
|
|
86
|
-
}
|
|
87
|
-
span.end = profilingWrappedSpanEnd;
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
exports.startProfileForSpan = startProfileForSpan;
|
|
91
|
-
//# sourceMappingURL=startProfileForSpan.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"startProfileForSpan.js","sources":["../../../../../src/profiling/startProfileForSpan.ts"],"sourcesContent":["import type { Span } from '@sentry/core/browser';\nimport { debug, getCurrentScope, spanToJSON, timestampInSeconds, uuid4 } from '@sentry/core/browser';\nimport { DEBUG_BUILD } from '../debug-build';\nimport { WINDOW } from '../helpers';\nimport type { JSSelfProfile } from './jsSelfProfiling';\nimport {\n addProfileToGlobalCache,\n isAutomatedPageLoadSpan,\n MAX_PROFILE_DURATION_MS,\n PROFILED_ROOT_SPANS,\n setThreadAttributes,\n startJSSelfProfile,\n} from './utils';\n\n/**\n * Wraps startTransaction and stopTransaction with profiling related logic.\n * startProfileForTransaction is called after the call to startTransaction in order to avoid our own code from\n * being profiled. Because of that same reason, stopProfiling is called before the call to stopTransaction.\n */\nexport function startProfileForSpan(span: Span): void {\n // Start the profiler and get the profiler instance.\n let startTimestamp: number | undefined;\n if (isAutomatedPageLoadSpan(span)) {\n startTimestamp = timestampInSeconds() * 1000;\n }\n\n const profiler = startJSSelfProfile();\n\n // We failed to construct the profiler, so we skip.\n // No need to log anything as this has already been logged in startProfile.\n if (!profiler) {\n return;\n }\n\n if (DEBUG_BUILD) {\n debug.log(`[Profiling] started profiling span: ${spanToJSON(span).description}`);\n }\n\n // We create \"unique\" span names to avoid concurrent spans with same names\n // from being ignored by the profiler. From here on, only this span name should be used when\n // calling the profiler methods. Note: we log the original name to the user to avoid confusion.\n const profileId = uuid4();\n\n // A couple of important things to note here:\n // `CpuProfilerBindings.stopProfiling` will be scheduled to run in 30seconds in order to exceed max profile duration.\n // Whichever of the two (span.finish/timeout) is first to run, the profiling will be stopped and the gathered profile\n // will be processed when the original span is finished. Since onProfileHandler can be invoked multiple times in the\n // event of an error or user mistake (calling span.finish multiple times), it is important that the behavior of onProfileHandler\n // is idempotent as we do not want any timings or profiles to be overridden by the last call to onProfileHandler.\n // After the original finish method is called, the event will be reported through the integration and delegated to transport.\n let processedProfile: JSSelfProfile | null = null;\n\n getCurrentScope().setContext('profile', {\n profile_id: profileId,\n start_timestamp: startTimestamp,\n });\n\n PROFILED_ROOT_SPANS.add(span);\n setThreadAttributes(span);\n\n /**\n * Idempotent handler for profile stop\n */\n async function onProfileHandler(): Promise<void> {\n // Check if the profile exists and return it the behavior has to be idempotent as users may call span.finish multiple times.\n if (!span) {\n return;\n }\n // Satisfy the type checker, but profiler will always be defined here.\n if (!profiler) {\n return;\n }\n if (processedProfile) {\n if (DEBUG_BUILD) {\n debug.log('[Profiling] profile for:', spanToJSON(span).description, 'already exists, returning early');\n }\n return;\n }\n\n return profiler\n .stop()\n .then((profile: JSSelfProfile): void => {\n if (maxDurationTimeoutID) {\n WINDOW.clearTimeout(maxDurationTimeoutID);\n maxDurationTimeoutID = undefined;\n }\n\n if (DEBUG_BUILD) {\n debug.log(`[Profiling] stopped profiling of span: ${spanToJSON(span).description}`);\n }\n\n // In case of an overlapping span, stopProfiling may return null and silently ignore the overlapping profile.\n if (!profile) {\n if (DEBUG_BUILD) {\n debug.log(\n `[Profiling] profiler returned null profile for: ${spanToJSON(span).description}`,\n 'this may indicate an overlapping span or a call to stopProfiling with a profile title that was never started',\n );\n }\n return;\n }\n\n processedProfile = profile;\n addProfileToGlobalCache(profileId, profile);\n })\n .catch(error => {\n if (DEBUG_BUILD) {\n debug.log('[Profiling] error while stopping profiler:', error);\n }\n });\n }\n\n // Enqueue a timeout to prevent profiles from running over max duration.\n let maxDurationTimeoutID: number | undefined = WINDOW.setTimeout(() => {\n if (DEBUG_BUILD) {\n debug.log('[Profiling] max profile duration elapsed, stopping profiling for:', spanToJSON(span).description);\n }\n // If the timeout exceeds, we want to stop profiling, but not finish the span\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n onProfileHandler();\n }, MAX_PROFILE_DURATION_MS);\n\n // We need to reference the original end call to avoid creating an infinite loop\n const originalEnd = span.end.bind(span);\n\n /**\n * Wraps span `end()` with profiling related logic.\n * startProfiling is called after the call to spanStart in order to avoid our own code from\n * being profiled. Because of that same reason, stopProfiling is called before the call to spanEnd.\n */\n function profilingWrappedSpanEnd(): Span {\n if (!span) {\n return originalEnd();\n }\n // onProfileHandler should always return the same profile even if this is called multiple times.\n // Always call onProfileHandler to ensure stopProfiling is called and the timeout is cleared.\n void onProfileHandler().then(\n () => {\n originalEnd();\n },\n () => {\n // If onProfileHandler fails, we still want to call the original finish method.\n originalEnd();\n },\n );\n\n return span;\n }\n\n span.end = profilingWrappedSpanEnd;\n}\n"],"names":["isAutomatedPageLoadSpan","timestampInSeconds","startJSSelfProfile","DEBUG_BUILD","debug","spanToJSON","uuid4","getCurrentScope","PROFILED_ROOT_SPANS","setThreadAttributes","WINDOW","addProfileToGlobalCache","MAX_PROFILE_DURATION_MS"],"mappings":"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"}
|