From fdb351e13f50f915c30ef99a87f9bc96932aed6d Mon Sep 17 00:00:00 2001 From: Abhijeet Prasad Date: Wed, 26 Jun 2024 16:30:13 -0400 Subject: [PATCH 1/2] fix: Update OTEL js custom instructions snippet Make sure we only have a single provider --- .../tracing/instrumentation/opentelemetry.mdx | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/docs/platforms/javascript/common/tracing/instrumentation/opentelemetry.mdx b/docs/platforms/javascript/common/tracing/instrumentation/opentelemetry.mdx index 1d328f8abe831..2599cbedf5e4a 100644 --- a/docs/platforms/javascript/common/tracing/instrumentation/opentelemetry.mdx +++ b/docs/platforms/javascript/common/tracing/instrumentation/opentelemetry.mdx @@ -72,22 +72,24 @@ Sentry.init({ tracesSampleRate: 1.0, }); -// This e.g. sets up @opentelemetry/sdk-trace-node -const provider = manuallySetUpOpenTelemetry(); +const sentryClient = Sentry.getClient(); + +// Note: This could be BasicTracerProvider or any other provider depending on +// how you are using the OpenTelemetry SDK +const provider = new NodeTracerProvider({ + // We need our sampler to ensure the correct subset of traces is sent to Sentry + sampler: sentryClient ? new SentrySampler() : undefined, +}); // We need a custom span processor provider.addSpanProcessor(new SentrySpanProcessor()); + // We need a custom propagator and context manager provider.register({ propagator: new SentryPropagator(), contextManager: new Sentry.SentryContextManager(), }); -// We need our sampler to ensure the correct subset of traces is sent to Sentry -const provider = new BasicTracerProvider({ - sampler: new SentrySampler(Sentry.getClient()), -}); - // Validate that the setup is correct Sentry.validateOpenTelemetrySetup(); ``` From 0683523945f3967824d28aa9a1c1102130e7ee40 Mon Sep 17 00:00:00 2001 From: Abhijeet Prasad Date: Wed, 26 Jun 2024 16:31:41 -0400 Subject: [PATCH 2/2] Update docs/platforms/javascript/common/tracing/instrumentation/opentelemetry.mdx --- .../javascript/common/tracing/instrumentation/opentelemetry.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/platforms/javascript/common/tracing/instrumentation/opentelemetry.mdx b/docs/platforms/javascript/common/tracing/instrumentation/opentelemetry.mdx index 2599cbedf5e4a..b8bd023581c51 100644 --- a/docs/platforms/javascript/common/tracing/instrumentation/opentelemetry.mdx +++ b/docs/platforms/javascript/common/tracing/instrumentation/opentelemetry.mdx @@ -78,7 +78,7 @@ const sentryClient = Sentry.getClient(); // how you are using the OpenTelemetry SDK const provider = new NodeTracerProvider({ // We need our sampler to ensure the correct subset of traces is sent to Sentry - sampler: sentryClient ? new SentrySampler() : undefined, + sampler: sentryClient ? new SentrySampler(sentryClient) : undefined, }); // We need a custom span processor