Skip to content

Commit c819af6

Browse files
authored
Merge pull request quarkusio#35862 from geoand/quarkusio#35786
Only remove OTLP trace services when otlp is not configured
2 parents 7508b5c + da9997d commit c819af6

File tree

1 file changed

+9
-4
lines changed

1 file changed

+9
-4
lines changed

extensions/opentelemetry/deployment/src/main/java/io/quarkus/opentelemetry/deployment/OpenTelemetryProcessor.java

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,8 @@
6161
import io.quarkus.opentelemetry.runtime.AutoConfiguredOpenTelemetrySdkBuilderCustomizer;
6262
import io.quarkus.opentelemetry.runtime.OpenTelemetryRecorder;
6363
import io.quarkus.opentelemetry.runtime.QuarkusContextStorage;
64+
import io.quarkus.opentelemetry.runtime.config.build.ExporterType;
65+
import io.quarkus.opentelemetry.runtime.config.build.OTelBuildConfig;
6466
import io.quarkus.opentelemetry.runtime.config.runtime.OTelRuntimeConfig;
6567
import io.quarkus.opentelemetry.runtime.tracing.cdi.WithSpanInterceptor;
6668
import io.quarkus.opentelemetry.runtime.tracing.intrumentation.InstrumentationRecorder;
@@ -111,7 +113,8 @@ SyntheticBeanBuildItem openTelemetryBean(OpenTelemetryRecorder recorder, OTelRun
111113
}
112114

113115
@BuildStep
114-
void registerNativeImageResources(BuildProducer<ServiceProviderBuildItem> services,
116+
void handleServices(OTelBuildConfig config,
117+
BuildProducer<ServiceProviderBuildItem> services,
115118
BuildProducer<RemovedResourceBuildItem> removedResources,
116119
BuildProducer<RuntimeReinitializedClassBuildItem> runtimeReinitialized) throws IOException {
117120

@@ -125,9 +128,11 @@ void registerNativeImageResources(BuildProducer<ServiceProviderBuildItem> servic
125128
new ServiceProviderBuildItem(ConfigurableSpanExporterProvider.class.getName(), spanExporterProviders));
126129
}
127130
// remove the service file that contains OtlpSpanExporterProvider
128-
removedResources.produce(new RemovedResourceBuildItem(
129-
ArtifactKey.fromString("io.opentelemetry:opentelemetry-exporter-otlp"),
130-
Set.of("META-INF/services/io.opentelemetry.sdk.autoconfigure.spi.traces.ConfigurableSpanExporterProvider")));
131+
if (config.traces().exporter().stream().noneMatch(ExporterType.Constants.OTLP_VALUE::equals)) {
132+
removedResources.produce(new RemovedResourceBuildItem(
133+
ArtifactKey.fromString("io.opentelemetry:opentelemetry-exporter-otlp"),
134+
Set.of("META-INF/services/io.opentelemetry.sdk.autoconfigure.spi.traces.ConfigurableSpanExporterProvider")));
135+
}
131136

132137
runtimeReinitialized.produce(
133138
new RuntimeReinitializedClassBuildItem("io.opentelemetry.sdk.autoconfigure.TracerProviderConfiguration"));

0 commit comments

Comments
 (0)