From 31dd65402f290f7c4f09291c1186068197e49597 Mon Sep 17 00:00:00 2001 From: Godfrey Chan Date: Thu, 16 Jan 2025 16:53:23 -0800 Subject: [PATCH] fix(test-utils): Migrate away from deprecated `addSpanProcessor` This migrates from the deprecated `addSpanProcessor` method to the constructor option in preparation for the upcoming SDK 2.0 release. This commit migrates the runtime code in the test-utils package and should be included in the package's CHANGELOG. Ref #2645 --- .../instrumentations/otel-default-provider.ts | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/packages/opentelemetry-test-utils/src/instrumentations/otel-default-provider.ts b/packages/opentelemetry-test-utils/src/instrumentations/otel-default-provider.ts index 7882b72c9a..a6c4d1ddd9 100644 --- a/packages/opentelemetry-test-utils/src/instrumentations/otel-default-provider.ts +++ b/packages/opentelemetry-test-utils/src/instrumentations/otel-default-provider.ts @@ -30,19 +30,23 @@ import { export const registerInstrumentationTestingProvider = ( config?: NodeTracerConfig ): NodeTracerProvider => { - const otelTestingProvider = new NodeTracerProvider(config); + const spanProcessors = config?.spanProcessors + ? [...config.spanProcessors] + : []; setTestMemoryExporter(new InMemorySpanExporter()); - otelTestingProvider.addSpanProcessor( - new SimpleSpanProcessor(getTestMemoryExporter()!) - ); + + spanProcessors.push(new SimpleSpanProcessor(getTestMemoryExporter()!)); if (process.env.OTEL_EXPORTER_JAEGER_AGENT_HOST) { - otelTestingProvider.addSpanProcessor( - new SimpleSpanProcessor(new JaegerExporter()) - ); + spanProcessors.push(new SimpleSpanProcessor(new JaegerExporter())); } + const otelTestingProvider = new NodeTracerProvider({ + ...config, + spanProcessors, + }); + otelTestingProvider.register(); return otelTestingProvider; };