UNPKG

@sentry/nextjs

Version:
22 lines • 1.34 kB
import type { Context, TextMapSetter, TracerProvider } from '@opentelemetry/api'; import { SentryPropagator } from '@sentry/opentelemetry'; /** * A `SentryPropagator` that does not hand out the trace meta tags of a document while Next.js * prerenders it. Trace context baked into a prerendered shell would be replayed to every visitor the * shell is served to, so the browser could continue a trace that never handled its request. The shell * gets the prerender's trace in a `sentry-cache-origin` tag instead, which the client only links. * * The SDK registers it when it sets up OpenTelemetry. An app that sets up OpenTelemetry itself * registers it in place of `SentryPropagator` and calls `markPrerendersOnTracerProvider` with its * tracer provider, which this propagator relies on to recognize a prerender. */ export declare class NextSentryPropagator extends SentryPropagator { /** @inheritDoc */ inject(ctx: Context, carrier: unknown, setter: TextMapSetter): void; } /** * Makes the tracer provider the Node SDK registered mark prerenders on the OpenTelemetry context, and * replaces the propagator it registered with one that hands out no meta tags on a marked context. */ export declare function registerNextSentryPropagator(provider: TracerProvider): void; //# sourceMappingURL=nextSentryPropagator.d.ts.map