diff --git a/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/provider/TestExporterCustomizerProvider.java b/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/provider/TestExporterCustomizerProvider.java index 8ceb11bace85..cc29c93af778 100644 --- a/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/provider/TestExporterCustomizerProvider.java +++ b/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/provider/TestExporterCustomizerProvider.java @@ -28,6 +28,10 @@ public class TestExporterCustomizerProvider implements DeclarativeConfigurationCustomizerProvider { @Override public void customize(DeclarativeConfigurationCustomizer customizer) { + if (TestSpanExporterComponentProvider.getSpanExporter() == null) { + // library test runner is not used, so we should not add the test exporters + return; + } customizer.addModelCustomizer( model -> { if (model.getTracerProvider() == null) { diff --git a/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/provider/TestSpanExporterComponentProvider.java b/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/provider/TestSpanExporterComponentProvider.java index 4f5d64df592a..a6ee9b91cc3d 100644 --- a/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/provider/TestSpanExporterComponentProvider.java +++ b/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/provider/TestSpanExporterComponentProvider.java @@ -29,6 +29,10 @@ public SpanExporter create(DeclarativeConfigProperties config) { return Objects.requireNonNull(spanExporter, "spanExporter must not be null"); } + public static SpanExporter getSpanExporter() { + return spanExporter; + } + public static void setSpanExporter(SpanExporter spanExporter) { TestSpanExporterComponentProvider.spanExporter = spanExporter; }