diff --git a/dev-packages/browser-integration-tests/suites/errors/fetch-enhance-messages-off/init.js b/dev-packages/browser-integration-tests/suites/errors/fetch-enhance-messages-off/init.js index 0ca6f3d1f855..783f188b3ba2 100644 --- a/dev-packages/browser-integration-tests/suites/errors/fetch-enhance-messages-off/init.js +++ b/dev-packages/browser-integration-tests/suites/errors/fetch-enhance-messages-off/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', enhanceFetchErrorMessages: false, }); diff --git a/dev-packages/browser-integration-tests/suites/errors/fetch-enhance-messages-report-only/init.js b/dev-packages/browser-integration-tests/suites/errors/fetch-enhance-messages-report-only/init.js index 9de3c3f1bf62..535d3397fb60 100644 --- a/dev-packages/browser-integration-tests/suites/errors/fetch-enhance-messages-report-only/init.js +++ b/dev-packages/browser-integration-tests/suites/errors/fetch-enhance-messages-report-only/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', enhanceFetchErrorMessages: 'report-only', }); diff --git a/dev-packages/browser-integration-tests/suites/errors/fetch/init.js b/dev-packages/browser-integration-tests/suites/errors/fetch/init.js index d9c534b801cd..d8c94f36fdd0 100644 --- a/dev-packages/browser-integration-tests/suites/errors/fetch/init.js +++ b/dev-packages/browser-integration-tests/suites/errors/fetch/init.js @@ -3,6 +3,5 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/feedback/attachTo/init.js b/dev-packages/browser-integration-tests/suites/feedback/attachTo/init.js index be51e911f499..740fb69558ed 100644 --- a/dev-packages/browser-integration-tests/suites/feedback/attachTo/init.js +++ b/dev-packages/browser-integration-tests/suites/feedback/attachTo/init.js @@ -10,7 +10,6 @@ window.Sentry = Sentry; window.feedback = feedback; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [feedback], }); diff --git a/dev-packages/browser-integration-tests/suites/feedback/captureFeedback/init.js b/dev-packages/browser-integration-tests/suites/feedback/captureFeedback/init.js index d918418d502d..e6da8b5973bb 100644 --- a/dev-packages/browser-integration-tests/suites/feedback/captureFeedback/init.js +++ b/dev-packages/browser-integration-tests/suites/feedback/captureFeedback/init.js @@ -5,7 +5,6 @@ import { feedbackIntegration } from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [ feedbackIntegration({ diff --git a/dev-packages/browser-integration-tests/suites/feedback/captureFeedbackAndReplay/hasSampling/init.js b/dev-packages/browser-integration-tests/suites/feedback/captureFeedbackAndReplay/hasSampling/init.js index ec99f339e2c1..c8d5dbcdb232 100644 --- a/dev-packages/browser-integration-tests/suites/feedback/captureFeedbackAndReplay/hasSampling/init.js +++ b/dev-packages/browser-integration-tests/suites/feedback/captureFeedbackAndReplay/hasSampling/init.js @@ -5,7 +5,6 @@ import { feedbackIntegration } from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', replaysOnErrorSampleRate: 1.0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/feedback/captureFeedbackCsp/init.js b/dev-packages/browser-integration-tests/suites/feedback/captureFeedbackCsp/init.js index 81b53be75df9..27e5495f66a8 100644 --- a/dev-packages/browser-integration-tests/suites/feedback/captureFeedbackCsp/init.js +++ b/dev-packages/browser-integration-tests/suites/feedback/captureFeedbackCsp/init.js @@ -5,7 +5,6 @@ import { feedbackIntegration } from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [ feedbackIntegration({ tags: { from: 'integration init' }, styleNonce: 'foo1234', scriptNonce: 'foo1234' }), diff --git a/dev-packages/browser-integration-tests/suites/feedback/captureFeedbackWithProfiling/init.js b/dev-packages/browser-integration-tests/suites/feedback/captureFeedbackWithProfiling/init.js index 727d203aadd4..19dbc202c7e1 100644 --- a/dev-packages/browser-integration-tests/suites/feedback/captureFeedbackWithProfiling/init.js +++ b/dev-packages/browser-integration-tests/suites/feedback/captureFeedbackWithProfiling/init.js @@ -8,7 +8,6 @@ import { feedbackIntegration } from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [ Sentry.browserTracingIntegration(), diff --git a/dev-packages/browser-integration-tests/suites/feedback/captureFeedbackWithProfiling/test.ts b/dev-packages/browser-integration-tests/suites/feedback/captureFeedbackWithProfiling/test.ts index ecbb7c3790ec..a9ef9812ff41 100644 --- a/dev-packages/browser-integration-tests/suites/feedback/captureFeedbackWithProfiling/test.ts +++ b/dev-packages/browser-integration-tests/suites/feedback/captureFeedbackWithProfiling/test.ts @@ -1,11 +1,11 @@ import { expect } from '@playwright/test'; +import { getSpanOp, waitForStreamedSpan } from '../../../utils/spanUtils'; import { sentryTest } from '../../../utils/fixtures'; import { envelopeRequestParser, getEnvelopeType, shouldSkipFeedbackTest, shouldSkipTracingTest, - waitForTransactionRequest, } from '../../../utils/helpers'; sentryTest( @@ -21,8 +21,8 @@ sentryTest( responseHeaders: { 'Document-Policy': 'js-profiling' }, }); - // Wait for the pageload transaction to be sent (idle span ended) - const pageloadRequestPromise = waitForTransactionRequest(page, event => event.contexts?.trace?.op === 'pageload'); + // Wait for the idle pageload span to end. + const pageloadSpanPromise = waitForStreamedSpan(page, span => span.is_segment && getSpanOp(span) === 'pageload'); const feedbackRequestPromise = page.waitForResponse(res => { const req = res.request(); @@ -40,7 +40,7 @@ sentryTest( await page.goto(url); // Wait for the idle page load span to finish - const pageLoadEvent = envelopeRequestParser(await pageloadRequestPromise); + const pageloadSpan = await pageloadSpanPromise; // Submit feedback after idle span ended — no active span await page.getByText('Report a Bug').waitFor({ state: 'visible' }); @@ -55,11 +55,10 @@ sentryTest( expect(feedbackEvent.contexts?.trace?.trace_id).toMatch(/\w{32}/); expect(feedbackEvent.contexts?.trace?.span_id).toMatch(/\w{16}/); - // contexts.trace.data must include thread.id to identify which thread is associated with the transaction - expect(pageLoadEvent.contexts?.trace?.data?.['thread.id']).toBe('0'); - expect(pageLoadEvent.contexts?.trace?.data?.['thread.name']).toBe('main'); + expect(pageloadSpan.attributes['thread.id']).toEqual({ type: 'string', value: '0' }); + expect(pageloadSpan.attributes['thread.name']).toEqual({ type: 'string', value: 'main' }); - const profilerId = pageLoadEvent.contexts?.profile?.profiler_id; + const profilerId = pageloadSpan.attributes['sentry.profiler_id']?.value; expect(profilerId).toMatch(/^[a-f\d]{32}$/); expect(feedbackEvent.contexts?.profile?.profiler_id).toBe(profilerId); }, diff --git a/dev-packages/browser-integration-tests/suites/feedback/logger/init.js b/dev-packages/browser-integration-tests/suites/feedback/logger/init.js index 46e56c1330e3..3251bd6c7a4c 100644 --- a/dev-packages/browser-integration-tests/suites/feedback/logger/init.js +++ b/dev-packages/browser-integration-tests/suites/feedback/logger/init.js @@ -10,7 +10,6 @@ window.Sentry = Sentry; window.feedback = feedback; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', debug: true, integrations: [feedback], diff --git a/dev-packages/browser-integration-tests/suites/integrations/Breadcrumbs/console/init.js b/dev-packages/browser-integration-tests/suites/integrations/Breadcrumbs/console/init.js index 50c6a0433fd3..82fa0942064b 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/Breadcrumbs/console/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/Breadcrumbs/console/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', defaultIntegrations: false, integrations: [Sentry.breadcrumbsIntegration(), Sentry.consoleIntegration()], diff --git a/dev-packages/browser-integration-tests/suites/integrations/Breadcrumbs/dom/init.js b/dev-packages/browser-integration-tests/suites/integrations/Breadcrumbs/dom/init.js index 8830eefcc1c5..36806d01c6d0 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/Breadcrumbs/dom/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/Breadcrumbs/dom/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', defaultIntegrations: false, integrations: [Sentry.breadcrumbsIntegration()], diff --git a/dev-packages/browser-integration-tests/suites/integrations/Breadcrumbs/fetch/init.js b/dev-packages/browser-integration-tests/suites/integrations/Breadcrumbs/fetch/init.js index 8830eefcc1c5..36806d01c6d0 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/Breadcrumbs/fetch/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/Breadcrumbs/fetch/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', defaultIntegrations: false, integrations: [Sentry.breadcrumbsIntegration()], diff --git a/dev-packages/browser-integration-tests/suites/integrations/Breadcrumbs/history/init.js b/dev-packages/browser-integration-tests/suites/integrations/Breadcrumbs/history/init.js index 8830eefcc1c5..36806d01c6d0 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/Breadcrumbs/history/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/Breadcrumbs/history/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', defaultIntegrations: false, integrations: [Sentry.breadcrumbsIntegration()], diff --git a/dev-packages/browser-integration-tests/suites/integrations/Breadcrumbs/xhr/init.js b/dev-packages/browser-integration-tests/suites/integrations/Breadcrumbs/xhr/init.js index 8830eefcc1c5..36806d01c6d0 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/Breadcrumbs/xhr/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/Breadcrumbs/xhr/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', defaultIntegrations: false, integrations: [Sentry.breadcrumbsIntegration()], diff --git a/dev-packages/browser-integration-tests/suites/integrations/ContextLines/init.js b/dev-packages/browser-integration-tests/suites/integrations/ContextLines/init.js index 19eb351a12a9..cdcb68f2b48f 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/ContextLines/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/ContextLines/init.js @@ -4,7 +4,6 @@ import { contextLinesIntegration } from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [contextLinesIntegration()], }); diff --git a/dev-packages/browser-integration-tests/suites/integrations/browserApiErrors/init.js b/dev-packages/browser-integration-tests/suites/integrations/browserApiErrors/init.js index b5214b18f262..eac01ad8ff64 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/browserApiErrors/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/browserApiErrors/init.js @@ -12,7 +12,6 @@ const myClickListener = () => { btn.addEventListener('click', myClickListener); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/integrations/browserApiErrors/unregisterOriginalCallbacks/init.js b/dev-packages/browser-integration-tests/suites/integrations/browserApiErrors/unregisterOriginalCallbacks/init.js index d8f8833ee972..ecf0d4331b0d 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/browserApiErrors/unregisterOriginalCallbacks/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/browserApiErrors/unregisterOriginalCallbacks/init.js @@ -12,7 +12,6 @@ const myClickListener = () => { btn.addEventListener('click', myClickListener); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [ Sentry.browserApiErrorsIntegration({ diff --git a/dev-packages/browser-integration-tests/suites/integrations/captureConsole-attachStackTrace/init.js b/dev-packages/browser-integration-tests/suites/integrations/captureConsole-attachStackTrace/init.js index 0cc89d7a3328..d3f555f38933 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/captureConsole-attachStackTrace/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/captureConsole-attachStackTrace/init.js @@ -4,7 +4,6 @@ import { captureConsoleIntegration } from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [captureConsoleIntegration()], attachStacktrace: true, diff --git a/dev-packages/browser-integration-tests/suites/integrations/captureConsole/init.js b/dev-packages/browser-integration-tests/suites/integrations/captureConsole/init.js index 47b7cfd820ae..d265bdde9ed3 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/captureConsole/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/captureConsole/init.js @@ -4,7 +4,6 @@ import { captureConsoleIntegration } from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [captureConsoleIntegration()], attachStacktrace: false, diff --git a/dev-packages/browser-integration-tests/suites/integrations/cultureContext-streamed/init.js b/dev-packages/browser-integration-tests/suites/integrations/cultureContext-streamed/init.js deleted file mode 100644 index c69a872adc77..000000000000 --- a/dev-packages/browser-integration-tests/suites/integrations/cultureContext-streamed/init.js +++ /dev/null @@ -1,9 +0,0 @@ -import * as Sentry from '@sentry/browser'; - -window.Sentry = Sentry; - -Sentry.init({ - dsn: 'https://public@dsn.ingest.sentry.io/1337', - integrations: [Sentry.spanStreamingIntegration(), Sentry.browserTracingIntegration()], - tracesSampleRate: 1.0, -}); diff --git a/dev-packages/browser-integration-tests/suites/integrations/cultureContext-streamed/test.ts b/dev-packages/browser-integration-tests/suites/integrations/cultureContext-streamed/test.ts deleted file mode 100644 index 0d3484ef41bd..000000000000 --- a/dev-packages/browser-integration-tests/suites/integrations/cultureContext-streamed/test.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { expect } from '@playwright/test'; -import { sentryTest } from '../../../utils/fixtures'; -import { getSpanOp, waitForStreamedSpans } from '../../../utils/spanUtils'; -import { shouldSkipTracingTest } from '../../../utils/helpers'; - -sentryTest('cultureContextIntegration captures locale, timezone, and calendar', async ({ getLocalTestUrl, page }) => { - sentryTest.skip(shouldSkipTracingTest()); - const url = await getLocalTestUrl({ testDir: __dirname }); - - const spansPromise = waitForStreamedSpans(page, spans => spans.some(s => getSpanOp(s) === 'pageload')); - - await page.goto(url); - - const spans = await spansPromise; - - const pageloadSpan = spans.find(s => getSpanOp(s) === 'pageload'); - - expect(pageloadSpan!.attributes['culture.locale']).toEqual({ type: 'string', value: expect.any(String) }); - expect(pageloadSpan!.attributes['culture.timezone']).toEqual({ type: 'string', value: expect.any(String) }); - expect(pageloadSpan!.attributes['culture.calendar']).toEqual({ type: 'string', value: expect.any(String) }); -}); diff --git a/dev-packages/browser-integration-tests/suites/integrations/cultureContext/init.js b/dev-packages/browser-integration-tests/suites/integrations/cultureContext/init.js index 476df71792bd..a408b17f97f8 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/cultureContext/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/cultureContext/init.js @@ -2,19 +2,8 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; -const integrations = Sentry.getDefaultIntegrations({}).filter( - defaultIntegration => defaultIntegration.name === 'CultureContext', -); - -const client = new Sentry.BrowserClient({ +Sentry.init({ dsn: 'https://public@dsn.ingest.sentry.io/1337', - transport: Sentry.makeFetchTransport, - stackParser: Sentry.defaultStackParser, - integrations: integrations, + integrations: [Sentry.browserTracingIntegration()], + tracesSampleRate: 1.0, }); - -const scope = new Sentry.Scope(); -scope.setClient(client); -client.init(); - -window._sentryScope = scope; diff --git a/dev-packages/browser-integration-tests/suites/integrations/cultureContext/subject.js b/dev-packages/browser-integration-tests/suites/integrations/cultureContext/subject.js index 7881f177f9ae..564808cf73f0 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/cultureContext/subject.js +++ b/dev-packages/browser-integration-tests/suites/integrations/cultureContext/subject.js @@ -1 +1 @@ -window._sentryScope.captureException(new Error('test error')); +window.Sentry.captureException(new Error('test error')); diff --git a/dev-packages/browser-integration-tests/suites/integrations/cultureContext/test.ts b/dev-packages/browser-integration-tests/suites/integrations/cultureContext/test.ts index a3078b315a92..d3c92273d124 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/cultureContext/test.ts +++ b/dev-packages/browser-integration-tests/suites/integrations/cultureContext/test.ts @@ -1,12 +1,14 @@ import { expect } from '@playwright/test'; -import type { Event } from '@sentry/core'; import { sentryTest } from '../../../utils/fixtures'; -import { getFirstSentryEnvelopeRequest } from '../../../utils/helpers'; +import { envelopeRequestParser, shouldSkipTracingTest, waitForErrorRequest } from '../../../utils/helpers'; +import { getSpanOp, waitForStreamedSpan } from '../../../utils/spanUtils'; sentryTest('cultureContextIntegration captures locale, timezone, and calendar', async ({ getLocalTestUrl, page }) => { const url = await getLocalTestUrl({ testDir: __dirname }); - const eventData = await getFirstSentryEnvelopeRequest(page, url); + const errorRequestPromise = waitForErrorRequest(page); + await page.goto(url); + const eventData = envelopeRequestParser(await errorRequestPromise); expect(eventData.exception?.values).toHaveLength(1); @@ -16,3 +18,21 @@ sentryTest('cultureContextIntegration captures locale, timezone, and calendar', calendar: expect.any(String), }); }); + +sentryTest( + 'cultureContextIntegration adds locale, timezone, and calendar to spans', + async ({ getLocalTestUrl, page }) => { + sentryTest.skip(shouldSkipTracingTest()); + const url = await getLocalTestUrl({ testDir: __dirname }); + + const spanPromise = waitForStreamedSpan(page, span => span.is_segment && getSpanOp(span) === 'pageload'); + + await page.goto(url); + + const pageloadSpan = await spanPromise; + + expect(pageloadSpan.attributes['culture.locale']).toEqual({ type: 'string', value: expect.any(String) }); + expect(pageloadSpan.attributes['culture.timezone']).toEqual({ type: 'string', value: expect.any(String) }); + expect(pageloadSpan.attributes['culture.calendar']).toEqual({ type: 'string', value: expect.any(String) }); + }, +); diff --git a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/featureFlags/onError/init.js b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/featureFlags/onError/init.js index 9bea0bc1b630..894f46aaa102 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/featureFlags/onError/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/featureFlags/onError/init.js @@ -6,7 +6,6 @@ window.Sentry = Sentry; // window.sentryFeatureFlagsIntegration = Sentry.featureFlagsIntegration(); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1.0, integrations: [Sentry.featureFlagsIntegration()], diff --git a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/featureFlags/onSpan/init.js b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/featureFlags/onSpan/init.js index f3f8089dffda..fa6a67ec3711 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/featureFlags/onSpan/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/featureFlags/onSpan/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1.0, tracesSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/featureFlags/onSpan/test.ts b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/featureFlags/onSpan/test.ts index ee132346d51c..1ff0935b65f3 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/featureFlags/onSpan/test.ts +++ b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/featureFlags/onSpan/test.ts @@ -1,13 +1,8 @@ import { expect } from '@playwright/test'; import { _INTERNAL_MAX_FLAGS_PER_SPAN as MAX_FLAGS_PER_SPAN } from '@sentry/core'; +import { waitForStreamedSpan } from '../../../../../utils/spanUtils'; import { sentryTest } from '../../../../../utils/fixtures'; -import { - type EventAndTraceHeader, - eventAndTraceHeaderRequestParser, - getMultipleSentryEnvelopeRequests, - shouldSkipFeatureFlagsTest, - shouldSkipTracingTest, -} from '../../../../../utils/helpers'; +import { shouldSkipFeatureFlagsTest, shouldSkipTracingTest } from '../../../../../utils/helpers'; sentryTest("Feature flags are added to active span's attributes on span end.", async ({ getLocalTestUrl, page }) => { if (shouldSkipFeatureFlagsTest() || shouldSkipTracingTest()) { @@ -25,14 +20,9 @@ sentryTest("Feature flags are added to active span's attributes on span end.", a const url = await getLocalTestUrl({ testDir: __dirname, skipDsnRouteHandler: true }); await page.goto(url); - const envelopeRequestPromise = getMultipleSentryEnvelopeRequests( - page, - 1, - {}, - eventAndTraceHeaderRequestParser, - ); + const innerSpanPromise = waitForStreamedSpan(page, span => span.name === 'test-nested-span'); + const outerSpanPromise = waitForStreamedSpan(page, span => span.name === 'test-span'); - // withNestedSpans is a util used to start 3 nested spans: root-span (not recorded in transaction_event.spans), span, and nested-span. await page.evaluate(maxFlags => { (window as any).withNestedSpans(() => { const flagsIntegration = (window as any).Sentry.getClient().getIntegrationByName('FeatureFlags'); @@ -45,22 +35,20 @@ sentryTest("Feature flags are added to active span's attributes on span end.", a return true; }, MAX_FLAGS_PER_SPAN); - const event = (await envelopeRequestPromise)[0][0]; - const innerSpan = event.spans?.[0]; - const outerSpan = event.spans?.[1]; - const outerSpanFlags = Object.entries(outerSpan?.data ?? {}).filter(([key, _val]) => + const [innerSpan, outerSpan] = await Promise.all([innerSpanPromise, outerSpanPromise]); + const outerSpanFlags = Object.entries(outerSpan.attributes).filter(([key, _val]) => key.startsWith('flag.evaluation'), ); - const innerSpanFlags = Object.entries(innerSpan?.data ?? {}).filter(([key, _val]) => + const innerSpanFlags = Object.entries(innerSpan.attributes).filter(([key, _val]) => key.startsWith('flag.evaluation'), ); - expect(innerSpanFlags).toEqual([]); + expect(outerSpanFlags).toEqual([]); - const expectedOuterSpanFlags = []; + const expectedInnerSpanFlags = []; for (let i = 1; i <= MAX_FLAGS_PER_SPAN; i++) { - expectedOuterSpanFlags.push([`flag.evaluation.feat${i}`, i === 3]); + expectedInnerSpanFlags.push([`flag.evaluation.feat${i}`, { type: 'boolean', value: i === 3 }]); } // Order agnostic (attribute dict is unordered). - expect(outerSpanFlags.sort()).toEqual(expectedOuterSpanFlags.sort()); + expect(innerSpanFlags.sort()).toEqual(expectedInnerSpanFlags.sort()); }); diff --git a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/growthbook/onError/init.js b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/growthbook/onError/init.js index f81b5b380a1b..e7831a1c2c0b 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/growthbook/onError/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/growthbook/onError/init.js @@ -31,7 +31,6 @@ window.Sentry = Sentry; window.sentryGrowthBookIntegration = Sentry.growthbookIntegration({ growthbookClass: window.GrowthBook }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1.0, integrations: [window.sentryGrowthBookIntegration], diff --git a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/growthbook/onSpan/init.js b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/growthbook/onSpan/init.js index f3e059103533..d755d7a1d972 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/growthbook/onSpan/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/growthbook/onSpan/init.js @@ -29,7 +29,6 @@ window.Sentry = Sentry; window.sentryGrowthBookIntegration = Sentry.growthbookIntegration({ growthbookClass: window.GrowthBook }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1.0, tracesSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/growthbook/onSpan/test.ts b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/growthbook/onSpan/test.ts index b93047ed01d3..df64f1c51bec 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/growthbook/onSpan/test.ts +++ b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/growthbook/onSpan/test.ts @@ -1,13 +1,8 @@ import { expect } from '@playwright/test'; import { _INTERNAL_MAX_FLAGS_PER_SPAN as MAX_FLAGS_PER_SPAN } from '@sentry/core'; +import { waitForStreamedSpan } from '../../../../../utils/spanUtils'; import { sentryTest } from '../../../../../utils/fixtures'; -import { - type EventAndTraceHeader, - eventAndTraceHeaderRequestParser, - getMultipleSentryEnvelopeRequests, - shouldSkipFeatureFlagsTest, - shouldSkipTracingTest, -} from '../../../../../utils/helpers'; +import { shouldSkipFeatureFlagsTest, shouldSkipTracingTest } from '../../../../../utils/helpers'; sentryTest( "GrowthBook onSpan: flags are added to active span's attributes on span end", @@ -23,12 +18,8 @@ sentryTest( const url = await getLocalTestUrl({ testDir: __dirname, skipDsnRouteHandler: true }); await page.goto(url); - const envelopeRequestPromise = getMultipleSentryEnvelopeRequests( - page, - 1, - {}, - eventAndTraceHeaderRequestParser, - ); + const innerSpanPromise = waitForStreamedSpan(page, span => span.name === 'test-nested-span'); + const outerSpanPromise = waitForStreamedSpan(page, span => span.name === 'test-span'); await page.evaluate(maxFlags => { (window as any).withNestedSpans(() => { @@ -44,22 +35,20 @@ sentryTest( return true; }, MAX_FLAGS_PER_SPAN); - const event = (await envelopeRequestPromise)[0][0]; - const innerSpan = event.spans?.[0]; - const outerSpan = event.spans?.[1]; - const outerSpanFlags = Object.entries(outerSpan?.data ?? {}).filter(([key, _val]) => + const [innerSpan, outerSpan] = await Promise.all([innerSpanPromise, outerSpanPromise]); + const outerSpanFlags = Object.entries(outerSpan.attributes).filter(([key, _val]) => key.startsWith('flag.evaluation'), ); - const innerSpanFlags = Object.entries(innerSpan?.data ?? {}).filter(([key, _val]) => + const innerSpanFlags = Object.entries(innerSpan.attributes).filter(([key, _val]) => key.startsWith('flag.evaluation'), ); - expect(innerSpanFlags).toEqual([]); + expect(outerSpanFlags).toEqual([]); - const expectedOuterSpanFlags = [] as Array<[string, unknown]>; + const expectedInnerSpanFlags = [] as Array<[string, unknown]>; for (let i = 1; i <= MAX_FLAGS_PER_SPAN; i++) { - expectedOuterSpanFlags.push([`flag.evaluation.feat${i}`, i === 3]); + expectedInnerSpanFlags.push([`flag.evaluation.feat${i}`, { type: 'boolean', value: i === 3 }]); } - expect(outerSpanFlags.sort()).toEqual(expectedOuterSpanFlags.sort()); + expect(innerSpanFlags.sort()).toEqual(expectedInnerSpanFlags.sort()); }, ); diff --git a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/launchdarkly/onError/init.js b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/launchdarkly/onError/init.js index 5289952f89b5..810539a8c07c 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/launchdarkly/onError/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/launchdarkly/onError/init.js @@ -4,7 +4,6 @@ window.Sentry = Sentry; window.sentryLDIntegration = Sentry.launchDarklyIntegration(); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1.0, integrations: [window.sentryLDIntegration], diff --git a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/launchdarkly/onSpan/init.js b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/launchdarkly/onSpan/init.js index a16f1729de83..9e4b802f28f3 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/launchdarkly/onSpan/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/launchdarkly/onSpan/init.js @@ -4,7 +4,6 @@ window.Sentry = Sentry; window.sentryLDIntegration = Sentry.launchDarklyIntegration(); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1.0, tracesSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/launchdarkly/onSpan/test.ts b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/launchdarkly/onSpan/test.ts index f6f243262f49..3b9eabb860f2 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/launchdarkly/onSpan/test.ts +++ b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/launchdarkly/onSpan/test.ts @@ -1,13 +1,8 @@ import { expect } from '@playwright/test'; import { _INTERNAL_MAX_FLAGS_PER_SPAN as MAX_FLAGS_PER_SPAN } from '@sentry/core'; +import { waitForStreamedSpan } from '../../../../../utils/spanUtils'; import { sentryTest } from '../../../../../utils/fixtures'; -import { - type EventAndTraceHeader, - eventAndTraceHeaderRequestParser, - getMultipleSentryEnvelopeRequests, - shouldSkipFeatureFlagsTest, - shouldSkipTracingTest, -} from '../../../../../utils/helpers'; +import { shouldSkipFeatureFlagsTest, shouldSkipTracingTest } from '../../../../../utils/helpers'; sentryTest("Feature flags are added to active span's attributes on span end.", async ({ getLocalTestUrl, page }) => { if (shouldSkipFeatureFlagsTest() || shouldSkipTracingTest()) { @@ -25,14 +20,9 @@ sentryTest("Feature flags are added to active span's attributes on span end.", a const url = await getLocalTestUrl({ testDir: __dirname, skipDsnRouteHandler: true }); await page.goto(url); - const envelopeRequestPromise = getMultipleSentryEnvelopeRequests( - page, - 1, - {}, - eventAndTraceHeaderRequestParser, - ); + const innerSpanPromise = waitForStreamedSpan(page, span => span.name === 'test-nested-span'); + const outerSpanPromise = waitForStreamedSpan(page, span => span.name === 'test-span'); - // withNestedSpans is a util used to start 3 nested spans: root-span (not recorded in transaction_event.spans), span, and nested-span. await page.evaluate(maxFlags => { (window as any).withNestedSpans(() => { const ldClient = (window as any).initializeLD(); @@ -45,22 +35,20 @@ sentryTest("Feature flags are added to active span's attributes on span end.", a return true; }, MAX_FLAGS_PER_SPAN); - const event = (await envelopeRequestPromise)[0][0]; - const innerSpan = event.spans?.[0]; - const outerSpan = event.spans?.[1]; - const outerSpanFlags = Object.entries(outerSpan?.data ?? {}).filter(([key, _val]) => + const [innerSpan, outerSpan] = await Promise.all([innerSpanPromise, outerSpanPromise]); + const outerSpanFlags = Object.entries(outerSpan.attributes).filter(([key, _val]) => key.startsWith('flag.evaluation'), ); - const innerSpanFlags = Object.entries(innerSpan?.data ?? {}).filter(([key, _val]) => + const innerSpanFlags = Object.entries(innerSpan.attributes).filter(([key, _val]) => key.startsWith('flag.evaluation'), ); - expect(innerSpanFlags).toEqual([]); + expect(outerSpanFlags).toEqual([]); - const expectedOuterSpanFlags = []; + const expectedInnerSpanFlags = []; for (let i = 1; i <= MAX_FLAGS_PER_SPAN; i++) { - expectedOuterSpanFlags.push([`flag.evaluation.feat${i}`, i === 3]); + expectedInnerSpanFlags.push([`flag.evaluation.feat${i}`, { type: 'boolean', value: i === 3 }]); } // Order agnostic (attribute dict is unordered). - expect(outerSpanFlags.sort()).toEqual(expectedOuterSpanFlags.sort()); + expect(innerSpanFlags.sort()).toEqual(expectedInnerSpanFlags.sort()); }); diff --git a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/openfeature/onError/errorHook/init.js b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/openfeature/onError/errorHook/init.js index ca57b1550df0..971e08755fe6 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/openfeature/onError/errorHook/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/openfeature/onError/errorHook/init.js @@ -4,7 +4,6 @@ window.Sentry = Sentry; window.sentryOpenFeatureIntegration = Sentry.openFeatureIntegration(); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1.0, integrations: [window.sentryOpenFeatureIntegration], diff --git a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/openfeature/onError/init.js b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/openfeature/onError/init.js index 0fad111b5d95..b2b48519b8a9 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/openfeature/onError/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/openfeature/onError/init.js @@ -4,7 +4,6 @@ window.Sentry = Sentry; window.sentryOpenFeatureIntegration = Sentry.openFeatureIntegration(); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1.0, integrations: [window.sentryOpenFeatureIntegration], diff --git a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/openfeature/onSpan/init.js b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/openfeature/onSpan/init.js index eaebe2c27258..4fc1cace150c 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/openfeature/onSpan/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/openfeature/onSpan/init.js @@ -4,7 +4,6 @@ window.Sentry = Sentry; window.sentryOpenFeatureIntegration = Sentry.openFeatureIntegration(); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1.0, tracesSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/openfeature/onSpan/test.ts b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/openfeature/onSpan/test.ts index ff03be5a972b..8dffd14502b7 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/openfeature/onSpan/test.ts +++ b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/openfeature/onSpan/test.ts @@ -1,13 +1,8 @@ import { expect } from '@playwright/test'; import { _INTERNAL_MAX_FLAGS_PER_SPAN as MAX_FLAGS_PER_SPAN } from '@sentry/core'; +import { waitForStreamedSpan } from '../../../../../utils/spanUtils'; import { sentryTest } from '../../../../../utils/fixtures'; -import { - type EventAndTraceHeader, - eventAndTraceHeaderRequestParser, - getMultipleSentryEnvelopeRequests, - shouldSkipFeatureFlagsTest, - shouldSkipTracingTest, -} from '../../../../../utils/helpers'; +import { shouldSkipFeatureFlagsTest, shouldSkipTracingTest } from '../../../../../utils/helpers'; sentryTest("Feature flags are added to active span's attributes on span end.", async ({ getLocalTestUrl, page }) => { if (shouldSkipFeatureFlagsTest() || shouldSkipTracingTest()) { @@ -25,14 +20,9 @@ sentryTest("Feature flags are added to active span's attributes on span end.", a const url = await getLocalTestUrl({ testDir: __dirname, skipDsnRouteHandler: true }); await page.goto(url); - const envelopeRequestPromise = getMultipleSentryEnvelopeRequests( - page, - 1, - {}, - eventAndTraceHeaderRequestParser, - ); + const innerSpanPromise = waitForStreamedSpan(page, span => span.name === 'test-nested-span'); + const outerSpanPromise = waitForStreamedSpan(page, span => span.name === 'test-span'); - // withNestedSpans is a util used to start 3 nested spans: root-span (not recorded in transaction_event.spans), span, and nested-span. await page.evaluate(maxFlags => { (window as any).withNestedSpans(() => { const client = (window as any).initialize(); @@ -45,22 +35,20 @@ sentryTest("Feature flags are added to active span's attributes on span end.", a return true; }, MAX_FLAGS_PER_SPAN); - const event = (await envelopeRequestPromise)[0][0]; - const innerSpan = event.spans?.[0]; - const outerSpan = event.spans?.[1]; - const outerSpanFlags = Object.entries(outerSpan?.data ?? {}).filter(([key, _val]) => + const [innerSpan, outerSpan] = await Promise.all([innerSpanPromise, outerSpanPromise]); + const outerSpanFlags = Object.entries(outerSpan.attributes).filter(([key, _val]) => key.startsWith('flag.evaluation'), ); - const innerSpanFlags = Object.entries(innerSpan?.data ?? {}).filter(([key, _val]) => + const innerSpanFlags = Object.entries(innerSpan.attributes).filter(([key, _val]) => key.startsWith('flag.evaluation'), ); - expect(innerSpanFlags).toEqual([]); + expect(outerSpanFlags).toEqual([]); - const expectedOuterSpanFlags = []; + const expectedInnerSpanFlags = []; for (let i = 1; i <= MAX_FLAGS_PER_SPAN; i++) { - expectedOuterSpanFlags.push([`flag.evaluation.feat${i}`, i === 3]); + expectedInnerSpanFlags.push([`flag.evaluation.feat${i}`, { type: 'boolean', value: i === 3 }]); } // Order agnostic (attribute dict is unordered). - expect(outerSpanFlags.sort()).toEqual(expectedOuterSpanFlags.sort()); + expect(innerSpanFlags.sort()).toEqual(expectedInnerSpanFlags.sort()); }); diff --git a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/statsig/onError/init.js b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/statsig/onError/init.js index 1ffa2a176dcd..61d00587f4c6 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/statsig/onError/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/statsig/onError/init.js @@ -29,7 +29,6 @@ window.Sentry = Sentry; window.sentryStatsigIntegration = Sentry.statsigIntegration({ featureFlagClient: window.statsigClient }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1.0, integrations: [window.sentryStatsigIntegration], diff --git a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/statsig/onSpan/init.js b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/statsig/onSpan/init.js index 15446bd6e931..22f74d2ebd7c 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/statsig/onSpan/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/statsig/onSpan/init.js @@ -29,7 +29,6 @@ window.Sentry = Sentry; window.sentryStatsigIntegration = Sentry.statsigIntegration({ featureFlagClient: window.statsigClient }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1.0, tracesSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/statsig/onSpan/test.ts b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/statsig/onSpan/test.ts index 34a760a02e61..d78ebe56de88 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/statsig/onSpan/test.ts +++ b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/statsig/onSpan/test.ts @@ -1,13 +1,8 @@ import { expect } from '@playwright/test'; import { _INTERNAL_MAX_FLAGS_PER_SPAN as MAX_FLAGS_PER_SPAN } from '@sentry/core'; +import { waitForStreamedSpan } from '../../../../../utils/spanUtils'; import { sentryTest } from '../../../../../utils/fixtures'; -import { - type EventAndTraceHeader, - eventAndTraceHeaderRequestParser, - getMultipleSentryEnvelopeRequests, - shouldSkipFeatureFlagsTest, - shouldSkipTracingTest, -} from '../../../../../utils/helpers'; +import { shouldSkipFeatureFlagsTest, shouldSkipTracingTest } from '../../../../../utils/helpers'; sentryTest("Feature flags are added to active span's attributes on span end.", async ({ getLocalTestUrl, page }) => { if (shouldSkipFeatureFlagsTest() || shouldSkipTracingTest()) { @@ -25,14 +20,9 @@ sentryTest("Feature flags are added to active span's attributes on span end.", a const url = await getLocalTestUrl({ testDir: __dirname, skipDsnRouteHandler: true }); await page.goto(url); - const envelopeRequestPromise = getMultipleSentryEnvelopeRequests( - page, - 1, - {}, - eventAndTraceHeaderRequestParser, - ); + const innerSpanPromise = waitForStreamedSpan(page, span => span.name === 'test-nested-span'); + const outerSpanPromise = waitForStreamedSpan(page, span => span.name === 'test-span'); - // withNestedSpans is a util used to start 3 nested spans: root-span (not recorded in transaction_event.spans), span, and nested-span. await page.evaluate(maxFlags => { (window as any).withNestedSpans(() => { const client = (window as any).statsigClient; @@ -49,22 +39,20 @@ sentryTest("Feature flags are added to active span's attributes on span end.", a return true; }, MAX_FLAGS_PER_SPAN); - const event = (await envelopeRequestPromise)[0][0]; - const innerSpan = event.spans?.[0]; - const outerSpan = event.spans?.[1]; - const outerSpanFlags = Object.entries(outerSpan?.data ?? {}).filter(([key, _val]) => + const [innerSpan, outerSpan] = await Promise.all([innerSpanPromise, outerSpanPromise]); + const outerSpanFlags = Object.entries(outerSpan.attributes).filter(([key, _val]) => key.startsWith('flag.evaluation'), ); - const innerSpanFlags = Object.entries(innerSpan?.data ?? {}).filter(([key, _val]) => + const innerSpanFlags = Object.entries(innerSpan.attributes).filter(([key, _val]) => key.startsWith('flag.evaluation'), ); - expect(innerSpanFlags).toEqual([]); + expect(outerSpanFlags).toEqual([]); - const expectedOuterSpanFlags = []; + const expectedInnerSpanFlags = []; for (let i = 1; i <= MAX_FLAGS_PER_SPAN; i++) { - expectedOuterSpanFlags.push([`flag.evaluation.feat${i}`, i === 3]); + expectedInnerSpanFlags.push([`flag.evaluation.feat${i}`, { type: 'boolean', value: i === 3 }]); } // Order agnostic (attribute dict is unordered). - expect(outerSpanFlags.sort()).toEqual(expectedOuterSpanFlags.sort()); + expect(innerSpanFlags.sort()).toEqual(expectedInnerSpanFlags.sort()); }); diff --git a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/unleash/badSignature/init.js b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/unleash/badSignature/init.js index 0599b97ef85f..1e0303b9c356 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/unleash/badSignature/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/unleash/badSignature/init.js @@ -10,7 +10,6 @@ window.Sentry = Sentry; window.sentryUnleashIntegration = Sentry.unleashIntegration({ featureFlagClientClass: window.UnleashClient }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1.0, integrations: [window.sentryUnleashIntegration], diff --git a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/unleash/onError/init.js b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/unleash/onError/init.js index cdfc8753fd55..ddc74b6427b4 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/unleash/onError/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/unleash/onError/init.js @@ -44,7 +44,6 @@ window.Sentry = Sentry; window.sentryUnleashIntegration = Sentry.unleashIntegration({ featureFlagClientClass: window.UnleashClient }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1.0, integrations: [window.sentryUnleashIntegration], diff --git a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/unleash/onSpan/init.js b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/unleash/onSpan/init.js index f75906993803..93993d8f6188 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/unleash/onSpan/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/unleash/onSpan/init.js @@ -49,7 +49,6 @@ window.Sentry = Sentry; window.sentryUnleashIntegration = Sentry.unleashIntegration({ featureFlagClientClass: window.UnleashClient }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1.0, tracesSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/unleash/onSpan/test.ts b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/unleash/onSpan/test.ts index cf92c32f2a8f..12e31d3ac568 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/featureFlags/unleash/onSpan/test.ts +++ b/dev-packages/browser-integration-tests/suites/integrations/featureFlags/unleash/onSpan/test.ts @@ -1,13 +1,8 @@ import { expect } from '@playwright/test'; import { _INTERNAL_MAX_FLAGS_PER_SPAN as MAX_FLAGS_PER_SPAN } from '@sentry/core'; +import { waitForStreamedSpan } from '../../../../../utils/spanUtils'; import { sentryTest } from '../../../../../utils/fixtures'; -import { - type EventAndTraceHeader, - eventAndTraceHeaderRequestParser, - getMultipleSentryEnvelopeRequests, - shouldSkipFeatureFlagsTest, - shouldSkipTracingTest, -} from '../../../../../utils/helpers'; +import { shouldSkipFeatureFlagsTest, shouldSkipTracingTest } from '../../../../../utils/helpers'; sentryTest("Feature flags are added to active span's attributes on span end.", async ({ getLocalTestUrl, page }) => { if (shouldSkipFeatureFlagsTest() || shouldSkipTracingTest()) { @@ -25,14 +20,9 @@ sentryTest("Feature flags are added to active span's attributes on span end.", a const url = await getLocalTestUrl({ testDir: __dirname, skipDsnRouteHandler: true }); await page.goto(url); - const envelopeRequestPromise = getMultipleSentryEnvelopeRequests( - page, - 1, - {}, - eventAndTraceHeaderRequestParser, - ); + const innerSpanPromise = waitForStreamedSpan(page, span => span.name === 'test-nested-span'); + const outerSpanPromise = waitForStreamedSpan(page, span => span.name === 'test-span'); - // withNestedSpans is a util used to start 3 nested spans: root-span (not recorded in transaction_event.spans), span, and nested-span. await page.evaluate(maxFlags => { (window as any).withNestedSpans(() => { const client = new (window as any).UnleashClient(); @@ -47,22 +37,20 @@ sentryTest("Feature flags are added to active span's attributes on span end.", a return true; }, MAX_FLAGS_PER_SPAN); - const event = (await envelopeRequestPromise)[0][0]; - const innerSpan = event.spans?.[0]; - const outerSpan = event.spans?.[1]; - const outerSpanFlags = Object.entries(outerSpan?.data ?? {}).filter(([key, _val]) => + const [innerSpan, outerSpan] = await Promise.all([innerSpanPromise, outerSpanPromise]); + const outerSpanFlags = Object.entries(outerSpan.attributes).filter(([key, _val]) => key.startsWith('flag.evaluation'), ); - const innerSpanFlags = Object.entries(innerSpan?.data ?? {}).filter(([key, _val]) => + const innerSpanFlags = Object.entries(innerSpan.attributes).filter(([key, _val]) => key.startsWith('flag.evaluation'), ); - expect(innerSpanFlags).toEqual([]); + expect(outerSpanFlags).toEqual([]); - const expectedOuterSpanFlags = []; + const expectedInnerSpanFlags = []; for (let i = 1; i <= MAX_FLAGS_PER_SPAN; i++) { - expectedOuterSpanFlags.push([`flag.evaluation.feat${i}`, i === 3]); + expectedInnerSpanFlags.push([`flag.evaluation.feat${i}`, { type: 'boolean', value: i === 3 }]); } // Order agnostic (attribute dict is unordered). - expect(outerSpanFlags.sort()).toEqual(expectedOuterSpanFlags.sort()); + expect(innerSpanFlags.sort()).toEqual(expectedInnerSpanFlags.sort()); }); diff --git a/dev-packages/browser-integration-tests/suites/integrations/globalHandlers/init.js b/dev-packages/browser-integration-tests/suites/integrations/globalHandlers/init.js index d9c534b801cd..d8c94f36fdd0 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/globalHandlers/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/globalHandlers/init.js @@ -3,6 +3,5 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/integrations/graphqlClient/fetch/test.ts b/dev-packages/browser-integration-tests/suites/integrations/graphqlClient/fetch/test.ts index 98bdc15e6d4e..36c1608374a2 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/graphqlClient/fetch/test.ts +++ b/dev-packages/browser-integration-tests/suites/integrations/graphqlClient/fetch/test.ts @@ -1,7 +1,7 @@ import { expect } from '@playwright/test'; -import type { Event } from '@sentry/core'; +import { getSpanOp, waitForStreamedSpan } from '../../../../utils/spanUtils'; import { sentryTest } from '../../../../utils/fixtures'; -import { getFirstSentryEnvelopeRequest, shouldSkipTracingTest } from '../../../../utils/helpers'; +import { envelopeRequestParser, waitForErrorRequest, shouldSkipTracingTest } from '../../../../utils/helpers'; // Duplicate from subject.js const query = `query Test{ @@ -13,7 +13,7 @@ const query = `query Test{ sentryTest('should update spans for GraphQL fetch requests', async ({ getLocalTestUrl, page }) => { if (shouldSkipTracingTest()) { - return; + sentryTest.skip(); } const url = await getLocalTestUrl({ testDir: __dirname }); @@ -33,34 +33,34 @@ sentryTest('should update spans for GraphQL fetch requests', async ({ getLocalTe }); }); - const eventData = await getFirstSentryEnvelopeRequest(page, url); - const requestSpans = eventData.spans?.filter(({ op }) => op === 'http.client'); + const rootSpanPromise = waitForStreamedSpan(page, span => span.is_segment && getSpanOp(span) === 'pageload'); + const requestSpanPromise = waitForStreamedSpan(page, span => getSpanOp(span) === 'http.client'); + await page.goto(url); + const [rootSpan, requestSpan] = await Promise.all([rootSpanPromise, requestSpanPromise]); - expect(requestSpans).toHaveLength(1); - - expect(requestSpans![0]).toMatchObject({ - description: 'POST http://sentry-test.io/foo (query Test)', - parent_span_id: eventData.contexts?.trace?.span_id, + expect(requestSpan).toMatchObject({ + name: 'POST sentry-test.io', + parent_span_id: rootSpan.span_id, span_id: expect.any(String), start_timestamp: expect.any(Number), - timestamp: expect.any(Number), - trace_id: eventData.contexts?.trace?.trace_id, + end_timestamp: expect.any(Number), + trace_id: rootSpan.trace_id, status: 'ok', - data: expect.objectContaining({ - type: 'fetch', - 'http.request.method': 'POST', - 'url.full': 'http://sentry-test.io/foo', - 'server.address': 'sentry-test.io', - 'sentry.op': 'http.client', - 'sentry.origin': 'auto.http.browser', - 'graphql.document': query, + attributes: expect.objectContaining({ + type: { type: 'string', value: 'fetch' }, + 'http.request.method': { type: 'string', value: 'POST' }, + 'url.full': { type: 'string', value: 'http://sentry-test.io/foo' }, + 'server.address': { type: 'string', value: 'sentry-test.io' }, + 'sentry.op': { type: 'string', value: 'http.client' }, + 'sentry.origin': { type: 'string', value: 'auto.http.browser' }, + 'graphql.document': { type: 'string', value: query }, }), }); }); sentryTest('should update breadcrumbs for GraphQL fetch requests', async ({ getLocalTestUrl, page }) => { if (shouldSkipTracingTest()) { - return; + sentryTest.skip(); } const url = await getLocalTestUrl({ testDir: __dirname }); @@ -80,7 +80,12 @@ sentryTest('should update breadcrumbs for GraphQL fetch requests', async ({ getL }); }); - const eventData = await getFirstSentryEnvelopeRequest(page, url); + const rootSpanPromise = waitForStreamedSpan(page, span => span.is_segment && getSpanOp(span) === 'pageload'); + await page.goto(url); + await rootSpanPromise; + const eventPromise = waitForErrorRequest(page, event => event.message === 'GraphQL request completed'); + await page.evaluate(() => (window as any).Sentry.captureMessage('GraphQL request completed')); + const eventData = envelopeRequestParser(await eventPromise); expect(eventData?.breadcrumbs?.length).toBe(1); diff --git a/dev-packages/browser-integration-tests/suites/integrations/graphqlClient/init.js b/dev-packages/browser-integration-tests/suites/integrations/graphqlClient/init.js index c7bd45083a80..ef8d5fa541e4 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/graphqlClient/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/graphqlClient/init.js @@ -5,7 +5,6 @@ import { graphqlClientIntegration } from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [ Sentry.browserTracingIntegration(), diff --git a/dev-packages/browser-integration-tests/suites/integrations/graphqlClient/persistedQuery-fetch/test.ts b/dev-packages/browser-integration-tests/suites/integrations/graphqlClient/persistedQuery-fetch/test.ts index 85bca8b11546..e5489f1deb61 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/graphqlClient/persistedQuery-fetch/test.ts +++ b/dev-packages/browser-integration-tests/suites/integrations/graphqlClient/persistedQuery-fetch/test.ts @@ -1,11 +1,11 @@ import { expect } from '@playwright/test'; -import type { Event } from '@sentry/core'; +import { getSpanOp, waitForStreamedSpan } from '../../../../utils/spanUtils'; import { sentryTest } from '../../../../utils/fixtures'; -import { getFirstSentryEnvelopeRequest, shouldSkipTracingTest } from '../../../../utils/helpers'; +import { envelopeRequestParser, waitForErrorRequest, shouldSkipTracingTest } from '../../../../utils/helpers'; sentryTest('should update spans for GraphQL persisted query fetch requests', async ({ getLocalTestUrl, page }) => { if (shouldSkipTracingTest()) { - return; + sentryTest.skip(); } const url = await getLocalTestUrl({ testDir: __dirname }); @@ -27,28 +27,31 @@ sentryTest('should update spans for GraphQL persisted query fetch requests', asy }); }); - const eventData = await getFirstSentryEnvelopeRequest(page, url); - const requestSpans = eventData.spans?.filter(({ op }) => op === 'http.client'); + const rootSpanPromise = waitForStreamedSpan(page, span => span.is_segment && getSpanOp(span) === 'pageload'); + const requestSpanPromise = waitForStreamedSpan(page, span => getSpanOp(span) === 'http.client'); + await page.goto(url); + const [rootSpan, requestSpan] = await Promise.all([rootSpanPromise, requestSpanPromise]); - expect(requestSpans).toHaveLength(1); - - expect(requestSpans![0]).toMatchObject({ - description: 'POST http://sentry-test.io/graphql (persisted GetUser)', - parent_span_id: eventData.contexts?.trace?.span_id, + expect(requestSpan).toMatchObject({ + name: 'POST sentry-test.io', + parent_span_id: rootSpan.span_id, span_id: expect.any(String), start_timestamp: expect.any(Number), - timestamp: expect.any(Number), - trace_id: eventData.contexts?.trace?.trace_id, + end_timestamp: expect.any(Number), + trace_id: rootSpan.trace_id, status: 'ok', - data: expect.objectContaining({ - type: 'fetch', - 'http.request.method': 'POST', - 'url.full': 'http://sentry-test.io/graphql', - 'server.address': 'sentry-test.io', - 'sentry.op': 'http.client', - 'sentry.origin': 'auto.http.browser', - 'graphql.persisted_query.hash.sha256': 'ecf4edb46db40b5132295c0291d62fb65d6759a9eedfa4d5d612dd5ec54a6b38', - 'graphql.persisted_query.version': 1, + attributes: expect.objectContaining({ + type: { type: 'string', value: 'fetch' }, + 'http.request.method': { type: 'string', value: 'POST' }, + 'url.full': { type: 'string', value: 'http://sentry-test.io/graphql' }, + 'server.address': { type: 'string', value: 'sentry-test.io' }, + 'sentry.op': { type: 'string', value: 'http.client' }, + 'sentry.origin': { type: 'string', value: 'auto.http.browser' }, + 'graphql.persisted_query.hash.sha256': { + type: 'string', + value: 'ecf4edb46db40b5132295c0291d62fb65d6759a9eedfa4d5d612dd5ec54a6b38', + }, + 'graphql.persisted_query.version': { type: 'integer', value: 1 }, }), }); }); @@ -57,7 +60,7 @@ sentryTest( 'should update breadcrumbs for GraphQL persisted query fetch requests', async ({ getLocalTestUrl, page }) => { if (shouldSkipTracingTest()) { - return; + sentryTest.skip(); } const url = await getLocalTestUrl({ testDir: __dirname }); @@ -79,7 +82,12 @@ sentryTest( }); }); - const eventData = await getFirstSentryEnvelopeRequest(page, url); + const rootSpanPromise = waitForStreamedSpan(page, span => span.is_segment && getSpanOp(span) === 'pageload'); + await page.goto(url); + await rootSpanPromise; + const eventPromise = waitForErrorRequest(page, event => event.message === 'GraphQL request completed'); + await page.evaluate(() => (window as any).Sentry.captureMessage('GraphQL request completed')); + const eventData = envelopeRequestParser(await eventPromise); expect(eventData?.breadcrumbs?.length).toBe(1); diff --git a/dev-packages/browser-integration-tests/suites/integrations/graphqlClient/persistedQuery-xhr/test.ts b/dev-packages/browser-integration-tests/suites/integrations/graphqlClient/persistedQuery-xhr/test.ts index 7e48cf913934..f67c25cf5c6c 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/graphqlClient/persistedQuery-xhr/test.ts +++ b/dev-packages/browser-integration-tests/suites/integrations/graphqlClient/persistedQuery-xhr/test.ts @@ -1,11 +1,11 @@ import { expect } from '@playwright/test'; -import type { Event } from '@sentry/core'; +import { getSpanOp, waitForStreamedSpan } from '../../../../utils/spanUtils'; import { sentryTest } from '../../../../utils/fixtures'; -import { getFirstSentryEnvelopeRequest, shouldSkipTracingTest } from '../../../../utils/helpers'; +import { envelopeRequestParser, waitForErrorRequest, shouldSkipTracingTest } from '../../../../utils/helpers'; sentryTest('should update spans for GraphQL persisted query XHR requests', async ({ getLocalTestUrl, page }) => { if (shouldSkipTracingTest()) { - return; + sentryTest.skip(); } const url = await getLocalTestUrl({ testDir: __dirname }); @@ -27,35 +27,38 @@ sentryTest('should update spans for GraphQL persisted query XHR requests', async }); }); - const eventData = await getFirstSentryEnvelopeRequest(page, url); - const requestSpans = eventData.spans?.filter(({ op }) => op === 'http.client'); + const rootSpanPromise = waitForStreamedSpan(page, span => span.is_segment && getSpanOp(span) === 'pageload'); + const requestSpanPromise = waitForStreamedSpan(page, span => getSpanOp(span) === 'http.client'); + await page.goto(url); + const [rootSpan, requestSpan] = await Promise.all([rootSpanPromise, requestSpanPromise]); - expect(requestSpans).toHaveLength(1); - - expect(requestSpans![0]).toMatchObject({ - description: 'POST http://sentry-test.io/graphql (persisted GetUser)', - parent_span_id: eventData.contexts?.trace?.span_id, + expect(requestSpan).toMatchObject({ + name: 'POST sentry-test.io', + parent_span_id: rootSpan.span_id, span_id: expect.any(String), start_timestamp: expect.any(Number), - timestamp: expect.any(Number), - trace_id: eventData.contexts?.trace?.trace_id, + end_timestamp: expect.any(Number), + trace_id: rootSpan.trace_id, status: 'ok', - data: { - type: 'xhr', - 'http.request.method': 'POST', - 'url.full': 'http://sentry-test.io/graphql', - 'server.address': 'sentry-test.io', - 'sentry.op': 'http.client', - 'sentry.origin': 'auto.http.browser', - 'graphql.persisted_query.hash.sha256': 'ecf4edb46db40b5132295c0291d62fb65d6759a9eedfa4d5d612dd5ec54a6b38', - 'graphql.persisted_query.version': 1, - }, + attributes: expect.objectContaining({ + type: { type: 'string', value: 'xhr' }, + 'http.request.method': { type: 'string', value: 'POST' }, + 'url.full': { type: 'string', value: 'http://sentry-test.io/graphql' }, + 'server.address': { type: 'string', value: 'sentry-test.io' }, + 'sentry.op': { type: 'string', value: 'http.client' }, + 'sentry.origin': { type: 'string', value: 'auto.http.browser' }, + 'graphql.persisted_query.hash.sha256': { + type: 'string', + value: 'ecf4edb46db40b5132295c0291d62fb65d6759a9eedfa4d5d612dd5ec54a6b38', + }, + 'graphql.persisted_query.version': { type: 'integer', value: 1 }, + }), }); }); sentryTest('should update breadcrumbs for GraphQL persisted query XHR requests', async ({ getLocalTestUrl, page }) => { if (shouldSkipTracingTest()) { - return; + sentryTest.skip(); } const url = await getLocalTestUrl({ testDir: __dirname }); @@ -77,7 +80,12 @@ sentryTest('should update breadcrumbs for GraphQL persisted query XHR requests', }); }); - const eventData = await getFirstSentryEnvelopeRequest(page, url); + const rootSpanPromise = waitForStreamedSpan(page, span => span.is_segment && getSpanOp(span) === 'pageload'); + await page.goto(url); + await rootSpanPromise; + const eventPromise = waitForErrorRequest(page, event => event.message === 'GraphQL request completed'); + await page.evaluate(() => (window as any).Sentry.captureMessage('GraphQL request completed')); + const eventData = envelopeRequestParser(await eventPromise); expect(eventData?.breadcrumbs?.length).toBe(1); diff --git a/dev-packages/browser-integration-tests/suites/integrations/graphqlClient/xhr/test.ts b/dev-packages/browser-integration-tests/suites/integrations/graphqlClient/xhr/test.ts index 722f6487c072..0291bc593693 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/graphqlClient/xhr/test.ts +++ b/dev-packages/browser-integration-tests/suites/integrations/graphqlClient/xhr/test.ts @@ -1,7 +1,7 @@ import { expect } from '@playwright/test'; -import type { Event } from '@sentry/core'; +import { getSpanOp, waitForStreamedSpan } from '../../../../utils/spanUtils'; import { sentryTest } from '../../../../utils/fixtures'; -import { getFirstSentryEnvelopeRequest, shouldSkipTracingTest } from '../../../../utils/helpers'; +import { envelopeRequestParser, waitForErrorRequest, shouldSkipTracingTest } from '../../../../utils/helpers'; // Duplicate from subject.js const query = `query Test{ @@ -13,7 +13,7 @@ const query = `query Test{ sentryTest('should update spans for GraphQL XHR requests', async ({ getLocalTestUrl, page }) => { if (shouldSkipTracingTest()) { - return; + sentryTest.skip(); } const url = await getLocalTestUrl({ testDir: __dirname }); @@ -33,34 +33,34 @@ sentryTest('should update spans for GraphQL XHR requests', async ({ getLocalTest }); }); - const eventData = await getFirstSentryEnvelopeRequest(page, url); - const requestSpans = eventData.spans?.filter(({ op }) => op === 'http.client'); + const rootSpanPromise = waitForStreamedSpan(page, span => span.is_segment && getSpanOp(span) === 'pageload'); + const requestSpanPromise = waitForStreamedSpan(page, span => getSpanOp(span) === 'http.client'); + await page.goto(url); + const [rootSpan, requestSpan] = await Promise.all([rootSpanPromise, requestSpanPromise]); - expect(requestSpans).toHaveLength(1); - - expect(requestSpans![0]).toMatchObject({ - description: 'POST http://sentry-test.io/foo (query Test)', - parent_span_id: eventData.contexts?.trace?.span_id, + expect(requestSpan).toMatchObject({ + name: 'POST sentry-test.io', + parent_span_id: rootSpan.span_id, span_id: expect.any(String), start_timestamp: expect.any(Number), - timestamp: expect.any(Number), - trace_id: eventData.contexts?.trace?.trace_id, + end_timestamp: expect.any(Number), + trace_id: rootSpan.trace_id, status: 'ok', - data: { - type: 'xhr', - 'http.request.method': 'POST', - 'url.full': 'http://sentry-test.io/foo', - 'server.address': 'sentry-test.io', - 'sentry.op': 'http.client', - 'sentry.origin': 'auto.http.browser', - 'graphql.document': query, - }, + attributes: expect.objectContaining({ + type: { type: 'string', value: 'xhr' }, + 'http.request.method': { type: 'string', value: 'POST' }, + 'url.full': { type: 'string', value: 'http://sentry-test.io/foo' }, + 'server.address': { type: 'string', value: 'sentry-test.io' }, + 'sentry.op': { type: 'string', value: 'http.client' }, + 'sentry.origin': { type: 'string', value: 'auto.http.browser' }, + 'graphql.document': { type: 'string', value: query }, + }), }); }); sentryTest('should update breadcrumbs for GraphQL XHR requests', async ({ getLocalTestUrl, page }) => { if (shouldSkipTracingTest()) { - return; + sentryTest.skip(); } const url = await getLocalTestUrl({ testDir: __dirname }); @@ -80,7 +80,12 @@ sentryTest('should update breadcrumbs for GraphQL XHR requests', async ({ getLoc }); }); - const eventData = await getFirstSentryEnvelopeRequest(page, url); + const rootSpanPromise = waitForStreamedSpan(page, span => span.is_segment && getSpanOp(span) === 'pageload'); + await page.goto(url); + await rootSpanPromise; + const eventPromise = waitForErrorRequest(page, event => event.message === 'GraphQL request completed'); + await page.evaluate(() => (window as any).Sentry.captureMessage('GraphQL request completed')); + const eventData = envelopeRequestParser(await eventPromise); expect(eventData?.breadcrumbs?.length).toBe(1); diff --git a/dev-packages/browser-integration-tests/suites/integrations/httpContext-streamed/init.js b/dev-packages/browser-integration-tests/suites/integrations/httpContext-streamed/init.js deleted file mode 100644 index c69a872adc77..000000000000 --- a/dev-packages/browser-integration-tests/suites/integrations/httpContext-streamed/init.js +++ /dev/null @@ -1,9 +0,0 @@ -import * as Sentry from '@sentry/browser'; - -window.Sentry = Sentry; - -Sentry.init({ - dsn: 'https://public@dsn.ingest.sentry.io/1337', - integrations: [Sentry.spanStreamingIntegration(), Sentry.browserTracingIntegration()], - tracesSampleRate: 1.0, -}); diff --git a/dev-packages/browser-integration-tests/suites/integrations/httpContext-streamed/subject.js b/dev-packages/browser-integration-tests/suites/integrations/httpContext-streamed/subject.js deleted file mode 100644 index f1547634fb45..000000000000 --- a/dev-packages/browser-integration-tests/suites/integrations/httpContext-streamed/subject.js +++ /dev/null @@ -1,5 +0,0 @@ -Sentry.startSpan({ name: 'parent-span', op: 'test' }, () => { - Sentry.startSpan({ name: 'child-span', op: 'test-child' }, () => { - // noop - }); -}); diff --git a/dev-packages/browser-integration-tests/suites/integrations/httpContext-streamed/test.ts b/dev-packages/browser-integration-tests/suites/integrations/httpContext-streamed/test.ts deleted file mode 100644 index d37127a7897a..000000000000 --- a/dev-packages/browser-integration-tests/suites/integrations/httpContext-streamed/test.ts +++ /dev/null @@ -1,50 +0,0 @@ -import { expect } from '@playwright/test'; -import { sentryTest } from '../../../utils/fixtures'; -import { shouldSkipTracingTest } from '../../../utils/helpers'; -import { URL_FULL, USER_AGENT_ORIGINAL } from '@sentry/conventions/attributes'; -import { getSpanOp, waitForStreamedSpans } from '../../../utils/spanUtils'; - -sentryTest('httpContextIntegration captures url, user-agent, and referer', async ({ getLocalTestUrl, page }) => { - sentryTest.skip(shouldSkipTracingTest()); - const url = await getLocalTestUrl({ testDir: __dirname }); - - const spansPromise = waitForStreamedSpans(page, spans => spans.some(s => getSpanOp(s) === 'pageload')); - - await page.goto(url, { referer: 'https://sentry.io/' }); - - const spans = await spansPromise; - - const pageloadSpan = spans.find(s => getSpanOp(s) === 'pageload'); - - expect(pageloadSpan!.attributes[URL_FULL]).toEqual({ type: 'string', value: expect.any(String) }); - expect(pageloadSpan!.attributes[USER_AGENT_ORIGINAL]).toEqual({ - type: 'string', - value: expect.any(String), - }); - expect(pageloadSpan!.attributes['http.request.header.referer']).toEqual({ - type: 'array', - value: ['https://sentry.io/'], - }); -}); - -sentryTest( - 'httpContextIntegration only attaches the user agent to non-segment spans', - async ({ getLocalTestUrl, page }) => { - sentryTest.skip(shouldSkipTracingTest()); - const url = await getLocalTestUrl({ testDir: __dirname }); - - const spansPromise = waitForStreamedSpans(page, spans => spans.some(s => s.name === 'child-span')); - - await page.goto(url, { referer: 'https://sentry.io/' }); - - const spans = await spansPromise; - - const childSpan = spans.find(s => s.name === 'child-span'); - - expect(childSpan!.is_segment).toBe(false); - expect(childSpan!.attributes[USER_AGENT_ORIGINAL]).toEqual({ type: 'string', value: expect.any(String) }); - // The document URL and referer only belong on the segment span. - expect(childSpan!.attributes[URL_FULL]).toBeUndefined(); - expect(childSpan!.attributes['http.request.header.referer']).toBeUndefined(); - }, -); diff --git a/dev-packages/browser-integration-tests/suites/integrations/httpContext/init.js b/dev-packages/browser-integration-tests/suites/integrations/httpContext/init.js index 984534454ac7..a408b17f97f8 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/httpContext/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/httpContext/init.js @@ -2,19 +2,8 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; -const integrations = Sentry.getDefaultIntegrations({}).filter( - defaultIntegration => defaultIntegration.name === 'HttpContext', -); - -const client = new Sentry.BrowserClient({ +Sentry.init({ dsn: 'https://public@dsn.ingest.sentry.io/1337', - transport: Sentry.makeFetchTransport, - stackParser: Sentry.defaultStackParser, - integrations: integrations, + integrations: [Sentry.browserTracingIntegration()], + tracesSampleRate: 1.0, }); - -const scope = new Sentry.Scope(); -scope.setClient(client); -client.init(); - -window._sentryScope = scope; diff --git a/dev-packages/browser-integration-tests/suites/integrations/httpContext/subject.js b/dev-packages/browser-integration-tests/suites/integrations/httpContext/subject.js index 62ce205e2ffc..8abda6d4b6f7 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/httpContext/subject.js +++ b/dev-packages/browser-integration-tests/suites/integrations/httpContext/subject.js @@ -1 +1,7 @@ -window._sentryScope.captureException(new Error('client init')); +Sentry.startSpan({ name: 'parent-span', op: 'test' }, () => { + Sentry.startSpan({ name: 'child-span', op: 'test-child' }, () => { + // noop + }); +}); + +window.Sentry.captureException(new Error('test error')); diff --git a/dev-packages/browser-integration-tests/suites/integrations/httpContext/test.ts b/dev-packages/browser-integration-tests/suites/integrations/httpContext/test.ts index dd8a870a3bad..db8a384510a4 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/httpContext/test.ts +++ b/dev-packages/browser-integration-tests/suites/integrations/httpContext/test.ts @@ -1,17 +1,18 @@ import { expect } from '@playwright/test'; -import type { Event } from '@sentry/core'; +import { URL_FULL, USER_AGENT_ORIGINAL } from '@sentry/conventions/attributes'; import { sentryTest } from '../../../utils/fixtures'; -import { getFirstSentryEnvelopeRequest } from '../../../utils/helpers'; +import { envelopeRequestParser, shouldSkipTracingTest, waitForErrorRequest } from '../../../utils/helpers'; +import { getSpanOp, waitForStreamedSpan } from '../../../utils/spanUtils'; sentryTest('httpContextIntegration captures user-agent and referrer', async ({ getLocalTestUrl, page }) => { const url = await getLocalTestUrl({ testDir: __dirname }); - const errorEventPromise = getFirstSentryEnvelopeRequest(page); + const errorEventPromise = waitForErrorRequest(page); // Simulate document.referrer being set to test full functionality of the integration await page.goto(url, { referer: 'https://sentry.io/' }); - const errorEvent = await errorEventPromise; + const errorEvent = envelopeRequestParser(await errorEventPromise); expect(errorEvent.exception?.values).toHaveLength(1); @@ -23,3 +24,44 @@ sentryTest('httpContextIntegration captures user-agent and referrer', async ({ g url: expect.any(String), }); }); + +sentryTest('httpContextIntegration captures url, user-agent, and referer', async ({ getLocalTestUrl, page }) => { + sentryTest.skip(shouldSkipTracingTest()); + const url = await getLocalTestUrl({ testDir: __dirname }); + + const spanPromise = waitForStreamedSpan(page, span => span.is_segment && getSpanOp(span) === 'pageload'); + + await page.goto(url, { referer: 'https://sentry.io/' }); + + const pageloadSpan = await spanPromise; + + expect(pageloadSpan.attributes[URL_FULL]).toEqual({ type: 'string', value: expect.any(String) }); + expect(pageloadSpan.attributes[USER_AGENT_ORIGINAL]).toEqual({ + type: 'string', + value: expect.any(String), + }); + expect(pageloadSpan.attributes['http.request.header.referer']).toEqual({ + type: 'array', + value: ['https://sentry.io/'], + }); +}); + +sentryTest( + 'httpContextIntegration only attaches the user agent to non-segment spans', + async ({ getLocalTestUrl, page }) => { + sentryTest.skip(shouldSkipTracingTest()); + const url = await getLocalTestUrl({ testDir: __dirname }); + + const spanPromise = waitForStreamedSpan(page, span => span.name === 'child-span'); + + await page.goto(url, { referer: 'https://sentry.io/' }); + + const childSpan = await spanPromise; + + expect(childSpan.is_segment).toBe(false); + expect(childSpan.attributes[USER_AGENT_ORIGINAL]).toEqual({ type: 'string', value: expect.any(String) }); + // The document URL and referer only belong on the segment span. + expect(childSpan.attributes[URL_FULL]).toBeUndefined(); + expect(childSpan.attributes['http.request.header.referer']).toBeUndefined(); + }, +); diff --git a/dev-packages/browser-integration-tests/suites/integrations/lazyLoad/existingIntegration/init.js b/dev-packages/browser-integration-tests/suites/integrations/lazyLoad/existingIntegration/init.js index c51de9a85535..85b9d1a0fb2e 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/lazyLoad/existingIntegration/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/lazyLoad/existingIntegration/init.js @@ -8,7 +8,6 @@ window.Sentry = { }; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [], }); diff --git a/dev-packages/browser-integration-tests/suites/integrations/lazyLoad/feedbackIntegration/init.js b/dev-packages/browser-integration-tests/suites/integrations/lazyLoad/feedbackIntegration/init.js index dedd00bbcec5..d0ff6bbb92c9 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/lazyLoad/feedbackIntegration/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/lazyLoad/feedbackIntegration/init.js @@ -1,7 +1,6 @@ import * as Sentry from '@sentry/browser'; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [], }); diff --git a/dev-packages/browser-integration-tests/suites/integrations/lazyLoad/moduleMetadataIntegration/init.js b/dev-packages/browser-integration-tests/suites/integrations/lazyLoad/moduleMetadataIntegration/init.js index 27950d9cf079..5991109fce66 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/lazyLoad/moduleMetadataIntegration/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/lazyLoad/moduleMetadataIntegration/init.js @@ -1,7 +1,6 @@ import * as Sentry from '@sentry/browser'; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [], }); diff --git a/dev-packages/browser-integration-tests/suites/integrations/lazyLoad/validIntegration/init.js b/dev-packages/browser-integration-tests/suites/integrations/lazyLoad/validIntegration/init.js index 98bcbc6c0d00..eb75d30bf760 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/lazyLoad/validIntegration/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/lazyLoad/validIntegration/init.js @@ -7,7 +7,6 @@ window.Sentry = { }; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [], }); diff --git a/dev-packages/browser-integration-tests/suites/integrations/lazyLoad/validIntegrationNpm/init.js b/dev-packages/browser-integration-tests/suites/integrations/lazyLoad/validIntegrationNpm/init.js index ba3766db49f5..d06b9b7b1dfd 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/lazyLoad/validIntegrationNpm/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/lazyLoad/validIntegrationNpm/init.js @@ -6,7 +6,6 @@ import * as Sentry from '@sentry/browser'; window._testSentry = { ...Sentry }; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [], }); diff --git a/dev-packages/browser-integration-tests/suites/integrations/moduleMetadata/appliesMetadata/init.js b/dev-packages/browser-integration-tests/suites/integrations/moduleMetadata/appliesMetadata/init.js index b64706e66c9a..d5b05443ca9e 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/moduleMetadata/appliesMetadata/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/moduleMetadata/appliesMetadata/init.js @@ -2,7 +2,6 @@ import * as Sentry from '@sentry/browser'; import { moduleMetadataIntegration } from '@sentry/browser'; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [moduleMetadataIntegration()], beforeSend(event) { diff --git a/dev-packages/browser-integration-tests/suites/integrations/moduleMetadata/appliesMetadataWithRewriteFrames/init.js b/dev-packages/browser-integration-tests/suites/integrations/moduleMetadata/appliesMetadataWithRewriteFrames/init.js index a72466f73a64..3c89709b3dfb 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/moduleMetadata/appliesMetadataWithRewriteFrames/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/moduleMetadata/appliesMetadataWithRewriteFrames/init.js @@ -6,7 +6,6 @@ import { moduleMetadataIntegration } from '@sentry/browser'; import { rewriteFramesIntegration } from '@sentry/browser'; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [ moduleMetadataIntegration(), diff --git a/dev-packages/browser-integration-tests/suites/integrations/supabase/auth/init.js b/dev-packages/browser-integration-tests/suites/integrations/supabase/auth/init.js index d7f5949f6033..631eb37b3eb1 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/supabase/auth/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/supabase/auth/init.js @@ -6,7 +6,6 @@ window.Sentry = Sentry; const supabaseClient = createClient('https://test.supabase.co', 'test-key'); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [Sentry.browserTracingIntegration(), Sentry.supabaseIntegration({ supabaseClient })], tracesSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/integrations/supabase/auth/test.ts b/dev-packages/browser-integration-tests/suites/integrations/supabase/auth/test.ts index 5d066ae72ff1..1f3ece2217e5 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/supabase/auth/test.ts +++ b/dev-packages/browser-integration-tests/suites/integrations/supabase/auth/test.ts @@ -1,12 +1,8 @@ import type { Page } from '@playwright/test'; import { expect } from '@playwright/test'; -import type { Event } from '@sentry/core'; +import { getSpanOp, waitForStreamedSpan } from '../../../../utils/spanUtils'; import { sentryTest } from '../../../../utils/fixtures'; -import { - getFirstSentryEnvelopeRequest, - getMultipleSentryEnvelopeRequests, - shouldSkipTracingTest, -} from '../../../../utils/helpers'; +import { envelopeRequestParser, waitForErrorRequest, shouldSkipTracingTest } from '../../../../utils/helpers'; async function mockSupabaseAuthRoutesSuccess(page: Page) { await page.route(/\/auth\/v1\/token\?grant_type=password/, route => { @@ -84,82 +80,96 @@ if (bundle.startsWith('bundle')) { sentryTest('should capture Supabase authentication spans', async ({ getLocalTestUrl, page }) => { if (shouldSkipTracingTest()) { - return; + sentryTest.skip(); } await mockSupabaseAuthRoutesSuccess(page); const url = await getLocalTestUrl({ testDir: __dirname }); - const eventData = await getFirstSentryEnvelopeRequest(page, url); - const supabaseSpans = eventData.spans?.filter(({ op }) => op?.startsWith('db')); + const rootSpanPromise = waitForStreamedSpan(page, span => span.is_segment && getSpanOp(span) === 'pageload'); + const signInSpanPromise = waitForStreamedSpan(page, span => span.name === 'auth.signInWithPassword'); + const signOutSpanPromise = waitForStreamedSpan(page, span => span.name === 'auth.signOut'); + await page.goto(url); - expect(supabaseSpans).toHaveLength(2); - expect(supabaseSpans![0]).toMatchObject({ - description: 'auth signInWithPassword', - op: 'db', - parent_span_id: eventData.contexts?.trace?.span_id, + const [rootSpan, signInSpan, signOutSpan] = await Promise.all([ + rootSpanPromise, + signInSpanPromise, + signOutSpanPromise, + ]); + + expect(signInSpan).toMatchObject({ + name: 'auth.signInWithPassword', + parent_span_id: rootSpan.span_id, span_id: expect.any(String), start_timestamp: expect.any(Number), - timestamp: expect.any(Number), - trace_id: eventData.contexts?.trace?.trace_id, + end_timestamp: expect.any(Number), + trace_id: rootSpan.trace_id, status: 'ok', - data: expect.objectContaining({ - 'sentry.op': 'db', - 'sentry.origin': 'auto.db.supabase', - 'db.operation.name': 'auth.signInWithPassword', - 'db.system.name': 'postgresql', + attributes: expect.objectContaining({ + 'sentry.op': { type: 'string', value: 'db' }, + 'sentry.origin': { type: 'string', value: 'auto.db.supabase' }, + 'db.operation.name': { type: 'string', value: 'auth.signInWithPassword' }, + 'db.system.name': { type: 'string', value: 'postgresql' }, }), }); - expect(supabaseSpans![1]).toMatchObject({ - description: 'auth signOut', - op: 'db', - parent_span_id: eventData.contexts?.trace?.span_id, + expect(signOutSpan).toMatchObject({ + name: 'auth.signOut', + parent_span_id: rootSpan.span_id, span_id: expect.any(String), start_timestamp: expect.any(Number), - timestamp: expect.any(Number), - trace_id: eventData.contexts?.trace?.trace_id, + end_timestamp: expect.any(Number), + trace_id: rootSpan.trace_id, status: 'ok', - data: expect.objectContaining({ - 'sentry.op': 'db', - 'sentry.origin': 'auto.db.supabase', - 'db.operation.name': 'auth.signOut', - 'db.system.name': 'postgresql', + attributes: expect.objectContaining({ + 'sentry.op': { type: 'string', value: 'db' }, + 'sentry.origin': { type: 'string', value: 'auto.db.supabase' }, + 'db.operation.name': { type: 'string', value: 'auth.signOut' }, + 'db.system.name': { type: 'string', value: 'postgresql' }, }), }); }); sentryTest('should capture Supabase authentication errors', async ({ getLocalTestUrl, page }) => { if (shouldSkipTracingTest()) { - return; + sentryTest.skip(); } await mockSupabaseAuthRoutesFailure(page); const url = await getLocalTestUrl({ testDir: __dirname }); - const [errorEvent, transactionEvent] = await getMultipleSentryEnvelopeRequests(page, 2, { url }); - - const supabaseSpans = transactionEvent.spans?.filter(({ op }) => op?.startsWith('db')); + const rootSpanPromise = waitForStreamedSpan(page, span => span.is_segment && getSpanOp(span) === 'pageload'); + const signInSpanPromise = waitForStreamedSpan(page, span => span.name === 'auth.signInWithPassword'); + const errorRequestPromise = waitForErrorRequest( + page, + event => event.exception?.values?.[0]?.value === 'Invalid email or password', + ); + await page.goto(url); + + const [rootSpan, signInSpan, errorRequest] = await Promise.all([ + rootSpanPromise, + signInSpanPromise, + errorRequestPromise, + ]); + const errorEvent = envelopeRequestParser(errorRequest); expect(errorEvent.exception?.values?.[0].value).toBe('Invalid email or password'); - expect(supabaseSpans).toHaveLength(2); - expect(supabaseSpans![0]).toMatchObject({ - description: 'auth signInWithPassword', - op: 'db', - parent_span_id: transactionEvent.contexts?.trace?.span_id, + expect(signInSpan).toMatchObject({ + name: 'auth.signInWithPassword', + parent_span_id: rootSpan.span_id, span_id: expect.any(String), start_timestamp: expect.any(Number), - timestamp: expect.any(Number), - trace_id: transactionEvent.contexts?.trace?.trace_id, - status: 'internal_error', - data: expect.objectContaining({ - 'sentry.op': 'db', - 'sentry.origin': 'auto.db.supabase', - 'db.operation.name': 'auth.signInWithPassword', - 'db.system.name': 'postgresql', + end_timestamp: expect.any(Number), + trace_id: rootSpan.trace_id, + status: 'error', + attributes: expect.objectContaining({ + 'sentry.op': { type: 'string', value: 'db' }, + 'sentry.origin': { type: 'string', value: 'auto.db.supabase' }, + 'db.operation.name': { type: 'string', value: 'auth.signInWithPassword' }, + 'db.system.name': { type: 'string', value: 'postgresql' }, }), }); }); diff --git a/dev-packages/browser-integration-tests/suites/integrations/supabase/db-operations/init.js b/dev-packages/browser-integration-tests/suites/integrations/supabase/db-operations/init.js index 1e93dfea4606..0f600426009f 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/supabase/db-operations/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/supabase/db-operations/init.js @@ -6,7 +6,6 @@ window.Sentry = Sentry; const supabaseClient = createClient('https://test.supabase.co', 'test-key'); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [Sentry.browserTracingIntegration(), Sentry.supabaseIntegration({ supabaseClient })], tracesSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/integrations/supabase/db-operations/test.ts b/dev-packages/browser-integration-tests/suites/integrations/supabase/db-operations/test.ts index 132a473e35f1..c392118f3e3d 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/supabase/db-operations/test.ts +++ b/dev-packages/browser-integration-tests/suites/integrations/supabase/db-operations/test.ts @@ -1,12 +1,7 @@ import type { Page } from '@playwright/test'; import { expect } from '@playwright/test'; -import type { Event } from '@sentry/core'; import { sentryTest } from '../../../../utils/fixtures'; -import { - getFirstSentryEnvelopeRequest, - getMultipleSentryEnvelopeRequests, - shouldSkipTracingTest, -} from '../../../../utils/helpers'; +import { envelopeRequestParser, waitForErrorRequest, shouldSkipTracingTest } from '../../../../utils/helpers'; async function mockSupabaseRoute(page: Page) { await page.route('**/rest/v1/todos**', route => { @@ -30,14 +25,16 @@ if (bundle.startsWith('bundle')) { sentryTest('should capture Supabase database operation breadcrumbs', async ({ getLocalTestUrl, page }) => { if (shouldSkipTracingTest()) { - return; + sentryTest.skip(); } await mockSupabaseRoute(page); const url = await getLocalTestUrl({ testDir: __dirname }); - const eventData = await getFirstSentryEnvelopeRequest(page, url); + const eventPromise = waitForErrorRequest(page, event => event.exception?.values?.[0]?.value === 'Test Error'); + await page.goto(url); + const eventData = envelopeRequestParser(await eventPromise); expect(eventData.breadcrumbs).toBeDefined(); expect(eventData.breadcrumbs).toContainEqual({ @@ -53,34 +50,32 @@ sentryTest('should capture Supabase database operation breadcrumbs', async ({ ge sentryTest('should capture multiple Supabase operations in sequence', async ({ getLocalTestUrl, page }) => { if (shouldSkipTracingTest()) { - return; + sentryTest.skip(); } await mockSupabaseRoute(page); const url = await getLocalTestUrl({ testDir: __dirname }); - const events = await getMultipleSentryEnvelopeRequests(page, 2, { url }); - - expect(events).toHaveLength(2); - - events.forEach(event => { - expect( - event.breadcrumbs?.some(breadcrumb => breadcrumb.type === 'supabase' && breadcrumb?.category?.startsWith('db.')), - ).toBe(true); - }); + const eventPromise = waitForErrorRequest(page, event => event.exception?.values?.[0]?.value === 'Test Error'); + await page.goto(url); + const event = envelopeRequestParser(await eventPromise); + const supabaseBreadcrumbs = event.breadcrumbs?.filter(breadcrumb => breadcrumb.type === 'supabase'); + expect(supabaseBreadcrumbs?.map(breadcrumb => breadcrumb.category)).toEqual(['db.insert', 'db.select']); }); sentryTest('should include correct data payload in Supabase breadcrumbs', async ({ getLocalTestUrl, page }) => { if (shouldSkipTracingTest()) { - return; + sentryTest.skip(); } await mockSupabaseRoute(page); const url = await getLocalTestUrl({ testDir: __dirname }); - const eventData = await getFirstSentryEnvelopeRequest(page, url); + const eventPromise = waitForErrorRequest(page, event => event.exception?.values?.[0]?.value === 'Test Error'); + await page.goto(url); + const eventData = envelopeRequestParser(await eventPromise); const supabaseBreadcrumb = eventData.breadcrumbs?.find(b => b.type === 'supabase'); diff --git a/dev-packages/browser-integration-tests/suites/integrations/thirdPartyErrorsFilter/init.js b/dev-packages/browser-integration-tests/suites/integrations/thirdPartyErrorsFilter/init.js index c5b7ded472bd..9b8269790d41 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/thirdPartyErrorsFilter/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/thirdPartyErrorsFilter/init.js @@ -25,7 +25,6 @@ _sentryModuleMetadataGlobal._sentryModuleMetadata[new Error().stack] = Object.as ); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [ thirdPartyErrorFilterIntegration({ behaviour: 'apply-tag-if-contains-third-party-frames', filterKeys: ['my-app'] }), diff --git a/dev-packages/browser-integration-tests/suites/integrations/viewHierarchy/init.js b/dev-packages/browser-integration-tests/suites/integrations/viewHierarchy/init.js index 069ac69900b5..16e92edb9230 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/viewHierarchy/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/viewHierarchy/init.js @@ -4,7 +4,6 @@ import { viewHierarchyIntegration } from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [viewHierarchyIntegration()], }); diff --git a/dev-packages/browser-integration-tests/suites/integrations/webWorker/init.js b/dev-packages/browser-integration-tests/suites/integrations/webWorker/init.js index 2b6db24fef69..100b16a2d408 100644 --- a/dev-packages/browser-integration-tests/suites/integrations/webWorker/init.js +++ b/dev-packages/browser-integration-tests/suites/integrations/webWorker/init.js @@ -2,7 +2,6 @@ import * as Sentry from '@sentry/browser'; // Initialize Sentry with webWorker integration Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/ipv6/init.js b/dev-packages/browser-integration-tests/suites/ipv6/init.js index 2016ec4e2498..de8412c65a86 100644 --- a/dev-packages/browser-integration-tests/suites/ipv6/init.js +++ b/dev-packages/browser-integration-tests/suites/ipv6/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@[2001:db8::1]/1337', sendClientReports: false, defaultIntegrations: false, diff --git a/dev-packages/browser-integration-tests/suites/manual-client/force-init-chrome-extension/init.js b/dev-packages/browser-integration-tests/suites/manual-client/force-init-chrome-extension/init.js index 640d3dc01e8c..5d5cb2799a4e 100644 --- a/dev-packages/browser-integration-tests/suites/manual-client/force-init-chrome-extension/init.js +++ b/dev-packages/browser-integration-tests/suites/manual-client/force-init-chrome-extension/init.js @@ -6,7 +6,6 @@ window.Sentry = Sentry; window.chrome = { runtime: { id: 'mock-extension-id' } }; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', skipBrowserExtensionCheck: true, }); diff --git a/dev-packages/browser-integration-tests/suites/manual-client/skip-init-browser-extension/init.js b/dev-packages/browser-integration-tests/suites/manual-client/skip-init-browser-extension/init.js index c49c01424c29..7494359a0a8a 100644 --- a/dev-packages/browser-integration-tests/suites/manual-client/skip-init-browser-extension/init.js +++ b/dev-packages/browser-integration-tests/suites/manual-client/skip-init-browser-extension/init.js @@ -6,6 +6,5 @@ window.Sentry = Sentry; window.browser = { runtime: { id: 'mock-extension-id' } }; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/manual-client/skip-init-chrome-extension/init.js b/dev-packages/browser-integration-tests/suites/manual-client/skip-init-chrome-extension/init.js index 3c7486e35a1d..6cb3b49ceb53 100644 --- a/dev-packages/browser-integration-tests/suites/manual-client/skip-init-chrome-extension/init.js +++ b/dev-packages/browser-integration-tests/suites/manual-client/skip-init-chrome-extension/init.js @@ -6,6 +6,5 @@ window.Sentry = Sentry; window.chrome = { runtime: { id: 'mock-extension-id' } }; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/old-sdk-interop/acs/getCurrentScope/init.js b/dev-packages/browser-integration-tests/suites/old-sdk-interop/acs/getCurrentScope/init.js index 46a9f9358fc7..c21a085e735e 100644 --- a/dev-packages/browser-integration-tests/suites/old-sdk-interop/acs/getCurrentScope/init.js +++ b/dev-packages/browser-integration-tests/suites/old-sdk-interop/acs/getCurrentScope/init.js @@ -15,6 +15,5 @@ window.__SENTRY__ = { window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/old-sdk-interop/hub/isOlderThan/init.js b/dev-packages/browser-integration-tests/suites/old-sdk-interop/hub/isOlderThan/init.js index 14b0455ede2e..0bb1961ce1d9 100644 --- a/dev-packages/browser-integration-tests/suites/old-sdk-interop/hub/isOlderThan/init.js +++ b/dev-packages/browser-integration-tests/suites/old-sdk-interop/hub/isOlderThan/init.js @@ -15,6 +15,5 @@ window.__SENTRY__ = { window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/addBreadcrumb/init.js b/dev-packages/browser-integration-tests/suites/public-api/addBreadcrumb/init.js index d9c534b801cd..d8c94f36fdd0 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/addBreadcrumb/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/addBreadcrumb/init.js @@ -3,6 +3,5 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/captureException/errorEvent/init.js b/dev-packages/browser-integration-tests/suites/public-api/captureException/errorEvent/init.js index a649c5b5e29a..3796a084234a 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/captureException/errorEvent/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/captureException/errorEvent/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', defaultIntegrations: false, }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/captureException/init.js b/dev-packages/browser-integration-tests/suites/public-api/captureException/init.js index d9c534b801cd..d8c94f36fdd0 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/captureException/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/captureException/init.js @@ -3,6 +3,5 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/captureFeedback/init.js b/dev-packages/browser-integration-tests/suites/public-api/captureFeedback/init.js index d9c534b801cd..d8c94f36fdd0 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/captureFeedback/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/captureFeedback/init.js @@ -3,6 +3,5 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/captureFeedback/withCaptureException/init.js b/dev-packages/browser-integration-tests/suites/public-api/captureFeedback/withCaptureException/init.js index 2fd49d572deb..099425cd3f2f 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/captureFeedback/withCaptureException/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/captureFeedback/withCaptureException/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', beforeSend(event) { Sentry.captureFeedback({ diff --git a/dev-packages/browser-integration-tests/suites/public-api/captureFeedback/withCaptureMessage/init.js b/dev-packages/browser-integration-tests/suites/public-api/captureFeedback/withCaptureMessage/init.js index e52afed53f2b..b1cc371e5ec6 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/captureFeedback/withCaptureMessage/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/captureFeedback/withCaptureMessage/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', beforeSend(event) { Sentry.captureFeedback({ diff --git a/dev-packages/browser-integration-tests/suites/public-api/captureMessage/init.js b/dev-packages/browser-integration-tests/suites/public-api/captureMessage/init.js index d9c534b801cd..d8c94f36fdd0 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/captureMessage/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/captureMessage/init.js @@ -3,6 +3,5 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/captureMessage/multipleMessageAttachStacktrace/init.js b/dev-packages/browser-integration-tests/suites/public-api/captureMessage/multipleMessageAttachStacktrace/init.js index fb8609f66043..99ffd9f0ab31 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/captureMessage/multipleMessageAttachStacktrace/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/captureMessage/multipleMessageAttachStacktrace/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', attachStacktrace: true, }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/captureMessage/simple_message_attachStackTrace/init.js b/dev-packages/browser-integration-tests/suites/public-api/captureMessage/simple_message_attachStackTrace/init.js index fb8609f66043..99ffd9f0ab31 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/captureMessage/simple_message_attachStackTrace/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/captureMessage/simple_message_attachStackTrace/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', attachStacktrace: true, }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/dataCollection/init.js b/dev-packages/browser-integration-tests/suites/public-api/dataCollection/init.js index bd0421b32761..7c200c542c56 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/dataCollection/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/dataCollection/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', tracesSampleRate: 1, }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/dataCollection/overrideIp/init.js b/dev-packages/browser-integration-tests/suites/public-api/dataCollection/overrideIp/init.js index 0a4b1d7a5f94..baedf4f10a29 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/dataCollection/overrideIp/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/dataCollection/overrideIp/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', tracesSampleRate: 1, dataCollection: { userInfo: false }, diff --git a/dev-packages/browser-integration-tests/suites/public-api/dataCollection/performance/test.ts b/dev-packages/browser-integration-tests/suites/public-api/dataCollection/performance/test.ts index 7d048c9e9b48..9d3209772cf5 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/dataCollection/performance/test.ts +++ b/dev-packages/browser-integration-tests/suites/public-api/dataCollection/performance/test.ts @@ -1,18 +1,17 @@ import { expect } from '@playwright/test'; import { sentryTest } from '../../../../utils/fixtures'; -import { - envelopeRequestParser, - shouldSkipTracingTest, - waitForTransactionRequestOnUrl, -} from '../../../../utils/helpers'; +import { shouldSkipTracingTest } from '../../../../utils/helpers'; +import { waitForStreamedSpanEnvelope } from '../../../../utils/spanUtils'; -sentryTest('sets user.ip_address to "auto" on transactions by default', async ({ getLocalTestUrl, page }) => { - if (shouldSkipTracingTest()) { - sentryTest.skip(); - } +sentryTest('infers user IP and user agent on streamed spans by default', async ({ getLocalTestUrl, page }) => { + sentryTest.skip(shouldSkipTracingTest()); const url = await getLocalTestUrl({ testDir: __dirname }); - const req = await waitForTransactionRequestOnUrl(page, url); - const transaction = envelopeRequestParser(req); - expect(transaction.sdk?.settings?.infer_ip).toBe('auto'); + const envelopePromise = waitForStreamedSpanEnvelope(page, envelope => + envelope[1][0][1].items.some(span => span.is_segment && span.name === 'woot'), + ); + await page.goto(url); + + const envelope = await envelopePromise; + expect(envelope[1][0][1].ingest_settings).toEqual({ infer_ip: 'auto', infer_user_agent: 'auto' }); }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/dataCollection/replay/init.js b/dev-packages/browser-integration-tests/suites/public-api/dataCollection/replay/init.js index 687dd524d917..530fceb8ec7b 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/dataCollection/replay/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/dataCollection/replay/init.js @@ -12,7 +12,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', replaysSessionSampleRate: 1.0, replaysOnErrorSampleRate: 0.0, diff --git a/dev-packages/browser-integration-tests/suites/public-api/dataCollection/sessions/init.js b/dev-packages/browser-integration-tests/suites/public-api/dataCollection/sessions/init.js index 596d13f7af7b..b3b47b24b57e 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/dataCollection/sessions/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/dataCollection/sessions/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', release: '1.0', }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/debug/init.js b/dev-packages/browser-integration-tests/suites/public-api/debug/init.js index b8a138c0fdbf..573e4fdcb621 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/debug/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/debug/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', debug: true, }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/denyUrls/init.js b/dev-packages/browser-integration-tests/suites/public-api/denyUrls/init.js index 78d16f24cc20..c16b31fd1c85 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/denyUrls/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/denyUrls/init.js @@ -5,7 +5,6 @@ window.Sentry = Sentry; window._errorCount = 0; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', denyUrls: ['foo.js'], beforeSend: event => { diff --git a/dev-packages/browser-integration-tests/suites/public-api/diagnoseSdkConnectivity/init.js b/dev-packages/browser-integration-tests/suites/public-api/diagnoseSdkConnectivity/init.js index 052a5b96651e..9bb07ba0cc11 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/diagnoseSdkConnectivity/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/diagnoseSdkConnectivity/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [ Sentry.browserTracingIntegration({ diff --git a/dev-packages/browser-integration-tests/suites/public-api/diagnoseSdkConnectivity/test.ts b/dev-packages/browser-integration-tests/suites/public-api/diagnoseSdkConnectivity/test.ts index c18d75464223..5faa0f4d6964 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/diagnoseSdkConnectivity/test.ts +++ b/dev-packages/browser-integration-tests/suites/public-api/diagnoseSdkConnectivity/test.ts @@ -1,6 +1,14 @@ +import type { SerializedStreamedSpan, StreamedSpanEnvelope } from '@sentry/core'; import { expect } from '@playwright/test'; +import { getSpanOp, waitForStreamedSpan } from '../../../utils/spanUtils'; import { sentryTest } from '../../../utils/fixtures'; -import { envelopeRequestParser, shouldSkipTracingTest, waitForTransactionRequest } from '../../../utils/helpers'; +import { + envelopeRequestParser, + getEnvelopeType, + properFullEnvelopeParser, + shouldSkipTracingTest, + waitForErrorRequest, +} from '../../../utils/helpers'; sentryTest('makes a call to sentry.io to diagnose SDK connectivity', async ({ getLocalTestUrl, page }) => { const bundle = process.env.PW_BUNDLE; @@ -9,7 +17,16 @@ sentryTest('makes a call to sentry.io to diagnose SDK connectivity', async ({ ge sentryTest.skip(); } - const pageloadRequestPromise = waitForTransactionRequest(page, e => e.contexts?.trace?.op === 'pageload'); + const spans: SerializedStreamedSpan[] = []; + page.on('request', request => { + if (!request.url().startsWith('https://dsn.ingest.sentry.io/')) { + return; + } + if (getEnvelopeType(request) === 'span') { + spans.push(...properFullEnvelopeParser(request)[1][0][1].items); + } + }); + const pageloadSpanPromise = waitForStreamedSpan(page, span => span.is_segment && getSpanOp(span) === 'pageload'); // mock sdk connectivity url to avoid making actual request to sentry.io page.route('**/api/4509632503087104/envelope/**/*', route => { @@ -30,17 +47,21 @@ sentryTest('makes a call to sentry.io to diagnose SDK connectivity', async ({ ge const url = await getLocalTestUrl({ testDir: __dirname }); await page.goto(url); - const pageLoadEvent = envelopeRequestParser(await pageloadRequestPromise); + await pageloadSpanPromise; // undefined is expected and means the request was successful expect(await diagnoseMessagePromise).toEqual('SDK connectivity: undefined'); // the request to sentry.io should not be traced, hence no http.client span should be sent. - const httpClientSpans = pageLoadEvent.spans?.filter(s => s.op === 'http.client'); + await page.evaluate(() => (window as any).Sentry.flush()); + const httpClientSpans = spans.filter(span => getSpanOp(span) === 'http.client'); expect(httpClientSpans).toHaveLength(0); // no fetch breadcrumb should be sent (only breadcrumb for the console log) - expect(pageLoadEvent.breadcrumbs).toEqual([ + const eventPromise = waitForErrorRequest(page, event => event.message === 'connectivity checked'); + await page.evaluate(() => (window as any).Sentry.captureMessage('connectivity checked')); + const event = envelopeRequestParser(await eventPromise); + expect(event.breadcrumbs).toEqual([ expect.objectContaining({ category: 'console', message: 'SDK connectivity: undefined', diff --git a/dev-packages/browser-integration-tests/suites/public-api/ignoreErrors/init.js b/dev-packages/browser-integration-tests/suites/public-api/ignoreErrors/init.js index b3e95f5cd7f9..e66214c5c0bf 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/ignoreErrors/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/ignoreErrors/init.js @@ -5,7 +5,6 @@ window.Sentry = Sentry; window._errorCount = 0; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', ignoreErrors: ['ignoreErrorTest'], beforeSend: event => { diff --git a/dev-packages/browser-integration-tests/suites/public-api/init/init.js b/dev-packages/browser-integration-tests/suites/public-api/init/init.js index d9c534b801cd..d8c94f36fdd0 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/init/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/init/init.js @@ -3,6 +3,5 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/init/stringSampleRate/init.js b/dev-packages/browser-integration-tests/suites/public-api/init/stringSampleRate/init.js index cebc5f71b52b..2b5313b11a6d 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/init/stringSampleRate/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/init/stringSampleRate/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: '0', }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/instrumentation/eventListener/init.js b/dev-packages/browser-integration-tests/suites/public-api/instrumentation/eventListener/init.js index d9c534b801cd..d8c94f36fdd0 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/instrumentation/eventListener/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/instrumentation/eventListener/init.js @@ -3,6 +3,5 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/instrumentation/eventListener/original-callback/init.js b/dev-packages/browser-integration-tests/suites/public-api/instrumentation/eventListener/original-callback/init.js index 8e180dcfc1ee..15e8680cc075 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/instrumentation/eventListener/original-callback/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/instrumentation/eventListener/original-callback/init.js @@ -8,6 +8,5 @@ window.originalBuiltIns = { window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/instrumentation/init.js b/dev-packages/browser-integration-tests/suites/public-api/instrumentation/init.js index d9c534b801cd..d8c94f36fdd0 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/instrumentation/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/instrumentation/init.js @@ -3,6 +3,5 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/instrumentation/onError/init.js b/dev-packages/browser-integration-tests/suites/public-api/instrumentation/onError/init.js index d9c534b801cd..d8c94f36fdd0 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/instrumentation/onError/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/instrumentation/onError/init.js @@ -3,6 +3,5 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/instrumentation/onUnhandledRejection/init.js b/dev-packages/browser-integration-tests/suites/public-api/instrumentation/onUnhandledRejection/init.js index d9c534b801cd..d8c94f36fdd0 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/instrumentation/onUnhandledRejection/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/instrumentation/onUnhandledRejection/init.js @@ -3,6 +3,5 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/instrumentation/requestAnimationFrame/init.js b/dev-packages/browser-integration-tests/suites/public-api/instrumentation/requestAnimationFrame/init.js index d9c534b801cd..d8c94f36fdd0 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/instrumentation/requestAnimationFrame/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/instrumentation/requestAnimationFrame/init.js @@ -3,6 +3,5 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/instrumentation/setTimeoutFrozen/init.js b/dev-packages/browser-integration-tests/suites/public-api/instrumentation/setTimeoutFrozen/init.js index 33923ae30df1..0223ee8568b4 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/instrumentation/setTimeoutFrozen/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/instrumentation/setTimeoutFrozen/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', // We assert on the debug message, so we need to enable debug mode debug: true, diff --git a/dev-packages/browser-integration-tests/suites/public-api/instrumentation/xhr/init.js b/dev-packages/browser-integration-tests/suites/public-api/instrumentation/xhr/init.js index d9c534b801cd..d8c94f36fdd0 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/instrumentation/xhr/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/instrumentation/xhr/init.js @@ -3,6 +3,5 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/logger/consoleLoggingIntegrationShim/init.js b/dev-packages/browser-integration-tests/suites/public-api/logger/consoleLoggingIntegrationShim/init.js index 6e9fbee0b83c..7b5ee5690589 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/logger/consoleLoggingIntegrationShim/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/logger/consoleLoggingIntegrationShim/init.js @@ -4,7 +4,6 @@ window.Sentry = Sentry; // consoleLoggingIntegration should not actually work, but still not error out Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, integrations: [Sentry.consoleLoggingIntegration()], diff --git a/dev-packages/browser-integration-tests/suites/public-api/logger/init.js b/dev-packages/browser-integration-tests/suites/public-api/logger/init.js index d9c534b801cd..d8c94f36fdd0 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/logger/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/logger/init.js @@ -3,6 +3,5 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/logger/integration/init.js b/dev-packages/browser-integration-tests/suites/public-api/logger/integration/init.js index f8f1e800c1c7..5f00ab4126c4 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/logger/integration/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/logger/integration/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [Sentry.consoleLoggingIntegration()], }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/logger/loggerShim/init.js b/dev-packages/browser-integration-tests/suites/public-api/logger/loggerShim/init.js index a0e95abc054b..c4b3013773c3 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/logger/loggerShim/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/logger/loggerShim/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/metrics/afterCaptureMetric/init.js b/dev-packages/browser-integration-tests/suites/public-api/metrics/afterCaptureMetric/init.js index f3c84a9f36f5..5590fbb90547 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/metrics/afterCaptureMetric/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/metrics/afterCaptureMetric/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', release: '1.0.0', environment: 'test', diff --git a/dev-packages/browser-integration-tests/suites/public-api/metrics/init.js b/dev-packages/browser-integration-tests/suites/public-api/metrics/init.js index 8a9f2f73c857..73c6e63ed335 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/metrics/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/metrics/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', release: '1.0.0', environment: 'test', diff --git a/dev-packages/browser-integration-tests/suites/public-api/metrics/metricsShim/init.js b/dev-packages/browser-integration-tests/suites/public-api/metrics/metricsShim/init.js index a2d04de8cfb6..e184d8a0116e 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/metrics/metricsShim/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/metrics/metricsShim/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/setContext/init.js b/dev-packages/browser-integration-tests/suites/public-api/setContext/init.js index d9c534b801cd..d8c94f36fdd0 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/setContext/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/setContext/init.js @@ -3,6 +3,5 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/setExtra/init.js b/dev-packages/browser-integration-tests/suites/public-api/setExtra/init.js index d9c534b801cd..d8c94f36fdd0 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/setExtra/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/setExtra/init.js @@ -3,6 +3,5 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/setExtras/init.js b/dev-packages/browser-integration-tests/suites/public-api/setExtras/init.js index d9c534b801cd..d8c94f36fdd0 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/setExtras/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/setExtras/init.js @@ -3,6 +3,5 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/setTag/init.js b/dev-packages/browser-integration-tests/suites/public-api/setTag/init.js index d9c534b801cd..d8c94f36fdd0 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/setTag/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/setTag/init.js @@ -3,6 +3,5 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/setTags/init.js b/dev-packages/browser-integration-tests/suites/public-api/setTags/init.js index d9c534b801cd..d8c94f36fdd0 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/setTags/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/setTags/init.js @@ -3,6 +3,5 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/setUser/init.js b/dev-packages/browser-integration-tests/suites/public-api/setUser/init.js index d9c534b801cd..d8c94f36fdd0 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/setUser/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/setUser/init.js @@ -3,6 +3,5 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/showReportDialog/init.js b/dev-packages/browser-integration-tests/suites/public-api/showReportDialog/init.js index d9c534b801cd..d8c94f36fdd0 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/showReportDialog/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/showReportDialog/init.js @@ -3,6 +3,5 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/public-api/withScope/init.js b/dev-packages/browser-integration-tests/suites/public-api/withScope/init.js index d9c534b801cd..d8c94f36fdd0 100644 --- a/dev-packages/browser-integration-tests/suites/public-api/withScope/init.js +++ b/dev-packages/browser-integration-tests/suites/public-api/withScope/init.js @@ -3,6 +3,5 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/replay/attachRawBodyFromRequest/init.js b/dev-packages/browser-integration-tests/suites/replay/attachRawBodyFromRequest/init.js index b1fa399a0611..2c19109f6fd9 100644 --- a/dev-packages/browser-integration-tests/suites/replay/attachRawBodyFromRequest/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/attachRawBodyFromRequest/init.js @@ -12,7 +12,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, // We ensure to sample for errors, so by default nothing is sent diff --git a/dev-packages/browser-integration-tests/suites/replay/autoFlushOnFeedback/init.js b/dev-packages/browser-integration-tests/suites/replay/autoFlushOnFeedback/init.js index a31b02589f2b..7b73a029761d 100644 --- a/dev-packages/browser-integration-tests/suites/replay/autoFlushOnFeedback/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/autoFlushOnFeedback/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/bufferModeManual/init.js b/dev-packages/browser-integration-tests/suites/replay/bufferModeManual/init.js index a023909c786f..dfc142feaa09 100644 --- a/dev-packages/browser-integration-tests/suites/replay/bufferModeManual/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/bufferModeManual/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, replaysSessionSampleRate: 0.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/bufferModeReload/init.js b/dev-packages/browser-integration-tests/suites/replay/bufferModeReload/init.js index d83f950346bd..7024a6574324 100644 --- a/dev-packages/browser-integration-tests/suites/replay/bufferModeReload/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/bufferModeReload/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, replaysSessionSampleRate: 0.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/bufferStalledRequests/init.js b/dev-packages/browser-integration-tests/suites/replay/bufferStalledRequests/init.js index 172f476c24d7..f9dccbffb530 100644 --- a/dev-packages/browser-integration-tests/suites/replay/bufferStalledRequests/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/bufferStalledRequests/init.js @@ -9,7 +9,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, replaysSessionSampleRate: 0.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/canvas/manualSnapshot/init.js b/dev-packages/browser-integration-tests/suites/replay/canvas/manualSnapshot/init.js index 20035a47839b..7704e9934cbf 100644 --- a/dev-packages/browser-integration-tests/suites/replay/canvas/manualSnapshot/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/canvas/manualSnapshot/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/canvas/records/init.js b/dev-packages/browser-integration-tests/suites/replay/canvas/records/init.js index 8c59786159ec..7bea93df6756 100644 --- a/dev-packages/browser-integration-tests/suites/replay/canvas/records/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/canvas/records/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/canvas/withCanvasIntegrationFirst/init.js b/dev-packages/browser-integration-tests/suites/replay/canvas/withCanvasIntegrationFirst/init.js index 566e6650d4c5..d933111eb57e 100644 --- a/dev-packages/browser-integration-tests/suites/replay/canvas/withCanvasIntegrationFirst/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/canvas/withCanvasIntegrationFirst/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/canvas/withCanvasIntegrationSecond/init.js b/dev-packages/browser-integration-tests/suites/replay/canvas/withCanvasIntegrationSecond/init.js index 12e46e733956..f04edea57625 100644 --- a/dev-packages/browser-integration-tests/suites/replay/canvas/withCanvasIntegrationSecond/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/canvas/withCanvasIntegrationSecond/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/canvas/withoutCanvasIntegration/init.js b/dev-packages/browser-integration-tests/suites/replay/canvas/withoutCanvasIntegration/init.js index 45d7fb7af6d3..e52033fd464e 100644 --- a/dev-packages/browser-integration-tests/suites/replay/canvas/withoutCanvasIntegration/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/canvas/withoutCanvasIntegration/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/captureComponentName/init.js b/dev-packages/browser-integration-tests/suites/replay/captureComponentName/init.js index ccab05b4662e..f8ffa20ceb8f 100644 --- a/dev-packages/browser-integration-tests/suites/replay/captureComponentName/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/captureComponentName/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/captureReplayFromReplayPackage/init.js b/dev-packages/browser-integration-tests/suites/replay/captureReplayFromReplayPackage/init.js index e8ca0b243c08..f71ddfdaaa9b 100644 --- a/dev-packages/browser-integration-tests/suites/replay/captureReplayFromReplayPackage/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/captureReplayFromReplayPackage/init.js @@ -9,7 +9,6 @@ window.Replay = replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/captureReplayOffline/init.js b/dev-packages/browser-integration-tests/suites/replay/captureReplayOffline/init.js index 53f2e9191b09..0e1297ae8710 100644 --- a/dev-packages/browser-integration-tests/suites/replay/captureReplayOffline/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/captureReplayOffline/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/compressionDisabled/init.js b/dev-packages/browser-integration-tests/suites/replay/compressionDisabled/init.js index d1e552c448b0..30fdb3198b62 100644 --- a/dev-packages/browser-integration-tests/suites/replay/compressionDisabled/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/compressionDisabled/init.js @@ -9,7 +9,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/compressionEnabled/init.js b/dev-packages/browser-integration-tests/suites/replay/compressionEnabled/init.js index 6e4e9a4e5cb5..ab1e26f4490a 100644 --- a/dev-packages/browser-integration-tests/suites/replay/compressionEnabled/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/compressionEnabled/init.js @@ -9,7 +9,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/compressionWorkerUrl/init.js b/dev-packages/browser-integration-tests/suites/replay/compressionWorkerUrl/init.js index 74d9998abeb2..973a0ae3efdc 100644 --- a/dev-packages/browser-integration-tests/suites/replay/compressionWorkerUrl/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/compressionWorkerUrl/init.js @@ -10,7 +10,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/customEvents/init.js b/dev-packages/browser-integration-tests/suites/replay/customEvents/init.js index a919d5aed823..2cfec5213d3f 100644 --- a/dev-packages/browser-integration-tests/suites/replay/customEvents/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/customEvents/init.js @@ -11,7 +11,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/dsc/init.js b/dev-packages/browser-integration-tests/suites/replay/dsc/init.js index ed91c960bdec..6411031d12b5 100644 --- a/dev-packages/browser-integration-tests/suites/replay/dsc/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/dsc/init.js @@ -9,7 +9,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [Sentry.browserTracingIntegration(), window.Replay], tracePropagationTargets: [/.*/], diff --git a/dev-packages/browser-integration-tests/suites/replay/dsc/test.ts b/dev-packages/browser-integration-tests/suites/replay/dsc/test.ts index e63c45e42293..f3eec3a11fb2 100644 --- a/dev-packages/browser-integration-tests/suites/replay/dsc/test.ts +++ b/dev-packages/browser-integration-tests/suites/replay/dsc/test.ts @@ -2,12 +2,8 @@ import { expect } from '@playwright/test'; import type * as Sentry from '@sentry/browser'; import type { EventEnvelopeHeaders } from '@sentry/core'; import { sentryTest } from '../../../utils/fixtures'; -import { - envelopeRequestParser, - shouldSkipTracingTest, - waitForErrorRequest, - waitForTransactionRequest, -} from '../../../utils/helpers'; +import { envelopeRequestParser, shouldSkipTracingTest, waitForErrorRequest } from '../../../utils/helpers'; +import { getSpanOp, waitForStreamedSpanEnvelope } from '../../../utils/spanUtils'; import { getReplaySnapshot, shouldSkipReplayTest, waitForReplayRunning } from '../../../utils/replayHelpers'; type TestWindow = Window & { @@ -16,7 +12,7 @@ type TestWindow = Window & { }; sentryTest( - 'should add replay_id to dsc of transactions when in session mode', + 'should add replay_id to dsc of streamed spans when in session mode', async ({ getLocalTestUrl, page, browserName }) => { // This is flaky on webkit, so skipping there... if (shouldSkipReplayTest() || shouldSkipTracingTest() || browserName === 'webkit') { @@ -26,7 +22,9 @@ sentryTest( const url = await getLocalTestUrl({ testDir: __dirname }); await page.goto(url); - const transactionReq = waitForTransactionRequest(page); + const spanEnvelopePromise = waitForStreamedSpanEnvelope(page, envelope => + envelope[1][0][1].items.some(span => span.is_segment && getSpanOp(span) === 'pageload'), + ); // Wait for this to be available await page.waitForFunction('!!window.Replay'); @@ -40,15 +38,9 @@ sentryTest( await page.evaluate(() => { const scope = (window as unknown as TestWindow).Sentry.getCurrentScope(); scope.setUser({ id: 'user123' }); - scope.addEventProcessor(event => { - event.transaction = 'testTransactionDSC'; - return event; - }); }); - const req0 = await transactionReq; - - const envHeader = envelopeRequestParser(req0, 0); + const [envHeader] = await spanEnvelopePromise; const replay = await getReplaySnapshot(page); expect(replay.session?.id).toBeDefined(); @@ -67,7 +59,7 @@ sentryTest( ); sentryTest( - 'should not add replay_id to dsc of transactions when in buffer mode', + 'should not add replay_id to dsc of streamed spans when in buffer mode', async ({ getLocalTestUrl, page, browserName }) => { // This is flaky on webkit, so skipping there... if (shouldSkipReplayTest() || shouldSkipTracingTest() || browserName === 'webkit') { @@ -77,7 +69,9 @@ sentryTest( const url = await getLocalTestUrl({ testDir: __dirname }); await page.goto(url); - const transactionReq = waitForTransactionRequest(page); + const spanEnvelopePromise = waitForStreamedSpanEnvelope(page, envelope => + envelope[1][0][1].items.some(span => span.is_segment && getSpanOp(span) === 'pageload'), + ); await page.evaluate(() => { (window as unknown as TestWindow).Replay.startBuffering(); @@ -88,15 +82,9 @@ sentryTest( await page.evaluate(() => { const scope = (window as unknown as TestWindow).Sentry.getCurrentScope(); scope.setUser({ id: 'user123' }); - scope.addEventProcessor(event => { - event.transaction = 'testTransactionDSC'; - return event; - }); }); - const req0 = await transactionReq; - - const envHeader = envelopeRequestParser(req0, 0); + const [envHeader] = await spanEnvelopePromise; const replay = await getReplaySnapshot(page); expect(replay.session?.id).toBeDefined(); @@ -114,7 +102,7 @@ sentryTest( ); sentryTest( - 'should add replay_id to dsc of transactions when switching from buffer to session mode', + 'should add replay_id to dsc of streamed spans when switching from buffer to session mode', async ({ getLocalTestUrl, page, browserName }) => { // This is flaky on webkit, so skipping there... if (shouldSkipReplayTest() || shouldSkipTracingTest() || browserName === 'webkit') { @@ -124,7 +112,9 @@ sentryTest( const url = await getLocalTestUrl({ testDir: __dirname }); await page.goto(url); - const transactionReq = waitForTransactionRequest(page); + const spanEnvelopePromise = waitForStreamedSpanEnvelope(page, envelope => + envelope[1][0][1].items.some(span => span.is_segment && getSpanOp(span) === 'pageload'), + ); await page.evaluate(() => { (window as unknown as TestWindow).Replay.startBuffering(); @@ -140,15 +130,9 @@ sentryTest( await page.evaluate(() => { const scope = (window as unknown as TestWindow).Sentry.getCurrentScope(); scope.setUser({ id: 'user123' }); - scope.addEventProcessor(event => { - event.transaction = 'testTransactionDSC'; - return event; - }); }); - const req0 = await transactionReq; - - const envHeader = envelopeRequestParser(req0, 0); + const [envHeader] = await spanEnvelopePromise; const replay = await getReplaySnapshot(page); expect(replay.session?.id).toBeDefined(); @@ -168,7 +152,7 @@ sentryTest( ); sentryTest( - 'should not add replay_id to dsc of transactions if replay is not enabled', + 'should not add replay_id to dsc of streamed spans if replay is not enabled', async ({ getLocalTestUrl, page, browserName }) => { // This is flaky on webkit, so skipping there... if (shouldSkipReplayTest() || shouldSkipTracingTest() || browserName === 'webkit') { @@ -178,20 +162,16 @@ sentryTest( const url = await getLocalTestUrl({ testDir: __dirname }); await page.goto(url); - const transactionReq = waitForTransactionRequest(page); + const spanEnvelopePromise = waitForStreamedSpanEnvelope(page, envelope => + envelope[1][0][1].items.some(span => span.is_segment && getSpanOp(span) === 'pageload'), + ); await page.evaluate(async () => { const scope = (window as unknown as TestWindow).Sentry.getCurrentScope(); scope.setUser({ id: 'user123' }); - scope.addEventProcessor(event => { - event.transaction = 'testTransactionDSC'; - return event; - }); }); - const req0 = await transactionReq; - - const envHeader = envelopeRequestParser(req0, 0); + const [envHeader] = await spanEnvelopePromise; const replay = await getReplaySnapshot(page); @@ -222,16 +202,20 @@ sentryTest('should add replay_id to error DSC while replay is active', async ({ const error1Req = waitForErrorRequest(page, event => event.exception?.values?.[0].value === 'This is error #1'); const error2Req = waitForErrorRequest(page, event => event.exception?.values?.[0].value === 'This is error #2'); - // We want to wait for the transaction to be done, to ensure we have a consistent test - const transactionReq = hasTracing ? waitForTransactionRequest(page) : Promise.resolve(); + // We want to wait for the pageload span to end, to ensure we have a consistent test + const spanEnvelopePromise = hasTracing + ? waitForStreamedSpanEnvelope(page, envelope => + envelope[1][0][1].items.some(span => span.is_segment && getSpanOp(span) === 'pageload'), + ) + : Promise.resolve(); // Wait for this to be available await page.waitForFunction('!!window.Replay'); - // We have to start replay before we finish the transaction, otherwise the DSC will not be frozen with the Replay ID + // We have to start replay before we finish the pageload span, otherwise the DSC will not be frozen with the Replay ID await page.evaluate('window.Replay.start();'); await waitForReplayRunning(page); - await transactionReq; + await spanEnvelopePromise; await page.evaluate('window._triggerError(1)'); diff --git a/dev-packages/browser-integration-tests/suites/replay/errors/beforeErrorSampling/init.js b/dev-packages/browser-integration-tests/suites/replay/errors/beforeErrorSampling/init.js index da36e5671e30..83e514016c1b 100644 --- a/dev-packages/browser-integration-tests/suites/replay/errors/beforeErrorSampling/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/errors/beforeErrorSampling/init.js @@ -9,7 +9,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, replaysSessionSampleRate: 0.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/errors/droppedError/init.js b/dev-packages/browser-integration-tests/suites/replay/errors/droppedError/init.js index b0e3b3b7f091..c24b8e1daca8 100644 --- a/dev-packages/browser-integration-tests/suites/replay/errors/droppedError/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/errors/droppedError/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, replaysSessionSampleRate: 0.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/errors/errorModeCustomTransport/init.js b/dev-packages/browser-integration-tests/suites/replay/errors/errorModeCustomTransport/init.js index 0a70bee557e1..5e71c58fc0aa 100644 --- a/dev-packages/browser-integration-tests/suites/replay/errors/errorModeCustomTransport/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/errors/errorModeCustomTransport/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, replaysSessionSampleRate: 0.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/errors/errorNotSent/init.js b/dev-packages/browser-integration-tests/suites/replay/errors/errorNotSent/init.js index 29e87a8198af..7ab704b50d6a 100644 --- a/dev-packages/browser-integration-tests/suites/replay/errors/errorNotSent/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/errors/errorNotSent/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, replaysSessionSampleRate: 0.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/errors/errorsInSession/init.js b/dev-packages/browser-integration-tests/suites/replay/errors/errorsInSession/init.js index e31b3b638884..a765fc48c67b 100644 --- a/dev-packages/browser-integration-tests/suites/replay/errors/errorsInSession/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/errors/errorsInSession/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/errors/init.js b/dev-packages/browser-integration-tests/suites/replay/errors/init.js index d83f950346bd..7024a6574324 100644 --- a/dev-packages/browser-integration-tests/suites/replay/errors/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/errors/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, replaysSessionSampleRate: 0.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/fetch/captureRequestBody/init.js b/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/fetch/captureRequestBody/init.js index 67b3d188f414..9db232f536cd 100644 --- a/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/fetch/captureRequestBody/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/fetch/captureRequestBody/init.js @@ -11,7 +11,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, // We ensure to sample for errors, so by default nothing is sent diff --git a/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/fetch/captureRequestHeaders/init.js b/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/fetch/captureRequestHeaders/init.js index 332aae5c8a0f..5a97a87c2571 100644 --- a/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/fetch/captureRequestHeaders/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/fetch/captureRequestHeaders/init.js @@ -11,7 +11,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, // We ensure to sample for errors, so by default nothing is sent diff --git a/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/fetch/captureResponseBody/init.js b/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/fetch/captureResponseBody/init.js index 67b3d188f414..9db232f536cd 100644 --- a/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/fetch/captureResponseBody/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/fetch/captureResponseBody/init.js @@ -11,7 +11,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, // We ensure to sample for errors, so by default nothing is sent diff --git a/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/fetch/captureResponseHeaders/init.js b/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/fetch/captureResponseHeaders/init.js index 0c788f53c321..82bc5a045870 100644 --- a/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/fetch/captureResponseHeaders/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/fetch/captureResponseHeaders/init.js @@ -11,7 +11,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, // We ensure to sample for errors, so by default nothing is sent diff --git a/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/fetch/captureTimestamps/init.js b/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/fetch/captureTimestamps/init.js index 4696596df9f9..caca8e2d317e 100644 --- a/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/fetch/captureTimestamps/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/fetch/captureTimestamps/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, // We ensure to sample for errors, so by default nothing is sent diff --git a/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/fetch/init.js b/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/fetch/init.js index 4696596df9f9..caca8e2d317e 100644 --- a/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/fetch/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/fetch/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, // We ensure to sample for errors, so by default nothing is sent diff --git a/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/xhr/captureRequestBody/init.js b/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/xhr/captureRequestBody/init.js index 67b3d188f414..9db232f536cd 100644 --- a/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/xhr/captureRequestBody/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/xhr/captureRequestBody/init.js @@ -11,7 +11,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, // We ensure to sample for errors, so by default nothing is sent diff --git a/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/xhr/captureRequestHeaders/init.js b/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/xhr/captureRequestHeaders/init.js index 332aae5c8a0f..5a97a87c2571 100644 --- a/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/xhr/captureRequestHeaders/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/xhr/captureRequestHeaders/init.js @@ -11,7 +11,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, // We ensure to sample for errors, so by default nothing is sent diff --git a/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/xhr/captureResponseBody/init.js b/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/xhr/captureResponseBody/init.js index 67b3d188f414..9db232f536cd 100644 --- a/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/xhr/captureResponseBody/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/xhr/captureResponseBody/init.js @@ -11,7 +11,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, // We ensure to sample for errors, so by default nothing is sent diff --git a/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/xhr/captureResponseHeaders/init.js b/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/xhr/captureResponseHeaders/init.js index 0c788f53c321..82bc5a045870 100644 --- a/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/xhr/captureResponseHeaders/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/xhr/captureResponseHeaders/init.js @@ -11,7 +11,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, // We ensure to sample for errors, so by default nothing is sent diff --git a/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/xhr/captureTimestamps/init.js b/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/xhr/captureTimestamps/init.js index 4696596df9f9..caca8e2d317e 100644 --- a/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/xhr/captureTimestamps/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/xhr/captureTimestamps/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, // We ensure to sample for errors, so by default nothing is sent diff --git a/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/xhr/init.js b/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/xhr/init.js index 4696596df9f9..caca8e2d317e 100644 --- a/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/xhr/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/extendNetworkBreadcrumbs/xhr/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, // We ensure to sample for errors, so by default nothing is sent diff --git a/dev-packages/browser-integration-tests/suites/replay/fileInput/init.js b/dev-packages/browser-integration-tests/suites/replay/fileInput/init.js index 837a81466609..c973a578baae 100644 --- a/dev-packages/browser-integration-tests/suites/replay/fileInput/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/fileInput/init.js @@ -10,7 +10,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/flushing/init.js b/dev-packages/browser-integration-tests/suites/replay/flushing/init.js index d1e552c448b0..30fdb3198b62 100644 --- a/dev-packages/browser-integration-tests/suites/replay/flushing/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/flushing/init.js @@ -9,7 +9,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/ignoreMutations/init.js b/dev-packages/browser-integration-tests/suites/replay/ignoreMutations/init.js index e961e3ceb30c..269b531b57eb 100644 --- a/dev-packages/browser-integration-tests/suites/replay/ignoreMutations/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/ignoreMutations/init.js @@ -12,7 +12,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/init.js b/dev-packages/browser-integration-tests/suites/replay/init.js index 45d7fb7af6d3..e52033fd464e 100644 --- a/dev-packages/browser-integration-tests/suites/replay/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/keyboardEvents/init.js b/dev-packages/browser-integration-tests/suites/replay/keyboardEvents/init.js index 45d7fb7af6d3..e52033fd464e 100644 --- a/dev-packages/browser-integration-tests/suites/replay/keyboardEvents/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/keyboardEvents/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/largeMutations/defaultOptions/init.js b/dev-packages/browser-integration-tests/suites/replay/largeMutations/defaultOptions/init.js index 45d7fb7af6d3..e52033fd464e 100644 --- a/dev-packages/browser-integration-tests/suites/replay/largeMutations/defaultOptions/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/largeMutations/defaultOptions/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/largeMutations/mutationLimit/init.js b/dev-packages/browser-integration-tests/suites/replay/largeMutations/mutationLimit/init.js index 69cc3b55cfb8..d09fe6530e9c 100644 --- a/dev-packages/browser-integration-tests/suites/replay/largeMutations/mutationLimit/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/largeMutations/mutationLimit/init.js @@ -9,7 +9,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/logger/init.js b/dev-packages/browser-integration-tests/suites/replay/logger/init.js index f675e1af8681..195be16ddad3 100644 --- a/dev-packages/browser-integration-tests/suites/replay/logger/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/logger/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/maxReplayDuration/init.js b/dev-packages/browser-integration-tests/suites/replay/maxReplayDuration/init.js index 27092017f938..7bab07447b3a 100644 --- a/dev-packages/browser-integration-tests/suites/replay/maxReplayDuration/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/maxReplayDuration/init.js @@ -9,7 +9,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/minReplayDuration/init.js b/dev-packages/browser-integration-tests/suites/replay/minReplayDuration/init.js index 909da70f67a8..2a3dae73541d 100644 --- a/dev-packages/browser-integration-tests/suites/replay/minReplayDuration/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/minReplayDuration/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/minReplayDurationLimit/init.js b/dev-packages/browser-integration-tests/suites/replay/minReplayDurationLimit/init.js index 980127dd5ee9..58873b85f9ec 100644 --- a/dev-packages/browser-integration-tests/suites/replay/minReplayDurationLimit/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/minReplayDurationLimit/init.js @@ -9,7 +9,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/multiple-pages/init.js b/dev-packages/browser-integration-tests/suites/replay/multiple-pages/init.js index 4e5b196e47de..f5a01ece0a37 100644 --- a/dev-packages/browser-integration-tests/suites/replay/multiple-pages/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/multiple-pages/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/privacyBlock/init.js b/dev-packages/browser-integration-tests/suites/replay/privacyBlock/init.js index 2e24918c3980..16000b4c4412 100644 --- a/dev-packages/browser-integration-tests/suites/replay/privacyBlock/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/privacyBlock/init.js @@ -12,7 +12,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/privacyDefault/init.js b/dev-packages/browser-integration-tests/suites/replay/privacyDefault/init.js index d1e552c448b0..30fdb3198b62 100644 --- a/dev-packages/browser-integration-tests/suites/replay/privacyDefault/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/privacyDefault/init.js @@ -9,7 +9,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/privacyInput/init.js b/dev-packages/browser-integration-tests/suites/replay/privacyInput/init.js index c20873c35d32..96f5c063e13d 100644 --- a/dev-packages/browser-integration-tests/suites/replay/privacyInput/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/privacyInput/init.js @@ -11,7 +11,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/privacyInputMaskAll/init.js b/dev-packages/browser-integration-tests/suites/replay/privacyInputMaskAll/init.js index 5a234f35eecd..c20c8b36a4c2 100644 --- a/dev-packages/browser-integration-tests/suites/replay/privacyInputMaskAll/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/privacyInputMaskAll/init.js @@ -11,7 +11,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/replayIntegrationShim/init.js b/dev-packages/browser-integration-tests/suites/replay/replayIntegrationShim/init.js index 5248651ac1c3..9200b5771ec6 100644 --- a/dev-packages/browser-integration-tests/suites/replay/replayIntegrationShim/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/replayIntegrationShim/init.js @@ -10,7 +10,6 @@ window.Replay = new Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/replayShim/init.js b/dev-packages/browser-integration-tests/suites/replay/replayShim/init.js index a705f7431907..77fc89c70a25 100644 --- a/dev-packages/browser-integration-tests/suites/replay/replayShim/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/replayShim/init.js @@ -10,7 +10,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/requests/init.js b/dev-packages/browser-integration-tests/suites/replay/requests/init.js index d1e552c448b0..30fdb3198b62 100644 --- a/dev-packages/browser-integration-tests/suites/replay/requests/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/requests/init.js @@ -9,7 +9,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/sampling/init.js b/dev-packages/browser-integration-tests/suites/replay/sampling/init.js index ce6e4b19eb22..6405faaf741b 100644 --- a/dev-packages/browser-integration-tests/suites/replay/sampling/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/sampling/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 0.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/sessionExpiry/init.js b/dev-packages/browser-integration-tests/suites/replay/sessionExpiry/init.js index 1ff49d804e31..ee55b5cca2c4 100644 --- a/dev-packages/browser-integration-tests/suites/replay/sessionExpiry/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/sessionExpiry/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/sessionInactive/init.js b/dev-packages/browser-integration-tests/suites/replay/sessionInactive/init.js index df437ea858a1..3af8409da672 100644 --- a/dev-packages/browser-integration-tests/suites/replay/sessionInactive/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/sessionInactive/init.js @@ -8,7 +8,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/sessionMaxAge/init.js b/dev-packages/browser-integration-tests/suites/replay/sessionMaxAge/init.js index 2bf99b713783..214340ba12c5 100644 --- a/dev-packages/browser-integration-tests/suites/replay/sessionMaxAge/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/sessionMaxAge/init.js @@ -9,7 +9,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/slowClick/disable/init.js b/dev-packages/browser-integration-tests/suites/replay/slowClick/disable/init.js index 852014c9f109..b21921ae5726 100644 --- a/dev-packages/browser-integration-tests/suites/replay/slowClick/disable/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/slowClick/disable/init.js @@ -9,7 +9,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/slowClick/error/init.js b/dev-packages/browser-integration-tests/suites/replay/slowClick/error/init.js index 8f7316b1d38f..77b6bf6b67e4 100644 --- a/dev-packages/browser-integration-tests/suites/replay/slowClick/error/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/slowClick/error/init.js @@ -9,7 +9,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 1, replaysSessionSampleRate: 0.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/slowClick/init.js b/dev-packages/browser-integration-tests/suites/replay/slowClick/init.js index 708bb8533402..5083bd48c745 100644 --- a/dev-packages/browser-integration-tests/suites/replay/slowClick/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/slowClick/init.js @@ -10,7 +10,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/throttleBreadcrumbs/init.js b/dev-packages/browser-integration-tests/suites/replay/throttleBreadcrumbs/init.js index 4acf8b57936f..6f2a54514433 100644 --- a/dev-packages/browser-integration-tests/suites/replay/throttleBreadcrumbs/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/throttleBreadcrumbs/init.js @@ -9,7 +9,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/unicode/compressed/init.js b/dev-packages/browser-integration-tests/suites/replay/unicode/compressed/init.js index 7a2460d4059c..4d4476012c0d 100644 --- a/dev-packages/browser-integration-tests/suites/replay/unicode/compressed/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/unicode/compressed/init.js @@ -10,7 +10,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/replay/unicode/uncompressed/init.js b/dev-packages/browser-integration-tests/suites/replay/unicode/uncompressed/init.js index 752b0a131101..cc0094a0366b 100644 --- a/dev-packages/browser-integration-tests/suites/replay/unicode/uncompressed/init.js +++ b/dev-packages/browser-integration-tests/suites/replay/unicode/uncompressed/init.js @@ -10,7 +10,6 @@ window.Replay = Sentry.replayIntegration({ }); Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', sampleRate: 0, replaysSessionSampleRate: 1.0, diff --git a/dev-packages/browser-integration-tests/suites/sessions/init.js b/dev-packages/browser-integration-tests/suites/sessions/init.js index 91040d71877d..af2df91a7ceb 100644 --- a/dev-packages/browser-integration-tests/suites/sessions/init.js +++ b/dev-packages/browser-integration-tests/suites/sessions/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', release: '0.1', }); diff --git a/dev-packages/browser-integration-tests/suites/sessions/initial-scope/init.js b/dev-packages/browser-integration-tests/suites/sessions/initial-scope/init.js index 0ad971be30a2..2be1d55b5782 100644 --- a/dev-packages/browser-integration-tests/suites/sessions/initial-scope/init.js +++ b/dev-packages/browser-integration-tests/suites/sessions/initial-scope/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', release: '0.1', integrations: [Sentry.browserSessionIntegration({ lifecycle: 'route' })], diff --git a/dev-packages/browser-integration-tests/suites/sessions/page-lifecycle/init.js b/dev-packages/browser-integration-tests/suites/sessions/page-lifecycle/init.js index 91040d71877d..af2df91a7ceb 100644 --- a/dev-packages/browser-integration-tests/suites/sessions/page-lifecycle/init.js +++ b/dev-packages/browser-integration-tests/suites/sessions/page-lifecycle/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', release: '0.1', }); diff --git a/dev-packages/browser-integration-tests/suites/sessions/route-lifecycle/init.js b/dev-packages/browser-integration-tests/suites/sessions/route-lifecycle/init.js index 138a059a35a5..18ea8864bc65 100644 --- a/dev-packages/browser-integration-tests/suites/sessions/route-lifecycle/init.js +++ b/dev-packages/browser-integration-tests/suites/sessions/route-lifecycle/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', release: '0.1', integrations: [Sentry.browserSessionIntegration({ lifecycle: 'route' })], diff --git a/dev-packages/browser-integration-tests/suites/sessions/sampled-session-update/init.js b/dev-packages/browser-integration-tests/suites/sessions/sampled-session-update/init.js index f5c6bdef5e5f..7bba2ce96cac 100644 --- a/dev-packages/browser-integration-tests/suites/sessions/sampled-session-update/init.js +++ b/dev-packages/browser-integration-tests/suites/sessions/sampled-session-update/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', release: '0.1', sampleRate: 0, diff --git a/dev-packages/browser-integration-tests/suites/sessions/start-session/init.js b/dev-packages/browser-integration-tests/suites/sessions/start-session/init.js index 138a059a35a5..18ea8864bc65 100644 --- a/dev-packages/browser-integration-tests/suites/sessions/start-session/init.js +++ b/dev-packages/browser-integration-tests/suites/sessions/start-session/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', release: '0.1', integrations: [Sentry.browserSessionIntegration({ lifecycle: 'route' })], diff --git a/dev-packages/browser-integration-tests/suites/sessions/user/init.js b/dev-packages/browser-integration-tests/suites/sessions/user/init.js index 138a059a35a5..18ea8864bc65 100644 --- a/dev-packages/browser-integration-tests/suites/sessions/user/init.js +++ b/dev-packages/browser-integration-tests/suites/sessions/user/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', release: '0.1', integrations: [Sentry.browserSessionIntegration({ lifecycle: 'route' })], diff --git a/dev-packages/browser-integration-tests/suites/stacktraces/init.js b/dev-packages/browser-integration-tests/suites/stacktraces/init.js index d9c534b801cd..d8c94f36fdd0 100644 --- a/dev-packages/browser-integration-tests/suites/stacktraces/init.js +++ b/dev-packages/browser-integration-tests/suites/stacktraces/init.js @@ -3,6 +3,5 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', }); diff --git a/dev-packages/browser-integration-tests/suites/transport/multiplexed/init.js b/dev-packages/browser-integration-tests/suites/transport/multiplexed/init.js index 226c60d5859b..d24b26bdffc7 100644 --- a/dev-packages/browser-integration-tests/suites/transport/multiplexed/init.js +++ b/dev-packages/browser-integration-tests/suites/transport/multiplexed/init.js @@ -4,7 +4,6 @@ import { makeMultiplexedTransport } from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', transport: makeMultiplexedTransport(Sentry.makeFetchTransport, ({ getEvent }) => { const event = getEvent('event'); diff --git a/dev-packages/browser-integration-tests/suites/transport/offline/init.js b/dev-packages/browser-integration-tests/suites/transport/offline/init.js index 809d0c646ed1..e102d6a8a5a5 100644 --- a/dev-packages/browser-integration-tests/suites/transport/offline/init.js +++ b/dev-packages/browser-integration-tests/suites/transport/offline/init.js @@ -3,7 +3,6 @@ import * as Sentry from '@sentry/browser'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', transport: Sentry.makeBrowserOfflineTransport(), }); diff --git a/dev-packages/browser-integration-tests/suites/wasm/init.js b/dev-packages/browser-integration-tests/suites/wasm/init.js index e4cffb1b682f..9b9aad7b911f 100644 --- a/dev-packages/browser-integration-tests/suites/wasm/init.js +++ b/dev-packages/browser-integration-tests/suites/wasm/init.js @@ -4,7 +4,6 @@ import { wasmIntegration } from '@sentry/wasm'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [wasmIntegration()], beforeSend: event => { diff --git a/dev-packages/browser-integration-tests/suites/wasm/instantiateBufferRegistration/init.js b/dev-packages/browser-integration-tests/suites/wasm/instantiateBufferRegistration/init.js index 602bdd6b9a16..2a0766dfa03f 100644 --- a/dev-packages/browser-integration-tests/suites/wasm/instantiateBufferRegistration/init.js +++ b/dev-packages/browser-integration-tests/suites/wasm/instantiateBufferRegistration/init.js @@ -4,7 +4,6 @@ import { wasmIntegration } from '@sentry/wasm'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [wasmIntegration()], beforeSend: event => { diff --git a/dev-packages/browser-integration-tests/suites/wasm/thirdPartyFilter/init.js b/dev-packages/browser-integration-tests/suites/wasm/thirdPartyFilter/init.js index 85c1fde92c15..912a4aafd728 100644 --- a/dev-packages/browser-integration-tests/suites/wasm/thirdPartyFilter/init.js +++ b/dev-packages/browser-integration-tests/suites/wasm/thirdPartyFilter/init.js @@ -25,7 +25,6 @@ _sentryModuleMetadataGlobal._sentryModuleMetadata[new Error().stack] = Object.as window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [ wasmIntegration({ applicationKey: 'wasm-test-app' }), diff --git a/dev-packages/browser-integration-tests/suites/wasm/webWorker/init.js b/dev-packages/browser-integration-tests/suites/wasm/webWorker/init.js index e02171c7ae8c..39007ede4bc0 100644 --- a/dev-packages/browser-integration-tests/suites/wasm/webWorker/init.js +++ b/dev-packages/browser-integration-tests/suites/wasm/webWorker/init.js @@ -4,7 +4,6 @@ import { wasmIntegration } from '@sentry/wasm'; window.Sentry = Sentry; Sentry.init({ - traceLifecycle: 'static', dsn: 'https://public@dsn.ingest.sentry.io/1337', integrations: [wasmIntegration({ applicationKey: 'wasm-worker-app' })], });