From 18bde1852fdf0f7fe97c4dc2a24c54353bdd18f3 Mon Sep 17 00:00:00 2001 From: Andy Wilkinson Date: Fri, 6 Jun 2025 14:27:18 +0100 Subject: [PATCH] Create spring-boot-tracing module See gh-46153 --- settings.gradle | 1 + .../build.gradle | 11 ---- .../OpenTelemetryAutoConfiguration.java | 33 ---------- .../tracing/otlp/OtlpAutoConfiguration.java | 33 ---------- ...itional-spring-configuration-metadata.json | 30 --------- ...it.platform.launcher.TestExecutionListener | 1 - .../main/resources/META-INF/spring.factories | 7 --- ...ot.autoconfigure.AutoConfiguration.imports | 7 --- ...toconfigure.AutoConfiguration.replacements | 2 - ...intsAutoConfigurationIntegrationTests.java | 9 +-- .../spring-boot-dependencies/build.gradle | 1 + .../build.gradle | 1 + ...nectionDetailsFactoryIntegrationTests.java | 4 +- ...nectionDetailsFactoryIntegrationTests.java | 4 +- ...DockerComposeConnectionDetailsFactory.java | 6 +- .../spring-boot-docs/build.gradle | 2 + .../reference/pages/actuator/tracing.adoc | 2 +- .../pages/features/dev-services.adoc | 4 +- .../testing/spring-boot-applications.adoc | 2 +- .../pages/testing/testcontainers.adoc | 4 +- .../spring-boot-starter-actuator/build.gradle | 1 + .../build.gradle | 1 + ...ability.AutoConfigureObservability.imports | 10 +-- .../build.gradle | 1 + ...nectionDetailsFactoryIntegrationTests.java | 6 +- ...nectionDetailsFactoryIntegrationTests.java | 2 +- ...nectionDetailsFactoryIntegrationTests.java | 6 +- ...cingContainerConnectionDetailsFactory.java | 7 +-- ...cingContainerConnectionDetailsFactory.java | 6 +- .../spring-boot-tracing/build.gradle | 61 +++++++++++++++++++ .../BraveAutoConfiguration.java | 6 +- .../BravePropagationConfigurations.java | 4 +- .../CompositePropagationFactory.java | 4 +- .../CompositeTextMapPropagator.java | 4 +- .../ConditionalOnEnabledTracing.java | 4 +- .../autoconfigure}/LocalBaggageFields.java | 2 +- ...ogCorrelationEnvironmentPostProcessor.java | 2 +- .../MicrometerTracingAutoConfiguration.java | 4 +- .../NoopTracerAutoConfiguration.java | 4 +- .../OnEnabledTracingCondition.java | 2 +- ...ventPublisherBeansApplicationListener.java | 4 +- ...ntPublisherBeansTestExecutionListener.java | 4 +- ...penTelemetryPropagationConfigurations.java | 2 +- ...OpenTelemetryTracingAutoConfiguration.java | 4 +- .../SdkTracerProviderBuilderCustomizer.java | 4 +- .../tracing/autoconfigure}/SpanExporters.java | 4 +- .../autoconfigure}/SpanProcessors.java | 4 +- ...racingAndMeterObservationHandlerGroup.java | 2 +- .../autoconfigure}/TracingProperties.java | 4 +- ...OtlpGrpcSpanExporterBuilderCustomizer.java | 4 +- ...OtlpHttpSpanExporterBuilderCustomizer.java | 4 +- .../otlp/OtlpTracingAutoConfiguration.java | 4 +- .../otlp/OtlpTracingConfigurations.java | 4 +- .../otlp/OtlpTracingConnectionDetails.java | 4 +- .../otlp/OtlpTracingProperties.java | 4 +- .../autoconfigure}/otlp/Transport.java | 4 +- .../autoconfigure}/otlp/package-info.java | 2 +- .../tracing/autoconfigure}/package-info.java | 2 +- .../PrometheusExemplarsAutoConfiguration.java | 6 +- .../prometheus/package-info.java | 2 +- .../ZipkinTracingAutoConfiguration.java | 10 +-- .../autoconfigure}/zipkin/package-info.java | 2 +- ...itional-spring-configuration-metadata.json | 35 +++++++++++ ...it.platform.launcher.TestExecutionListener | 1 + .../main/resources/META-INF/spring.factories | 7 +++ ...ot.autoconfigure.AutoConfiguration.imports | 7 +++ .../BaggagePropagationIntegrationTests.java | 2 +- .../BraveAutoConfigurationTests.java | 4 +- .../CompositePropagationFactoryTests.java | 2 +- .../CompositeTextMapPropagatorTests.java | 6 +- .../LocalBaggageFieldsTests.java | 2 +- ...relationEnvironmentPostProcessorTests.java | 2 +- ...crometerTracingAutoConfigurationTests.java | 2 +- .../NoopTracerAutoConfigurationTests.java | 2 +- .../OnEnabledTracingConditionTests.java | 2 +- ...TestExecutionListenerIntegrationTests.java | 4 +- ...elemetryTracingAutoConfigurationTests.java | 10 +-- .../autoconfigure}/SpanExportersTests.java | 2 +- .../autoconfigure}/SpanProcessorsTests.java | 2 +- ...gAndMeterObservationHandlerGroupTests.java | 2 +- .../TracingPropertiesTests.java | 2 +- ...cingAutoConfigurationIntegrationTests.java | 8 +-- .../OtlpTracingAutoConfigurationTests.java | 4 +- .../LazyTracingSpanContextTests.java | 4 +- ...etheusExemplarsAutoConfigurationTests.java | 6 +- .../zipkin/DefaultEncodingConfiguration.java | 2 +- .../autoconfigure}/zipkin/NoopSender.java | 2 +- ...ConfigurationsBraveConfigurationTests.java | 4 +- ...ationsOpenTelemetryConfigurationTests.java | 4 +- src/checkstyle/import-control.xml | 11 ++-- 90 files changed, 253 insertions(+), 273 deletions(-) delete mode 100644 spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/OpenTelemetryAutoConfiguration.java delete mode 100644 spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpAutoConfiguration.java delete mode 100644 spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/services/org.junit.platform.launcher.TestExecutionListener delete mode 100644 spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/spring.factories delete mode 100644 spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.replacements create mode 100644 spring-boot-project/spring-boot-tracing/build.gradle rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/BraveAutoConfiguration.java (97%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/BravePropagationConfigurations.java (97%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/CompositePropagationFactory.java (97%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/CompositeTextMapPropagator.java (97%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/ConditionalOnEnabledTracing.java (95%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/LocalBaggageFields.java (97%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/LogCorrelationEnvironmentPostProcessor.java (97%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/MicrometerTracingAutoConfiguration.java (98%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/NoopTracerAutoConfiguration.java (94%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/OnEnabledTracingCondition.java (97%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/OpenTelemetryEventPublisherBeansApplicationListener.java (98%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/OpenTelemetryEventPublisherBeansTestExecutionListener.java (93%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/OpenTelemetryPropagationConfigurations.java (98%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/OpenTelemetryTracingAutoConfiguration.java (99%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/SdkTracerProviderBuilderCustomizer.java (93%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/SpanExporters.java (96%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/SpanProcessors.java (96%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/TracingAndMeterObservationHandlerGroup.java (98%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/TracingProperties.java (99%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/otlp/OtlpGrpcSpanExporterBuilderCustomizer.java (93%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/otlp/OtlpHttpSpanExporterBuilderCustomizer.java (93%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/otlp/OtlpTracingAutoConfiguration.java (96%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/otlp/OtlpTracingConfigurations.java (96%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/otlp/OtlpTracingConnectionDetails.java (94%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/otlp/OtlpTracingProperties.java (97%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/otlp/Transport.java (90%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/otlp/package-info.java (90%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/package-info.java (91%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/prometheus/PrometheusExemplarsAutoConfiguration.java (94%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/prometheus/package-info.java (90%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/zipkin/ZipkinTracingAutoConfiguration.java (87%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure}/zipkin/package-info.java (90%) create mode 100644 spring-boot-project/spring-boot-tracing/src/main/resources/META-INF/additional-spring-configuration-metadata.json create mode 100644 spring-boot-project/spring-boot-tracing/src/main/resources/META-INF/services/org.junit.platform.launcher.TestExecutionListener create mode 100644 spring-boot-project/spring-boot-tracing/src/main/resources/META-INF/spring.factories create mode 100644 spring-boot-project/spring-boot-tracing/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure}/BaggagePropagationIntegrationTests.java (99%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure}/BraveAutoConfigurationTests.java (99%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure}/CompositePropagationFactoryTests.java (98%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure}/CompositeTextMapPropagatorTests.java (95%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure}/LocalBaggageFieldsTests.java (96%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure}/LogCorrelationEnvironmentPostProcessorTests.java (98%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure}/MicrometerTracingAutoConfigurationTests.java (99%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure}/NoopTracerAutoConfigurationTests.java (97%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure}/OnEnabledTracingConditionTests.java (98%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure}/OpenTelemetryEventPublishingContextWrapperBeansTestExecutionListenerIntegrationTests.java (90%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure}/OpenTelemetryTracingAutoConfigurationTests.java (98%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure}/SpanExportersTests.java (96%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure}/SpanProcessorsTests.java (96%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure}/TracingAndMeterObservationHandlerGroupTests.java (98%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure}/TracingPropertiesTests.java (97%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure}/otlp/OtlpTracingAutoConfigurationIntegrationTests.java (95%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure}/otlp/OtlpTracingAutoConfigurationTests.java (98%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure}/prometheus/LazyTracingSpanContextTests.java (95%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure}/prometheus/PrometheusExemplarsAutoConfigurationTests.java (96%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure}/zipkin/DefaultEncodingConfiguration.java (94%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure}/zipkin/NoopSender.java (93%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure}/zipkin/ZipkinConfigurationsBraveConfigurationTests.java (97%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing => spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure}/zipkin/ZipkinConfigurationsOpenTelemetryConfigurationTests.java (96%) diff --git a/settings.gradle b/settings.gradle index aba4ebe36fc..aedea7bbcb9 100644 --- a/settings.gradle +++ b/settings.gradle @@ -166,6 +166,7 @@ include "spring-boot-project:spring-boot-tools:spring-boot-maven-plugin" include "spring-boot-project:spring-boot-tools:spring-boot-properties-migrator" include "spring-boot-project:spring-boot-tools:spring-boot-test-support" include "spring-boot-project:spring-boot-tools:spring-boot-test-support-docker" +include "spring-boot-project:spring-boot-tracing" include "spring-boot-project:spring-boot-tx" include "spring-boot-project:spring-boot-undertow" include "spring-boot-project:spring-boot-validation" diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/build.gradle b/spring-boot-project/spring-boot-actuator-autoconfigure-all/build.gradle index 8cea494b81d..c8866ad1cfb 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/build.gradle +++ b/spring-boot-project/spring-boot-actuator-autoconfigure-all/build.gradle @@ -75,14 +75,7 @@ dependencies { optional("io.lettuce:lettuce-core") optional("io.micrometer:micrometer-jakarta9") optional("io.micrometer:micrometer-observation") - optional("io.micrometer:micrometer-tracing") - optional("io.micrometer:micrometer-tracing-bridge-brave") - optional("io.micrometer:micrometer-tracing-bridge-otel") - optional("io.zipkin.reporter2:zipkin-reporter-brave") - optional("io.opentelemetry:opentelemetry-exporter-zipkin") - optional("io.opentelemetry:opentelemetry-exporter-otlp") optional("io.projectreactor.netty:reactor-netty-http") - optional("io.prometheus:prometheus-metrics-tracer-common") optional("jakarta.persistence:jakarta.persistence-api") optional("jakarta.servlet:jakarta.servlet-api") optional("org.apache.activemq:activemq-broker") @@ -123,10 +116,7 @@ dependencies { testImplementation(testFixtures(project(":spring-boot-project:spring-boot-web-server"))) testImplementation("com.squareup.okhttp3:mockwebserver") testImplementation("io.micrometer:micrometer-observation-test") - testImplementation("io.micrometer:micrometer-registry-prometheus") - testImplementation("io.opentelemetry:opentelemetry-exporter-common") testImplementation("io.projectreactor:reactor-test") - testImplementation("io.prometheus:prometheus-metrics-exposition-formats") testImplementation("jakarta.xml.bind:jakarta.xml.bind-api") testImplementation("org.apache.activemq:artemis-jakarta-client") testImplementation("org.apache.activemq:artemis-jakarta-server") @@ -141,7 +131,6 @@ dependencies { testImplementation("org.springframework.security:spring-security-test") testImplementation("org.yaml:snakeyaml") - testRuntimeOnly("io.grpc:grpc-api:1.72.0") testRuntimeOnly("jakarta.management.j2ee:jakarta.management.j2ee-api") testRuntimeOnly("jakarta.transaction:jakarta.transaction-api") testRuntimeOnly("org.opensaml:opensaml-core:4.0.1") diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/OpenTelemetryAutoConfiguration.java b/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/OpenTelemetryAutoConfiguration.java deleted file mode 100644 index 102b9c9541a..00000000000 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/OpenTelemetryAutoConfiguration.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright 2012-present the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.springframework.boot.actuate.autoconfigure.tracing; - -import org.springframework.boot.autoconfigure.EnableAutoConfiguration; - -/** - * {@link EnableAutoConfiguration Auto-configuration} for OpenTelemetry tracing. - * - * @author Moritz Halbritter - * @author Marcin Grzejszczak - * @author Yanming Zhou - * @since 3.0.0 - * @deprecated since 3.4.0 in favor of {@link OpenTelemetryTracingAutoConfiguration} - */ -@Deprecated(since = "3.4.0", forRemoval = true) -public class OpenTelemetryAutoConfiguration { - -} diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpAutoConfiguration.java b/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpAutoConfiguration.java deleted file mode 100644 index 1463c8098d4..00000000000 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpAutoConfiguration.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright 2012-present the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.springframework.boot.actuate.autoconfigure.tracing.otlp; - -import org.springframework.boot.autoconfigure.EnableAutoConfiguration; - -/** - * {@link EnableAutoConfiguration Auto-configuration} for exporting traces with OTLP. - * - * @author Jonatan Ivanov - * @author Moritz Halbritter - * @author Eddú Meléndez - * @since 3.1.0 - * @deprecated since 3.4.0 in favor of {@link OtlpTracingAutoConfiguration} - */ -@Deprecated(since = "3.4.0", forRemoval = true) -public class OtlpAutoConfiguration { - -} diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/additional-spring-configuration-metadata.json b/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/additional-spring-configuration-metadata.json index 4a3cbc952ae..5a0429378ad 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/additional-spring-configuration-metadata.json +++ b/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/additional-spring-configuration-metadata.json @@ -7,11 +7,6 @@ "description": "Whether to enable SSL certificate health check.", "defaultValue": true }, - { - "name": "management.otlp.tracing.export.enabled", - "type": "java.lang.Boolean", - "description": "Whether auto-configuration of tracing is enabled to export OTLP traces." - }, { "name": "management.promethus.metrics.export.pushgateway.base-url", "type": "java.lang.String", @@ -19,31 +14,6 @@ "level": "error", "replacement": "management.prometheus.metrics.export.pushgateway.address" } - }, - { - "name": "management.tracing.enabled", - "type": "java.lang.Boolean", - "description": "Whether auto-configuration of tracing is enabled to export and propagate traces.", - "defaultValue": true - }, - { - "name": "management.tracing.propagation.consume", - "defaultValue": [ - "W3C", - "B3", - "B3_MULTI" - ] - }, - { - "name": "management.tracing.propagation.produce", - "defaultValue": [ - "W3C" - ] - }, - { - "name": "management.zipkin.tracing.export.enabled", - "type": "java.lang.Boolean", - "description": "Whether auto-configuration of tracing is enabled to export Zipkin traces." } ] } diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/services/org.junit.platform.launcher.TestExecutionListener b/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/services/org.junit.platform.launcher.TestExecutionListener deleted file mode 100644 index 284014dde27..00000000000 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/services/org.junit.platform.launcher.TestExecutionListener +++ /dev/null @@ -1 +0,0 @@ -org.springframework.boot.actuate.autoconfigure.tracing.OpenTelemetryEventPublisherBeansTestExecutionListener diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/spring.factories b/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/spring.factories deleted file mode 100644 index 6da6f47e984..00000000000 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/spring.factories +++ /dev/null @@ -1,7 +0,0 @@ -# Environment Post Processors -org.springframework.boot.env.EnvironmentPostProcessor=\ -org.springframework.boot.actuate.autoconfigure.tracing.LogCorrelationEnvironmentPostProcessor - -# Application Listeners -org.springframework.context.ApplicationListener=\ -org.springframework.boot.actuate.autoconfigure.tracing.OpenTelemetryEventPublisherBeansApplicationListener diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports index 30bd7f6ab01..a02c7a05c46 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports +++ b/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports @@ -1,9 +1,2 @@ org.springframework.boot.actuate.autoconfigure.security.reactive.ReactiveManagementWebSecurityAutoConfiguration org.springframework.boot.actuate.autoconfigure.security.servlet.ManagementWebSecurityAutoConfiguration -org.springframework.boot.actuate.autoconfigure.tracing.BraveAutoConfiguration -org.springframework.boot.actuate.autoconfigure.tracing.MicrometerTracingAutoConfiguration -org.springframework.boot.actuate.autoconfigure.tracing.NoopTracerAutoConfiguration -org.springframework.boot.actuate.autoconfigure.tracing.OpenTelemetryTracingAutoConfiguration -org.springframework.boot.actuate.autoconfigure.tracing.otlp.OtlpTracingAutoConfiguration -org.springframework.boot.actuate.autoconfigure.tracing.prometheus.PrometheusExemplarsAutoConfiguration -org.springframework.boot.actuate.autoconfigure.tracing.zipkin.ZipkinTracingAutoConfiguration diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.replacements b/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.replacements deleted file mode 100644 index 86a848dac23..00000000000 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.replacements +++ /dev/null @@ -1,2 +0,0 @@ -org.springframework.boot.actuate.autoconfigure.tracing.OpenTelemetryAutoConfiguration=org.springframework.boot.actuate.autoconfigure.tracing.OpenTelemetryTracingAutoConfiguration -org.springframework.boot.actuate.autoconfigure.tracing.otlp.OtlpAutoConfiguration=org.springframework.boot.actuate.autoconfigure.tracing.otlp.OtlpTracingAutoConfiguration diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/integrationtest/WebEndpointsAutoConfigurationIntegrationTests.java b/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/integrationtest/WebEndpointsAutoConfigurationIntegrationTests.java index f3efd0681c8..7d788c0a8e6 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/integrationtest/WebEndpointsAutoConfigurationIntegrationTests.java +++ b/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/integrationtest/WebEndpointsAutoConfigurationIntegrationTests.java @@ -19,8 +19,6 @@ package org.springframework.boot.actuate.autoconfigure.integrationtest; import org.junit.jupiter.api.Test; import org.springframework.boot.SpringBootConfiguration; -import org.springframework.boot.actuate.autoconfigure.tracing.BraveAutoConfiguration; -import org.springframework.boot.actuate.autoconfigure.tracing.OpenTelemetryTracingAutoConfiguration; import org.springframework.boot.actuate.health.HealthEndpointWebExtension; import org.springframework.boot.actuate.health.ReactiveHealthEndpointWebExtension; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; @@ -57,18 +55,17 @@ class WebEndpointsAutoConfigurationIntegrationTests { private WebApplicationContextRunner servletWebRunner() { return new WebApplicationContextRunner() .withConfiguration(UserConfigurations.of(WebEndpointTestApplication.class)) - .withPropertyValues("management.tracing.enabled=false", "management.defaults.metrics.export.enabled=false"); + .withPropertyValues("management.defaults.metrics.export.enabled=false"); } private ReactiveWebApplicationContextRunner reactiveWebRunner() { return new ReactiveWebApplicationContextRunner() .withConfiguration(UserConfigurations.of(WebEndpointTestApplication.class)) - .withPropertyValues("management.tracing.enabled=false", "management.defaults.metrics.export.enabled=false"); + .withPropertyValues("management.defaults.metrics.export.enabled=false"); } @EnableAutoConfiguration(exclude = { CassandraAutoConfiguration.class, CassandraDataAutoConfiguration.class, - RepositoryRestMvcAutoConfiguration.class, BraveAutoConfiguration.class, - OpenTelemetryTracingAutoConfiguration.class }) + RepositoryRestMvcAutoConfiguration.class }) @SpringBootConfiguration static class WebEndpointTestApplication { diff --git a/spring-boot-project/spring-boot-dependencies/build.gradle b/spring-boot-project/spring-boot-dependencies/build.gradle index e11cdd4a2f4..f6513cc4981 100644 --- a/spring-boot-project/spring-boot-dependencies/build.gradle +++ b/spring-boot-project/spring-boot-dependencies/build.gradle @@ -2134,6 +2134,7 @@ bom { "spring-boot-testcontainers-all", "spring-boot-thymeleaf", "spring-boot-tomcat", + "spring-boot-tracing", "spring-boot-tx", "spring-boot-undertow", "spring-boot-validation", diff --git a/spring-boot-project/spring-boot-docker-compose-all/build.gradle b/spring-boot-project/spring-boot-docker-compose-all/build.gradle index 56f013e6bb8..b148001108f 100644 --- a/spring-boot-project/spring-boot-docker-compose-all/build.gradle +++ b/spring-boot-project/spring-boot-docker-compose-all/build.gradle @@ -72,6 +72,7 @@ dependencies { optional(project(":spring-boot-project:spring-boot-opentelemetry")) optional(project(":spring-boot-project:spring-boot-pulsar")) optional(project(":spring-boot-project:spring-boot-r2dbc")) + optional(project(":spring-boot-project:spring-boot-tracing")) optional(project(":spring-boot-project:spring-boot-zipkin")) optional("com.hazelcast:hazelcast") optional("org.mongodb:mongodb-driver-core") diff --git a/spring-boot-project/spring-boot-docker-compose-all/src/dockerTest/java/org/springframework/boot/docker/compose/service/connection/otlp/GrafanaOpenTelemetryTracingDockerComposeConnectionDetailsFactoryIntegrationTests.java b/spring-boot-project/spring-boot-docker-compose-all/src/dockerTest/java/org/springframework/boot/docker/compose/service/connection/otlp/GrafanaOpenTelemetryTracingDockerComposeConnectionDetailsFactoryIntegrationTests.java index ffbcbb8e2e9..7ea6e9c057e 100644 --- a/spring-boot-project/spring-boot-docker-compose-all/src/dockerTest/java/org/springframework/boot/docker/compose/service/connection/otlp/GrafanaOpenTelemetryTracingDockerComposeConnectionDetailsFactoryIntegrationTests.java +++ b/spring-boot-project/spring-boot-docker-compose-all/src/dockerTest/java/org/springframework/boot/docker/compose/service/connection/otlp/GrafanaOpenTelemetryTracingDockerComposeConnectionDetailsFactoryIntegrationTests.java @@ -16,10 +16,10 @@ package org.springframework.boot.docker.compose.service.connection.otlp; -import org.springframework.boot.actuate.autoconfigure.tracing.otlp.OtlpTracingConnectionDetails; -import org.springframework.boot.actuate.autoconfigure.tracing.otlp.Transport; import org.springframework.boot.docker.compose.service.connection.test.DockerComposeTest; import org.springframework.boot.testsupport.container.TestImage; +import org.springframework.boot.tracing.autoconfigure.otlp.OtlpTracingConnectionDetails; +import org.springframework.boot.tracing.autoconfigure.otlp.Transport; import static org.assertj.core.api.Assertions.assertThat; diff --git a/spring-boot-project/spring-boot-docker-compose-all/src/dockerTest/java/org/springframework/boot/docker/compose/service/connection/otlp/OpenTelemetryTracingDockerComposeConnectionDetailsFactoryIntegrationTests.java b/spring-boot-project/spring-boot-docker-compose-all/src/dockerTest/java/org/springframework/boot/docker/compose/service/connection/otlp/OpenTelemetryTracingDockerComposeConnectionDetailsFactoryIntegrationTests.java index e3518a3fc36..d2ff3043407 100644 --- a/spring-boot-project/spring-boot-docker-compose-all/src/dockerTest/java/org/springframework/boot/docker/compose/service/connection/otlp/OpenTelemetryTracingDockerComposeConnectionDetailsFactoryIntegrationTests.java +++ b/spring-boot-project/spring-boot-docker-compose-all/src/dockerTest/java/org/springframework/boot/docker/compose/service/connection/otlp/OpenTelemetryTracingDockerComposeConnectionDetailsFactoryIntegrationTests.java @@ -16,10 +16,10 @@ package org.springframework.boot.docker.compose.service.connection.otlp; -import org.springframework.boot.actuate.autoconfigure.tracing.otlp.OtlpTracingConnectionDetails; -import org.springframework.boot.actuate.autoconfigure.tracing.otlp.Transport; import org.springframework.boot.docker.compose.service.connection.test.DockerComposeTest; import org.springframework.boot.testsupport.container.TestImage; +import org.springframework.boot.tracing.autoconfigure.otlp.OtlpTracingConnectionDetails; +import org.springframework.boot.tracing.autoconfigure.otlp.Transport; import static org.assertj.core.api.Assertions.assertThat; diff --git a/spring-boot-project/spring-boot-docker-compose-all/src/main/java/org/springframework/boot/docker/compose/service/connection/otlp/OpenTelemetryTracingDockerComposeConnectionDetailsFactory.java b/spring-boot-project/spring-boot-docker-compose-all/src/main/java/org/springframework/boot/docker/compose/service/connection/otlp/OpenTelemetryTracingDockerComposeConnectionDetailsFactory.java index 44521f75a5a..97fb8ec7185 100644 --- a/spring-boot-project/spring-boot-docker-compose-all/src/main/java/org/springframework/boot/docker/compose/service/connection/otlp/OpenTelemetryTracingDockerComposeConnectionDetailsFactory.java +++ b/spring-boot-project/spring-boot-docker-compose-all/src/main/java/org/springframework/boot/docker/compose/service/connection/otlp/OpenTelemetryTracingDockerComposeConnectionDetailsFactory.java @@ -16,11 +16,11 @@ package org.springframework.boot.docker.compose.service.connection.otlp; -import org.springframework.boot.actuate.autoconfigure.tracing.otlp.OtlpTracingConnectionDetails; -import org.springframework.boot.actuate.autoconfigure.tracing.otlp.Transport; import org.springframework.boot.docker.compose.core.RunningService; import org.springframework.boot.docker.compose.service.connection.DockerComposeConnectionDetailsFactory; import org.springframework.boot.docker.compose.service.connection.DockerComposeConnectionSource; +import org.springframework.boot.tracing.autoconfigure.otlp.OtlpTracingConnectionDetails; +import org.springframework.boot.tracing.autoconfigure.otlp.Transport; /** * {@link DockerComposeConnectionDetailsFactory} to create @@ -41,7 +41,7 @@ class OpenTelemetryTracingDockerComposeConnectionDetailsFactory OpenTelemetryTracingDockerComposeConnectionDetailsFactory() { super(OPENTELEMETRY_IMAGE_NAMES, - "org.springframework.boot.actuate.autoconfigure.tracing.otlp.OtlpTracingAutoConfiguration"); + "org.springframework.boot.tracing.autoconfigure.otlp.OtlpTracingAutoConfiguration"); } @Override diff --git a/spring-boot-project/spring-boot-docs/build.gradle b/spring-boot-project/spring-boot-docs/build.gradle index bc07c610a66..aa7599d23ad 100644 --- a/spring-boot-project/spring-boot-docs/build.gradle +++ b/spring-boot-project/spring-boot-docs/build.gradle @@ -151,6 +151,7 @@ dependencies { autoConfiguration(project(path: ":spring-boot-project:spring-boot-testcontainers", configuration: "autoConfigurationMetadata")) autoConfiguration(project(path: ":spring-boot-project:spring-boot-thymeleaf", configuration: "autoConfigurationMetadata")) autoConfiguration(project(path: ":spring-boot-project:spring-boot-tomcat", configuration: "autoConfigurationMetadata")) + autoConfiguration(project(path: ":spring-boot-project:spring-boot-tracing", configuration: "autoConfigurationMetadata")) autoConfiguration(project(path: ":spring-boot-project:spring-boot-tx", configuration: "autoConfigurationMetadata")) autoConfiguration(project(path: ":spring-boot-project:spring-boot-undertow", configuration: "autoConfigurationMetadata")) autoConfiguration(project(path: ":spring-boot-project:spring-boot-validation", configuration: "autoConfigurationMetadata")) @@ -238,6 +239,7 @@ dependencies { configurationProperties(project(path: ":spring-boot-project:spring-boot-testcontainers", configuration: "configurationPropertiesMetadata")) configurationProperties(project(path: ":spring-boot-project:spring-boot-thymeleaf", configuration: "configurationPropertiesMetadata")) configurationProperties(project(path: ":spring-boot-project:spring-boot-tomcat", configuration: "configurationPropertiesMetadata")) + configurationProperties(project(path: ":spring-boot-project:spring-boot-tracing", configuration: "configurationPropertiesMetadata")) configurationProperties(project(path: ":spring-boot-project:spring-boot-tx", configuration: "configurationPropertiesMetadata")) configurationProperties(project(path: ":spring-boot-project:spring-boot-undertow", configuration: "configurationPropertiesMetadata")) configurationProperties(project(path: ":spring-boot-project:spring-boot-web-server", configuration: "configurationPropertiesMetadata")) diff --git a/spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/actuator/tracing.adoc b/spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/actuator/tracing.adoc index b3dee9d618d..b2d775d1d12 100644 --- a/spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/actuator/tracing.adoc +++ b/spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/actuator/tracing.adoc @@ -138,7 +138,7 @@ Tracing with OpenTelemetry and reporting using OTLP requires the following depen Use the `management.otlp.tracing.*` configuration properties to configure reporting using OTLP. -NOTE: If you need to apply advanced customizations to OTLP span exporters, consider registering javadoc:org.springframework.boot.actuate.autoconfigure.tracing.otlp.OtlpHttpSpanExporterBuilderCustomizer[] or javadoc:org.springframework.boot.actuate.autoconfigure.tracing.otlp.OtlpGrpcSpanExporterBuilderCustomizer[] beans. +NOTE: If you need to apply advanced customizations to OTLP span exporters, consider registering javadoc:org.springframework.boot.tracing.autoconfigure.otlp.OtlpHttpSpanExporterBuilderCustomizer[] or javadoc:org.springframework.boot.tracing.autoconfigure.otlp.OtlpGrpcSpanExporterBuilderCustomizer[] beans. These will be invoked before the creation of the `OtlpHttpSpanExporter` or `OtlpGrpcSpanExporter`. The customizers take precedence over anything applied by the auto-configuration. diff --git a/spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/features/dev-services.adoc b/spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/features/dev-services.adoc index 6a6680f65c9..4b383d7c4a4 100644 --- a/spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/features/dev-services.adoc +++ b/spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/features/dev-services.adoc @@ -116,7 +116,7 @@ The following service connections are currently supported: | javadoc:org.springframework.boot.metrics.autoconfigure.export.otlp.OtlpMetricsConnectionDetails[] | Containers named "otel/opentelemetry-collector-contrib", "grafana/otel-lgtm" -| javadoc:org.springframework.boot.actuate.autoconfigure.tracing.otlp.OtlpTracingConnectionDetails[] +| javadoc:org.springframework.boot.tracing.autoconfigure.otlp.OtlpTracingConnectionDetails[] | Containers named "otel/opentelemetry-collector-contrib", "grafana/otel-lgtm" | javadoc:org.springframework.boot.autoconfigure.pulsar.PulsarConnectionDetails[] @@ -131,7 +131,7 @@ The following service connections are currently supported: | javadoc:org.springframework.boot.data.redis.autoconfigure.RedisConnectionDetails[] | Containers named "redis", "bitnami/redis", "redis/redis-stack" or "redis/redis-stack-server" -| javadoc:org.springframework.boot.actuate.autoconfigure.tracing.zipkin.ZipkinConnectionDetails[] +| javadoc:org.springframework.boot.tracing.autoconfigure.zipkin.ZipkinConnectionDetails[] | Containers named "openzipkin/zipkin". |=== diff --git a/spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/testing/spring-boot-applications.adoc b/spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/testing/spring-boot-applications.adoc index 8c3f8a0bd72..76f404b91e9 100644 --- a/spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/testing/spring-boot-applications.adoc +++ b/spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/testing/spring-boot-applications.adoc @@ -233,7 +233,7 @@ Regardless of your classpath, tracing components which are reporting data are no If you need those components as part of an integration test, annotate the test with javadoc:org.springframework.boot.test.autoconfigure.actuate.observability.AutoConfigureObservability[format=annotation]. -If you have created your own reporting components (e.g. a custom javadoc:io.opentelemetry.sdk.trace.export.SpanExporter[] or `brave.handler.SpanHandler`) and you don't want them to be active in tests, you can use the javadoc:org.springframework.boot.actuate.autoconfigure.tracing.ConditionalOnEnabledTracing[format=annotation] annotation to disable them. +If you have created your own reporting components (e.g. a custom javadoc:io.opentelemetry.sdk.trace.export.SpanExporter[] or `brave.handler.SpanHandler`) and you don't want them to be active in tests, you can use the javadoc:org.springframework.boot.tracing.autoconfigure.ConditionalOnEnabledTracing[format=annotation] annotation to disable them. If you annotate xref:testing/spring-boot-applications.adoc#testing.spring-boot-applications.autoconfigured-tests[a sliced test] with javadoc:org.springframework.boot.test.autoconfigure.actuate.observability.AutoConfigureObservability[format=annotation], it auto-configures a no-op javadoc:io.micrometer.tracing.Tracer[]. Data exporting in sliced tests is not supported with the javadoc:org.springframework.boot.test.autoconfigure.actuate.observability.AutoConfigureObservability[format=annotation] annotation. diff --git a/spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/testing/testcontainers.adoc b/spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/testing/testcontainers.adoc index 45faa2e58d6..6cae636a789 100644 --- a/spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/testing/testcontainers.adoc +++ b/spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/testing/testcontainers.adoc @@ -161,7 +161,7 @@ The following service connection factories are provided in the `spring-boot-test | javadoc:org.springframework.boot.metrics.autoconfigure.export.otlp.OtlpMetricsConnectionDetails[] | Containers named "otel/opentelemetry-collector-contrib" or of type javadoc:org.testcontainers.grafana.LgtmStackContainer[] -| javadoc:org.springframework.boot.actuate.autoconfigure.tracing.otlp.OtlpTracingConnectionDetails[] +| javadoc:org.springframework.boot.tracing.autoconfigure.otlp.OtlpTracingConnectionDetails[] | Containers named "otel/opentelemetry-collector-contrib" or of type javadoc:org.testcontainers.grafana.LgtmStackContainer[] | javadoc:org.springframework.boot.autoconfigure.pulsar.PulsarConnectionDetails[] @@ -179,7 +179,7 @@ javadoc:org.testcontainers.oracle.OracleContainer[OracleContainer (free)], javad | javadoc:org.springframework.boot.data.redis.autoconfigure.RedisConnectionDetails[] | Containers of type javadoc:com.redis.testcontainers.RedisContainer[] or javadoc:com.redis.testcontainers.RedisStackContainer[], or containers named "redis", "redis/redis-stack" or "redis/redis-stack-server" -| javadoc:org.springframework.boot.actuate.autoconfigure.tracing.zipkin.ZipkinConnectionDetails[] +| javadoc:org.springframework.boot.tracing.autoconfigure.zipkin.ZipkinConnectionDetails[] | Containers named "openzipkin/zipkin" |=== diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-actuator/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-actuator/build.gradle index c004b93fbe6..d55b1929268 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-actuator/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-actuator/build.gradle @@ -23,6 +23,7 @@ description = "Starter for using Spring Boot's Actuator which provides productio dependencies { api(project(":spring-boot-project:spring-boot-actuator-autoconfigure-all")) api(project(":spring-boot-project:spring-boot-metrics")) + api(project(":spring-boot-project:spring-boot-tracing")) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("io.micrometer:micrometer-observation") api("io.micrometer:micrometer-jakarta9") diff --git a/spring-boot-project/spring-boot-test-autoconfigure/build.gradle b/spring-boot-project/spring-boot-test-autoconfigure/build.gradle index dffe718382f..1d3884d1543 100644 --- a/spring-boot-project/spring-boot-test-autoconfigure/build.gradle +++ b/spring-boot-project/spring-boot-test-autoconfigure/build.gradle @@ -98,6 +98,7 @@ dependencies { optional(project(":spring-boot-project:spring-boot-security-oauth2-client")) optional(project(":spring-boot-project:spring-boot-security-oauth2-resource-server")) optional(project(":spring-boot-project:spring-boot-security-saml2")) + optional(project(":spring-boot-project:spring-boot-tracing")) optional(project(":spring-boot-project:spring-boot-tx")) optional(project(":spring-boot-project:spring-boot-validation")) optional(project(":spring-boot-project:spring-boot-web-server-test")) diff --git a/spring-boot-project/spring-boot-test-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.test.autoconfigure.actuate.observability.AutoConfigureObservability.imports b/spring-boot-project/spring-boot-test-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.test.autoconfigure.actuate.observability.AutoConfigureObservability.imports index 52873e13128..9324b74a808 100644 --- a/spring-boot-project/spring-boot-test-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.test.autoconfigure.actuate.observability.AutoConfigureObservability.imports +++ b/spring-boot-project/spring-boot-test-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.test.autoconfigure.actuate.observability.AutoConfigureObservability.imports @@ -4,10 +4,10 @@ org.springframework.boot.observation.autoconfigure.ObservationAutoConfiguration # Metrics -org.springframework.boot.metrics.autoconfigure.export.simple.SimpleMetricsExportAutoConfiguration -org.springframework.boot.metrics.autoconfigure.CompositeMeterRegistryAutoConfiguration -org.springframework.boot.metrics.autoconfigure.MetricsAutoConfiguration +optional:org.springframework.boot.metrics.autoconfigure.export.simple.SimpleMetricsExportAutoConfiguration +optional:org.springframework.boot.metrics.autoconfigure.CompositeMeterRegistryAutoConfiguration +optional:org.springframework.boot.metrics.autoconfigure.MetricsAutoConfiguration # Tracing -org.springframework.boot.actuate.autoconfigure.tracing.NoopTracerAutoConfiguration -org.springframework.boot.actuate.autoconfigure.tracing.MicrometerTracingAutoConfiguration +optional:org.springframework.boot.tracing.autoconfigure.NoopTracerAutoConfiguration +optional:org.springframework.boot.tracing.autoconfigure.MicrometerTracingAutoConfiguration diff --git a/spring-boot-project/spring-boot-testcontainers-all/build.gradle b/spring-boot-project/spring-boot-testcontainers-all/build.gradle index c423feedf82..ab711bdbab2 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/build.gradle +++ b/spring-boot-project/spring-boot-testcontainers-all/build.gradle @@ -46,6 +46,7 @@ dependencies { optional(project(":spring-boot-project:spring-boot-actuator-autoconfigure-all")) optional(project(":spring-boot-project:spring-boot-metrics")) optional(project(":spring-boot-project:spring-boot-opentelemetry")) + optional(project(":spring-boot-project:spring-boot-tracing")) optional(project(":spring-boot-project:spring-boot-tx")) optional(project(":spring-boot-project:spring-boot-zipkin")) optional("org.springframework:spring-test") diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/otlp/GrafanaOpenTelemetryTracingContainerConnectionDetailsFactoryIntegrationTests.java b/spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/otlp/GrafanaOpenTelemetryTracingContainerConnectionDetailsFactoryIntegrationTests.java index 054f05536d3..97757875ac2 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/otlp/GrafanaOpenTelemetryTracingContainerConnectionDetailsFactoryIntegrationTests.java +++ b/spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/otlp/GrafanaOpenTelemetryTracingContainerConnectionDetailsFactoryIntegrationTests.java @@ -22,12 +22,12 @@ import org.testcontainers.junit.jupiter.Container; import org.testcontainers.junit.jupiter.Testcontainers; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.actuate.autoconfigure.tracing.otlp.OtlpTracingAutoConfiguration; -import org.springframework.boot.actuate.autoconfigure.tracing.otlp.OtlpTracingConnectionDetails; -import org.springframework.boot.actuate.autoconfigure.tracing.otlp.Transport; import org.springframework.boot.autoconfigure.ImportAutoConfiguration; import org.springframework.boot.testcontainers.service.connection.ServiceConnection; import org.springframework.boot.testsupport.container.TestImage; +import org.springframework.boot.tracing.autoconfigure.otlp.OtlpTracingAutoConfiguration; +import org.springframework.boot.tracing.autoconfigure.otlp.OtlpTracingConnectionDetails; +import org.springframework.boot.tracing.autoconfigure.otlp.Transport; import org.springframework.context.annotation.Configuration; import org.springframework.test.context.junit.jupiter.SpringJUnitConfig; diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/otlp/OpenTelemetryLoggingContainerConnectionDetailsFactoryIntegrationTests.java b/spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/otlp/OpenTelemetryLoggingContainerConnectionDetailsFactoryIntegrationTests.java index 2607e6082dd..56ec0142cc2 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/otlp/OpenTelemetryLoggingContainerConnectionDetailsFactoryIntegrationTests.java +++ b/spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/otlp/OpenTelemetryLoggingContainerConnectionDetailsFactoryIntegrationTests.java @@ -22,12 +22,12 @@ import org.testcontainers.junit.jupiter.Container; import org.testcontainers.junit.jupiter.Testcontainers; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.actuate.autoconfigure.tracing.otlp.OtlpTracingAutoConfiguration; import org.springframework.boot.autoconfigure.ImportAutoConfiguration; import org.springframework.boot.opentelemetry.actuate.autoconfigure.logging.OpenTelemetryLoggingConnectionDetails; import org.springframework.boot.opentelemetry.actuate.autoconfigure.logging.Transport; import org.springframework.boot.testcontainers.service.connection.ServiceConnection; import org.springframework.boot.testsupport.container.TestImage; +import org.springframework.boot.tracing.autoconfigure.otlp.OtlpTracingAutoConfiguration; import org.springframework.context.annotation.Configuration; import org.springframework.test.context.junit.jupiter.SpringJUnitConfig; diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/otlp/OpenTelemetryTracingContainerConnectionDetailsFactoryIntegrationTests.java b/spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/otlp/OpenTelemetryTracingContainerConnectionDetailsFactoryIntegrationTests.java index c53bdcec5e1..4b22c7fd551 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/otlp/OpenTelemetryTracingContainerConnectionDetailsFactoryIntegrationTests.java +++ b/spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/otlp/OpenTelemetryTracingContainerConnectionDetailsFactoryIntegrationTests.java @@ -22,12 +22,12 @@ import org.testcontainers.junit.jupiter.Container; import org.testcontainers.junit.jupiter.Testcontainers; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.actuate.autoconfigure.tracing.otlp.OtlpTracingAutoConfiguration; -import org.springframework.boot.actuate.autoconfigure.tracing.otlp.OtlpTracingConnectionDetails; -import org.springframework.boot.actuate.autoconfigure.tracing.otlp.Transport; import org.springframework.boot.autoconfigure.ImportAutoConfiguration; import org.springframework.boot.testcontainers.service.connection.ServiceConnection; import org.springframework.boot.testsupport.container.TestImage; +import org.springframework.boot.tracing.autoconfigure.otlp.OtlpTracingAutoConfiguration; +import org.springframework.boot.tracing.autoconfigure.otlp.OtlpTracingConnectionDetails; +import org.springframework.boot.tracing.autoconfigure.otlp.Transport; import org.springframework.context.annotation.Configuration; import org.springframework.test.context.junit.jupiter.SpringJUnitConfig; diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/otlp/GrafanaOpenTelemetryTracingContainerConnectionDetailsFactory.java b/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/otlp/GrafanaOpenTelemetryTracingContainerConnectionDetailsFactory.java index 51ef144757d..a79dc4f68b3 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/otlp/GrafanaOpenTelemetryTracingContainerConnectionDetailsFactory.java +++ b/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/otlp/GrafanaOpenTelemetryTracingContainerConnectionDetailsFactory.java @@ -18,11 +18,11 @@ package org.springframework.boot.testcontainers.service.connection.otlp; import org.testcontainers.grafana.LgtmStackContainer; -import org.springframework.boot.actuate.autoconfigure.tracing.otlp.OtlpTracingConnectionDetails; -import org.springframework.boot.actuate.autoconfigure.tracing.otlp.Transport; import org.springframework.boot.testcontainers.service.connection.ContainerConnectionDetailsFactory; import org.springframework.boot.testcontainers.service.connection.ContainerConnectionSource; import org.springframework.boot.testcontainers.service.connection.ServiceConnection; +import org.springframework.boot.tracing.autoconfigure.otlp.OtlpTracingConnectionDetails; +import org.springframework.boot.tracing.autoconfigure.otlp.Transport; /** * {@link ContainerConnectionDetailsFactory} to create @@ -36,8 +36,7 @@ class GrafanaOpenTelemetryTracingContainerConnectionDetailsFactory extends ContainerConnectionDetailsFactory { GrafanaOpenTelemetryTracingContainerConnectionDetailsFactory() { - super(ANY_CONNECTION_NAME, - "org.springframework.boot.actuate.autoconfigure.tracing.otlp.OtlpTracingAutoConfiguration"); + super(ANY_CONNECTION_NAME, "org.springframework.boot.tracing.autoconfigure.otlp.OtlpTracingAutoConfiguration"); } @Override diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/otlp/OpenTelemetryTracingContainerConnectionDetailsFactory.java b/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/otlp/OpenTelemetryTracingContainerConnectionDetailsFactory.java index ed2d03e95ab..f65ac1a2044 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/otlp/OpenTelemetryTracingContainerConnectionDetailsFactory.java +++ b/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/otlp/OpenTelemetryTracingContainerConnectionDetailsFactory.java @@ -19,11 +19,11 @@ package org.springframework.boot.testcontainers.service.connection.otlp; import org.testcontainers.containers.Container; import org.testcontainers.containers.GenericContainer; -import org.springframework.boot.actuate.autoconfigure.tracing.otlp.OtlpTracingConnectionDetails; -import org.springframework.boot.actuate.autoconfigure.tracing.otlp.Transport; import org.springframework.boot.testcontainers.service.connection.ContainerConnectionDetailsFactory; import org.springframework.boot.testcontainers.service.connection.ContainerConnectionSource; import org.springframework.boot.testcontainers.service.connection.ServiceConnection; +import org.springframework.boot.tracing.autoconfigure.otlp.OtlpTracingConnectionDetails; +import org.springframework.boot.tracing.autoconfigure.otlp.Transport; /** * {@link ContainerConnectionDetailsFactory} to create @@ -42,7 +42,7 @@ class OpenTelemetryTracingContainerConnectionDetailsFactory OpenTelemetryTracingContainerConnectionDetailsFactory() { super("otel/opentelemetry-collector-contrib", - "org.springframework.boot.actuate.autoconfigure.tracing.otlp.OtlpTracingAutoConfiguration"); + "org.springframework.boot.tracing.autoconfigure.otlp.OtlpTracingAutoConfiguration"); } @Override diff --git a/spring-boot-project/spring-boot-tracing/build.gradle b/spring-boot-project/spring-boot-tracing/build.gradle new file mode 100644 index 00000000000..412e612eb29 --- /dev/null +++ b/spring-boot-project/spring-boot-tracing/build.gradle @@ -0,0 +1,61 @@ +/* + * Copyright 2012-present the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the License); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + + +plugins { + id "java-library" + id "org.springframework.boot.auto-configuration" + id "org.springframework.boot.configuration-properties" + id "org.springframework.boot.deployed" + id "org.springframework.boot.optional-dependencies" +} + +description = "Spring Boot Tracing" + +dependencies { + api(project(":spring-boot-project:spring-boot")) + api(project(":spring-boot-project:spring-boot-observation")) + api("io.micrometer:micrometer-tracing") { + exclude(group: "aopalliance", module: "aopalliance") + } + + optional(project(":spring-boot-project:spring-boot-actuator-autoconfigure")) + optional(project(":spring-boot-project:spring-boot-autoconfigure")) + optional(project(":spring-boot-project:spring-boot-metrics")) + optional("io.micrometer:micrometer-core") + optional("io.micrometer:micrometer-tracing-bridge-brave") + optional("io.micrometer:micrometer-tracing-bridge-otel") + optional("io.opentelemetry:opentelemetry-exporter-zipkin") + optional("io.opentelemetry:opentelemetry-exporter-otlp") + optional("io.prometheus:prometheus-metrics-tracer-common") + optional("io.zipkin.reporter2:zipkin-reporter-brave") + optional("org.aspectj:aspectjweaver") + optional("org.junit.platform:junit-platform-launcher") + + testImplementation(project(":spring-boot-project:spring-boot-opentelemetry")) + testImplementation(project(":spring-boot-project:spring-boot-test")) + testImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support")) + testImplementation(project(":spring-boot-project:spring-boot-zipkin")) + testImplementation("com.squareup.okhttp3:mockwebserver") + testImplementation("io.micrometer:micrometer-registry-prometheus") + testImplementation("io.opentelemetry:opentelemetry-exporter-common") + testImplementation("io.prometheus:prometheus-metrics-exposition-formats") + testImplementation("org.eclipse.jetty.ee10:jetty-ee10-webapp") + testImplementation("org.eclipse.jetty.http2:jetty-http2-server") + + testRuntimeOnly("ch.qos.logback:logback-classic") + testRuntimeOnly("io.grpc:grpc-api:1.72.0") +} diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/BraveAutoConfiguration.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/BraveAutoConfiguration.java similarity index 97% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/BraveAutoConfiguration.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/BraveAutoConfiguration.java index f1926a7a9f0..8d7ac0f7cb1 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/BraveAutoConfiguration.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/BraveAutoConfiguration.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import java.util.List; @@ -41,13 +41,13 @@ import io.micrometer.tracing.exporter.SpanFilter; import io.micrometer.tracing.exporter.SpanReporter; import org.springframework.beans.factory.ObjectProvider; -import org.springframework.boot.actuate.autoconfigure.tracing.TracingProperties.Propagation.PropagationType; import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.boot.context.properties.IncompatibleConfigurationException; +import org.springframework.boot.tracing.autoconfigure.TracingProperties.Propagation.PropagationType; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Import; import org.springframework.core.Ordered; @@ -60,7 +60,7 @@ import org.springframework.core.env.Environment; * @author Moritz Halbritter * @author Marcin Grzejszczak * @author Jonatan Ivanov - * @since 3.0.0 + * @since 4.0.0 */ @AutoConfiguration(before = { MicrometerTracingAutoConfiguration.class, NoopTracerAutoConfiguration.class }) @ConditionalOnClass({ Tracer.class, BraveTracer.class }) diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/BravePropagationConfigurations.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/BravePropagationConfigurations.java similarity index 97% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/BravePropagationConfigurations.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/BravePropagationConfigurations.java index b158ff74aa0..76ccaf815d6 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/BravePropagationConfigurations.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/BravePropagationConfigurations.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import java.util.List; @@ -33,10 +33,10 @@ import brave.propagation.Propagation.Factory; import io.micrometer.tracing.brave.bridge.BraveBaggageManager; import org.springframework.beans.factory.ObjectProvider; -import org.springframework.boot.actuate.autoconfigure.tracing.TracingProperties.Baggage.Correlation; import org.springframework.boot.autoconfigure.condition.ConditionalOnBooleanProperty; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.boot.context.properties.EnableConfigurationProperties; +import org.springframework.boot.tracing.autoconfigure.TracingProperties.Baggage.Correlation; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.core.annotation.Order; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/CompositePropagationFactory.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/CompositePropagationFactory.java similarity index 97% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/CompositePropagationFactory.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/CompositePropagationFactory.java index ab14c12f34a..ebaa8b9f5e5 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/CompositePropagationFactory.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/CompositePropagationFactory.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import java.util.Collection; import java.util.Collections; @@ -30,7 +30,7 @@ import brave.propagation.TraceContextOrSamplingFlags; import io.micrometer.tracing.BaggageManager; import io.micrometer.tracing.brave.bridge.W3CPropagation; -import org.springframework.boot.actuate.autoconfigure.tracing.TracingProperties.Propagation.PropagationType; +import org.springframework.boot.tracing.autoconfigure.TracingProperties.Propagation.PropagationType; /** * {@link brave.propagation.Propagation.Factory Propagation factory} which supports diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/CompositeTextMapPropagator.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/CompositeTextMapPropagator.java similarity index 97% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/CompositeTextMapPropagator.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/CompositeTextMapPropagator.java index 1278fef2130..401b9b98b92 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/CompositeTextMapPropagator.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/CompositeTextMapPropagator.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import java.util.ArrayList; import java.util.Collection; @@ -33,7 +33,7 @@ import io.opentelemetry.context.propagation.TextMapPropagator; import io.opentelemetry.context.propagation.TextMapSetter; import io.opentelemetry.extension.trace.propagation.B3Propagator; -import org.springframework.boot.actuate.autoconfigure.tracing.TracingProperties.Propagation.PropagationType; +import org.springframework.boot.tracing.autoconfigure.TracingProperties.Propagation.PropagationType; /** * {@link TextMapPropagator} which supports multiple tracing formats. It is able to diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/ConditionalOnEnabledTracing.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/ConditionalOnEnabledTracing.java similarity index 95% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/ConditionalOnEnabledTracing.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/ConditionalOnEnabledTracing.java index 54f7a66f1e0..c8a326955e8 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/ConditionalOnEnabledTracing.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/ConditionalOnEnabledTracing.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import java.lang.annotation.Documented; import java.lang.annotation.ElementType; @@ -33,7 +33,7 @@ import org.springframework.context.annotation.Conditional; * property takes precedence over the global property. * * @author Moritz Halbritter - * @since 3.0.0 + * @since 4.0.0 */ @Retention(RetentionPolicy.RUNTIME) @Target({ ElementType.TYPE, ElementType.METHOD }) diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/LocalBaggageFields.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/LocalBaggageFields.java similarity index 97% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/LocalBaggageFields.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/LocalBaggageFields.java index 8430bff9454..bda70251de8 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/LocalBaggageFields.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/LocalBaggageFields.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import java.util.ArrayList; import java.util.Collections; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/LogCorrelationEnvironmentPostProcessor.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/LogCorrelationEnvironmentPostProcessor.java similarity index 97% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/LogCorrelationEnvironmentPostProcessor.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/LogCorrelationEnvironmentPostProcessor.java index 42832a481fa..49ed683b491 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/LogCorrelationEnvironmentPostProcessor.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/LogCorrelationEnvironmentPostProcessor.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import org.springframework.boot.SpringApplication; import org.springframework.boot.env.EnvironmentPostProcessor; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/MicrometerTracingAutoConfiguration.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/MicrometerTracingAutoConfiguration.java similarity index 98% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/MicrometerTracingAutoConfiguration.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/MicrometerTracingAutoConfiguration.java index d596a909d63..b4a8db76201 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/MicrometerTracingAutoConfiguration.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/MicrometerTracingAutoConfiguration.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import io.micrometer.common.annotation.ValueExpressionResolver; import io.micrometer.tracing.Tracer; @@ -54,7 +54,7 @@ import org.springframework.util.ClassUtils; * * @author Moritz Halbritter * @author Jonatan Ivanov - * @since 3.0.0 + * @since 4.0.0 */ @AutoConfiguration @ConditionalOnBean(Tracer.class) diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/NoopTracerAutoConfiguration.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/NoopTracerAutoConfiguration.java similarity index 94% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/NoopTracerAutoConfiguration.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/NoopTracerAutoConfiguration.java index 349906091d6..dc3d7a4fea9 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/NoopTracerAutoConfiguration.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/NoopTracerAutoConfiguration.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import io.micrometer.tracing.Tracer; @@ -29,7 +29,7 @@ import org.springframework.context.annotation.Bean; * {@link Tracer}. * * @author Moritz Halbritter - * @since 3.2.1 + * @since 4.0.0 */ @AutoConfiguration(before = MicrometerTracingAutoConfiguration.class) @ConditionalOnClass(Tracer.class) diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/OnEnabledTracingCondition.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/OnEnabledTracingCondition.java similarity index 97% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/OnEnabledTracingCondition.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/OnEnabledTracingCondition.java index 5fac0ac66f3..ece2182be33 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/OnEnabledTracingCondition.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/OnEnabledTracingCondition.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import java.util.Map; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/OpenTelemetryEventPublisherBeansApplicationListener.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/OpenTelemetryEventPublisherBeansApplicationListener.java similarity index 98% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/OpenTelemetryEventPublisherBeansApplicationListener.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/OpenTelemetryEventPublisherBeansApplicationListener.java index 02a3a887c02..4dfe312d275 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/OpenTelemetryEventPublisherBeansApplicationListener.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/OpenTelemetryEventPublisherBeansApplicationListener.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import java.util.List; import java.util.concurrent.atomic.AtomicBoolean; @@ -48,7 +48,7 @@ import org.springframework.util.MultiValueMap; * {@link ApplicationStartingEvent} isn't called early enough or isn't fired. * * @author Phillip Webb - * @since 3.4.0 + * @since 4.0.0 * @see OpenTelemetryEventPublisherBeansTestExecutionListener */ public class OpenTelemetryEventPublisherBeansApplicationListener implements GenericApplicationListener { diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/OpenTelemetryEventPublisherBeansTestExecutionListener.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/OpenTelemetryEventPublisherBeansTestExecutionListener.java similarity index 93% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/OpenTelemetryEventPublisherBeansTestExecutionListener.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/OpenTelemetryEventPublisherBeansTestExecutionListener.java index 9d7415e4b5b..b4c585f9373 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/OpenTelemetryEventPublisherBeansTestExecutionListener.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/OpenTelemetryEventPublisherBeansTestExecutionListener.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import org.junit.platform.launcher.TestExecutionListener; import org.junit.platform.launcher.TestIdentifier; @@ -25,7 +25,7 @@ import org.junit.platform.launcher.TestIdentifier; * early as possible. * * @author Phillip Webb - * @since 3.4.0 + * @since 4.0.0 * @see OpenTelemetryEventPublisherBeansApplicationListener */ public class OpenTelemetryEventPublisherBeansTestExecutionListener implements TestExecutionListener { diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/OpenTelemetryPropagationConfigurations.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/OpenTelemetryPropagationConfigurations.java similarity index 98% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/OpenTelemetryPropagationConfigurations.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/OpenTelemetryPropagationConfigurations.java index bb2eeafcb79..04263ca0019 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/OpenTelemetryPropagationConfigurations.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/OpenTelemetryPropagationConfigurations.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import java.util.List; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/OpenTelemetryTracingAutoConfiguration.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/OpenTelemetryTracingAutoConfiguration.java similarity index 99% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/OpenTelemetryTracingAutoConfiguration.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/OpenTelemetryTracingAutoConfiguration.java index b93db5724f5..e52ee6df1d6 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/OpenTelemetryTracingAutoConfiguration.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/OpenTelemetryTracingAutoConfiguration.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import java.util.List; @@ -64,7 +64,7 @@ import org.springframework.util.CollectionUtils; * @author Moritz Halbritter * @author Marcin Grzejszczak * @author Yanming Zhou - * @since 3.4.0 + * @since 4.0.0 */ @AutoConfiguration(before = { MicrometerTracingAutoConfiguration.class, NoopTracerAutoConfiguration.class }) @ConditionalOnClass({ OtelTracer.class, SdkTracerProvider.class, OpenTelemetry.class }) diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/SdkTracerProviderBuilderCustomizer.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/SdkTracerProviderBuilderCustomizer.java similarity index 93% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/SdkTracerProviderBuilderCustomizer.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/SdkTracerProviderBuilderCustomizer.java index ab1d5dc02d0..74cc5e0f9cc 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/SdkTracerProviderBuilderCustomizer.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/SdkTracerProviderBuilderCustomizer.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import io.opentelemetry.sdk.trace.SdkTracerProvider; import io.opentelemetry.sdk.trace.SdkTracerProviderBuilder; @@ -24,7 +24,7 @@ import io.opentelemetry.sdk.trace.SdkTracerProviderBuilder; * that is used to create the auto-configured {@link SdkTracerProvider}. * * @author Yanming Zhou - * @since 3.1.0 + * @since 4.0.0 */ @FunctionalInterface public interface SdkTracerProviderBuilderCustomizer { diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/SpanExporters.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/SpanExporters.java similarity index 96% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/SpanExporters.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/SpanExporters.java index bf28606c55e..681715000bc 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/SpanExporters.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/SpanExporters.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import java.util.Arrays; import java.util.Collection; @@ -30,7 +30,7 @@ import org.springframework.util.Assert; * A collection of {@link SpanExporter span exporters}. * * @author Moritz Halbritter - * @since 3.2.0 + * @since 4.0.0 */ @FunctionalInterface public interface SpanExporters extends Iterable { diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/SpanProcessors.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/SpanProcessors.java similarity index 96% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/SpanProcessors.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/SpanProcessors.java index 77dbb56fa5c..8e73c3c04c3 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/SpanProcessors.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/SpanProcessors.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import java.util.Arrays; import java.util.Collection; @@ -30,7 +30,7 @@ import org.springframework.util.Assert; * A collection of {@link SpanProcessor span processors}. * * @author Moritz Halbritter - * @since 3.2.0 + * @since 4.0.0 */ @FunctionalInterface public interface SpanProcessors extends Iterable { diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/TracingAndMeterObservationHandlerGroup.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/TracingAndMeterObservationHandlerGroup.java similarity index 98% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/TracingAndMeterObservationHandlerGroup.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/TracingAndMeterObservationHandlerGroup.java index 4c93ecdfdc6..f475f66ed20 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/TracingAndMeterObservationHandlerGroup.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/TracingAndMeterObservationHandlerGroup.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import java.util.ArrayList; import java.util.List; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/TracingProperties.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/TracingProperties.java similarity index 99% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/TracingProperties.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/TracingProperties.java index e5b0ae93add..6032f245623 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/TracingProperties.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/TracingProperties.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import java.time.Duration; import java.util.ArrayList; @@ -27,7 +27,7 @@ import org.springframework.boot.context.properties.ConfigurationProperties; * * @author Moritz Halbritter * @author Jonatan Ivanov - * @since 3.0.0 + * @since 4.0.0 */ @ConfigurationProperties("management.tracing") public class TracingProperties { diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpGrpcSpanExporterBuilderCustomizer.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/otlp/OtlpGrpcSpanExporterBuilderCustomizer.java similarity index 93% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpGrpcSpanExporterBuilderCustomizer.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/otlp/OtlpGrpcSpanExporterBuilderCustomizer.java index 314f7155acd..78393e2b3aa 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpGrpcSpanExporterBuilderCustomizer.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/otlp/OtlpGrpcSpanExporterBuilderCustomizer.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing.otlp; +package org.springframework.boot.tracing.autoconfigure.otlp; import io.opentelemetry.exporter.otlp.trace.OtlpGrpcSpanExporterBuilder; @@ -23,7 +23,7 @@ import io.opentelemetry.exporter.otlp.trace.OtlpGrpcSpanExporterBuilder; * {@link OtlpGrpcSpanExporterBuilder} whilst retaining default auto-configuration. * * @author Dmytro Nosan - * @since 3.5.0 + * @since 4.0.0 */ @FunctionalInterface public interface OtlpGrpcSpanExporterBuilderCustomizer { diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpHttpSpanExporterBuilderCustomizer.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/otlp/OtlpHttpSpanExporterBuilderCustomizer.java similarity index 93% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpHttpSpanExporterBuilderCustomizer.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/otlp/OtlpHttpSpanExporterBuilderCustomizer.java index c39d67c24d3..87a36272cbf 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpHttpSpanExporterBuilderCustomizer.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/otlp/OtlpHttpSpanExporterBuilderCustomizer.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing.otlp; +package org.springframework.boot.tracing.autoconfigure.otlp; import io.opentelemetry.exporter.otlp.http.trace.OtlpHttpSpanExporterBuilder; @@ -23,7 +23,7 @@ import io.opentelemetry.exporter.otlp.http.trace.OtlpHttpSpanExporterBuilder; * {@link OtlpHttpSpanExporterBuilder} whilst retaining default auto-configuration. * * @author Dmytro Nosan - * @since 3.5.0 + * @since 4.0.0 */ @FunctionalInterface public interface OtlpHttpSpanExporterBuilderCustomizer { diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpTracingAutoConfiguration.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/otlp/OtlpTracingAutoConfiguration.java similarity index 96% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpTracingAutoConfiguration.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/otlp/OtlpTracingAutoConfiguration.java index 8e8c498cda8..74170194232 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpTracingAutoConfiguration.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/otlp/OtlpTracingAutoConfiguration.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing.otlp; +package org.springframework.boot.tracing.autoconfigure.otlp; import io.micrometer.tracing.otel.bridge.OtelTracer; import io.opentelemetry.api.OpenTelemetry; @@ -44,7 +44,7 @@ import org.springframework.context.annotation.Import; * @author Jonatan Ivanov * @author Moritz Halbritter * @author Eddú Meléndez - * @since 3.4.0 + * @since 4.0.0 */ @AutoConfiguration @ConditionalOnClass({ OtelTracer.class, SdkTracerProvider.class, OpenTelemetry.class, OtlpHttpSpanExporter.class }) diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpTracingConfigurations.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/otlp/OtlpTracingConfigurations.java similarity index 96% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpTracingConfigurations.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/otlp/OtlpTracingConfigurations.java index 21647c0098a..130f5b63937 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpTracingConfigurations.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/otlp/OtlpTracingConfigurations.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing.otlp; +package org.springframework.boot.tracing.autoconfigure.otlp; import java.util.Locale; @@ -25,10 +25,10 @@ import io.opentelemetry.exporter.otlp.trace.OtlpGrpcSpanExporter; import io.opentelemetry.exporter.otlp.trace.OtlpGrpcSpanExporterBuilder; import org.springframework.beans.factory.ObjectProvider; -import org.springframework.boot.actuate.autoconfigure.tracing.ConditionalOnEnabledTracing; import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; +import org.springframework.boot.tracing.autoconfigure.ConditionalOnEnabledTracing; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.util.Assert; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpTracingConnectionDetails.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/otlp/OtlpTracingConnectionDetails.java similarity index 94% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpTracingConnectionDetails.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/otlp/OtlpTracingConnectionDetails.java index 7cf8a54f31d..30df64b2b01 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpTracingConnectionDetails.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/otlp/OtlpTracingConnectionDetails.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing.otlp; +package org.springframework.boot.tracing.autoconfigure.otlp; import org.springframework.boot.autoconfigure.service.connection.ConnectionDetails; @@ -23,7 +23,7 @@ import org.springframework.boot.autoconfigure.service.connection.ConnectionDetai * * @author Eddú Meléndez * @author Moritz Halbritter - * @since 3.2.0 + * @since 4.0.0 */ public interface OtlpTracingConnectionDetails extends ConnectionDetails { diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpTracingProperties.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/otlp/OtlpTracingProperties.java similarity index 97% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpTracingProperties.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/otlp/OtlpTracingProperties.java index 6471b04615a..32ce8e47f25 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpTracingProperties.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/otlp/OtlpTracingProperties.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing.otlp; +package org.springframework.boot.tracing.autoconfigure.otlp; import java.time.Duration; import java.util.HashMap; @@ -26,7 +26,7 @@ import org.springframework.boot.context.properties.ConfigurationProperties; * Configuration properties for exporting traces using OTLP. * * @author Jonatan Ivanov - * @since 3.4.0 + * @since 4.0.0 */ @ConfigurationProperties("management.otlp.tracing") public class OtlpTracingProperties { diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/Transport.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/otlp/Transport.java similarity index 90% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/Transport.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/otlp/Transport.java index c2c963c3b04..cf1f033688c 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/Transport.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/otlp/Transport.java @@ -14,13 +14,13 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing.otlp; +package org.springframework.boot.tracing.autoconfigure.otlp; /** * Transport used to send OTLP data. * * @author Moritz Halbritter - * @since 3.4.0 + * @since 4.0.0 */ public enum Transport { diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/package-info.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/otlp/package-info.java similarity index 90% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/package-info.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/otlp/package-info.java index 673ed2a5002..a7ada8ccb93 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/package-info.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/otlp/package-info.java @@ -17,4 +17,4 @@ /** * Auto-configuration for exporting traces with OTLP. */ -package org.springframework.boot.actuate.autoconfigure.tracing.otlp; +package org.springframework.boot.tracing.autoconfigure.otlp; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/package-info.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/package-info.java similarity index 91% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/package-info.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/package-info.java index 97321bb3234..4eafbeba0b3 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/package-info.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/package-info.java @@ -17,4 +17,4 @@ /** * Auto-configuration for Micrometer Tracing. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/prometheus/PrometheusExemplarsAutoConfiguration.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/prometheus/PrometheusExemplarsAutoConfiguration.java similarity index 94% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/prometheus/PrometheusExemplarsAutoConfiguration.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/prometheus/PrometheusExemplarsAutoConfiguration.java index 16b93018b65..d91334dcac4 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/prometheus/PrometheusExemplarsAutoConfiguration.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/prometheus/PrometheusExemplarsAutoConfiguration.java @@ -14,19 +14,19 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing.prometheus; +package org.springframework.boot.tracing.autoconfigure.prometheus; import io.micrometer.tracing.Span; import io.micrometer.tracing.Tracer; import io.prometheus.metrics.tracer.common.SpanContext; import org.springframework.beans.factory.ObjectProvider; -import org.springframework.boot.actuate.autoconfigure.tracing.MicrometerTracingAutoConfiguration; import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; +import org.springframework.boot.tracing.autoconfigure.MicrometerTracingAutoConfiguration; import org.springframework.context.annotation.Bean; import org.springframework.util.function.SingletonSupplier; @@ -35,7 +35,7 @@ import org.springframework.util.function.SingletonSupplier; * Micrometer Tracing. * * @author Jonatan Ivanov - * @since 3.0.0 + * @since 4.0.0 */ @AutoConfiguration( beforeName = "org.springframework.boot.metrics.autoconfigure.export.prometheus.PrometheusMetricsExportAutoConfiguration", diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/prometheus/package-info.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/prometheus/package-info.java similarity index 90% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/prometheus/package-info.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/prometheus/package-info.java index 54fa9432b4a..32d9aca7d25 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/prometheus/package-info.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/prometheus/package-info.java @@ -17,4 +17,4 @@ /** * Auto-configuration for Prometheus Exemplars with Micrometer Tracing. */ -package org.springframework.boot.actuate.autoconfigure.tracing.prometheus; +package org.springframework.boot.tracing.autoconfigure.prometheus; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/zipkin/ZipkinTracingAutoConfiguration.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/zipkin/ZipkinTracingAutoConfiguration.java similarity index 87% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/zipkin/ZipkinTracingAutoConfiguration.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/zipkin/ZipkinTracingAutoConfiguration.java index f03a409bffa..2cbd4d38e63 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/zipkin/ZipkinTracingAutoConfiguration.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/zipkin/ZipkinTracingAutoConfiguration.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing.zipkin; +package org.springframework.boot.tracing.autoconfigure.zipkin; import brave.Tag; import brave.Tags; @@ -29,14 +29,14 @@ import zipkin2.reporter.brave.AsyncZipkinSpanHandler; import zipkin2.reporter.brave.MutableSpanBytesEncoder; import org.springframework.beans.factory.ObjectProvider; -import org.springframework.boot.actuate.autoconfigure.tracing.ConditionalOnEnabledTracing; -import org.springframework.boot.actuate.autoconfigure.tracing.zipkin.ZipkinTracingAutoConfiguration.BraveConfiguration; -import org.springframework.boot.actuate.autoconfigure.tracing.zipkin.ZipkinTracingAutoConfiguration.OpenTelemetryConfiguration; import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; +import org.springframework.boot.tracing.autoconfigure.ConditionalOnEnabledTracing; +import org.springframework.boot.tracing.autoconfigure.zipkin.ZipkinTracingAutoConfiguration.BraveConfiguration; +import org.springframework.boot.tracing.autoconfigure.zipkin.ZipkinTracingAutoConfiguration.OpenTelemetryConfiguration; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Import; @@ -50,8 +50,8 @@ import org.springframework.context.annotation.Import; * @author Phillip Webb * @since 4.0.0 */ +@AutoConfiguration @ConditionalOnClass(Encoding.class) -@AutoConfiguration(afterName = "org.springframework.boot.restclient.autoconfigure.RestTemplateAutoConfiguration") @Import({ BraveConfiguration.class, OpenTelemetryConfiguration.class }) public class ZipkinTracingAutoConfiguration { diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/zipkin/package-info.java b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/zipkin/package-info.java similarity index 90% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/zipkin/package-info.java rename to spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/zipkin/package-info.java index 6270fdd4832..2087014ed24 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/tracing/zipkin/package-info.java +++ b/spring-boot-project/spring-boot-tracing/src/main/java/org/springframework/boot/tracing/autoconfigure/zipkin/package-info.java @@ -17,4 +17,4 @@ /** * Auto-configuration for tracing with Zipkin. */ -package org.springframework.boot.actuate.autoconfigure.tracing.zipkin; +package org.springframework.boot.tracing.autoconfigure.zipkin; diff --git a/spring-boot-project/spring-boot-tracing/src/main/resources/META-INF/additional-spring-configuration-metadata.json b/spring-boot-project/spring-boot-tracing/src/main/resources/META-INF/additional-spring-configuration-metadata.json new file mode 100644 index 00000000000..331ac5c777a --- /dev/null +++ b/spring-boot-project/spring-boot-tracing/src/main/resources/META-INF/additional-spring-configuration-metadata.json @@ -0,0 +1,35 @@ +{ + "groups": [], + "properties": [ + { + "name": "management.otlp.tracing.export.enabled", + "type": "java.lang.Boolean", + "description": "Whether auto-configuration of tracing is enabled to export OTLP traces." + }, + { + "name": "management.tracing.enabled", + "type": "java.lang.Boolean", + "description": "Whether auto-configuration of tracing is enabled to export and propagate traces.", + "defaultValue": true + }, + { + "name": "management.tracing.propagation.consume", + "defaultValue": [ + "W3C", + "B3", + "B3_MULTI" + ] + }, + { + "name": "management.tracing.propagation.produce", + "defaultValue": [ + "W3C" + ] + }, + { + "name": "management.zipkin.tracing.export.enabled", + "type": "java.lang.Boolean", + "description": "Whether auto-configuration of tracing is enabled to export Zipkin traces." + } + ] +} diff --git a/spring-boot-project/spring-boot-tracing/src/main/resources/META-INF/services/org.junit.platform.launcher.TestExecutionListener b/spring-boot-project/spring-boot-tracing/src/main/resources/META-INF/services/org.junit.platform.launcher.TestExecutionListener new file mode 100644 index 00000000000..ae578b68dce --- /dev/null +++ b/spring-boot-project/spring-boot-tracing/src/main/resources/META-INF/services/org.junit.platform.launcher.TestExecutionListener @@ -0,0 +1 @@ +org.springframework.boot.tracing.autoconfigure.OpenTelemetryEventPublisherBeansTestExecutionListener diff --git a/spring-boot-project/spring-boot-tracing/src/main/resources/META-INF/spring.factories b/spring-boot-project/spring-boot-tracing/src/main/resources/META-INF/spring.factories new file mode 100644 index 00000000000..cee51be9cb5 --- /dev/null +++ b/spring-boot-project/spring-boot-tracing/src/main/resources/META-INF/spring.factories @@ -0,0 +1,7 @@ +# Environment Post Processors +org.springframework.boot.env.EnvironmentPostProcessor=\ +org.springframework.boot.tracing.autoconfigure.LogCorrelationEnvironmentPostProcessor + +# Application Listeners +org.springframework.context.ApplicationListener=\ +org.springframework.boot.tracing.autoconfigure.OpenTelemetryEventPublisherBeansApplicationListener diff --git a/spring-boot-project/spring-boot-tracing/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/spring-boot-project/spring-boot-tracing/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports new file mode 100644 index 00000000000..bf38a6315d0 --- /dev/null +++ b/spring-boot-project/spring-boot-tracing/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports @@ -0,0 +1,7 @@ +org.springframework.boot.tracing.autoconfigure.BraveAutoConfiguration +org.springframework.boot.tracing.autoconfigure.MicrometerTracingAutoConfiguration +org.springframework.boot.tracing.autoconfigure.NoopTracerAutoConfiguration +org.springframework.boot.tracing.autoconfigure.OpenTelemetryTracingAutoConfiguration +org.springframework.boot.tracing.autoconfigure.otlp.OtlpTracingAutoConfiguration +org.springframework.boot.tracing.autoconfigure.prometheus.PrometheusExemplarsAutoConfiguration +org.springframework.boot.tracing.autoconfigure.zipkin.ZipkinTracingAutoConfiguration diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/BaggagePropagationIntegrationTests.java b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/BaggagePropagationIntegrationTests.java similarity index 99% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/BaggagePropagationIntegrationTests.java rename to spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/BaggagePropagationIntegrationTests.java index 46b60038216..bfdf2b12e38 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/BaggagePropagationIntegrationTests.java +++ b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/BaggagePropagationIntegrationTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import java.util.function.Supplier; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/BraveAutoConfigurationTests.java b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/BraveAutoConfigurationTests.java similarity index 99% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/BraveAutoConfigurationTests.java rename to spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/BraveAutoConfigurationTests.java index 3896ae2a129..c718082fbf3 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/BraveAutoConfigurationTests.java +++ b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/BraveAutoConfigurationTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import java.util.Collections; import java.util.HashMap; @@ -50,12 +50,12 @@ import org.assertj.core.api.Assertions; import org.assertj.core.api.InstanceOfAssertFactories; import org.junit.jupiter.api.Test; -import org.springframework.boot.actuate.autoconfigure.tracing.BraveAutoConfigurationTests.SpanHandlerConfiguration.AdditionalSpanHandler; import org.springframework.boot.autoconfigure.AutoConfigurations; import org.springframework.boot.context.properties.IncompatibleConfigurationException; import org.springframework.boot.observation.autoconfigure.ObservationAutoConfiguration; import org.springframework.boot.test.context.FilteredClassLoader; import org.springframework.boot.test.context.runner.ApplicationContextRunner; +import org.springframework.boot.tracing.autoconfigure.BraveAutoConfigurationTests.SpanHandlerConfiguration.AdditionalSpanHandler; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.core.annotation.Order; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/CompositePropagationFactoryTests.java b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/CompositePropagationFactoryTests.java similarity index 98% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/CompositePropagationFactoryTests.java rename to spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/CompositePropagationFactoryTests.java index 9645d53ad40..c8157a2ffa8 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/CompositePropagationFactoryTests.java +++ b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/CompositePropagationFactoryTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import java.util.Collections; import java.util.HashMap; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/CompositeTextMapPropagatorTests.java b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/CompositeTextMapPropagatorTests.java similarity index 95% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/CompositeTextMapPropagatorTests.java rename to spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/CompositeTextMapPropagatorTests.java index e64bc531307..7fed5a47166 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/CompositeTextMapPropagatorTests.java +++ b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/CompositeTextMapPropagatorTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import java.util.Collection; import java.util.Collections; @@ -34,8 +34,8 @@ import org.junit.jupiter.api.Test; import org.mockito.InOrder; import org.mockito.Mockito; -import org.springframework.boot.actuate.autoconfigure.tracing.TracingProperties.Propagation; -import org.springframework.boot.actuate.autoconfigure.tracing.TracingProperties.Propagation.PropagationType; +import org.springframework.boot.tracing.autoconfigure.TracingProperties.Propagation; +import org.springframework.boot.tracing.autoconfigure.TracingProperties.Propagation.PropagationType; import static org.assertj.core.api.Assertions.assertThat; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/LocalBaggageFieldsTests.java b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/LocalBaggageFieldsTests.java similarity index 96% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/LocalBaggageFieldsTests.java rename to spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/LocalBaggageFieldsTests.java index 8986b79ecd5..ffa515a5b90 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/LocalBaggageFieldsTests.java +++ b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/LocalBaggageFieldsTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import brave.baggage.BaggageField; import brave.baggage.BaggagePropagation; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/LogCorrelationEnvironmentPostProcessorTests.java b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/LogCorrelationEnvironmentPostProcessorTests.java similarity index 98% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/LogCorrelationEnvironmentPostProcessorTests.java rename to spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/LogCorrelationEnvironmentPostProcessorTests.java index 596fd218f50..818bb7617a0 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/LogCorrelationEnvironmentPostProcessorTests.java +++ b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/LogCorrelationEnvironmentPostProcessorTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import org.junit.jupiter.api.Test; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/MicrometerTracingAutoConfigurationTests.java b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/MicrometerTracingAutoConfigurationTests.java similarity index 99% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/MicrometerTracingAutoConfigurationTests.java rename to spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/MicrometerTracingAutoConfigurationTests.java index 4f46080b67f..bd096ab08b1 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/MicrometerTracingAutoConfigurationTests.java +++ b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/MicrometerTracingAutoConfigurationTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import java.util.List; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/NoopTracerAutoConfigurationTests.java b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/NoopTracerAutoConfigurationTests.java similarity index 97% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/NoopTracerAutoConfigurationTests.java rename to spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/NoopTracerAutoConfigurationTests.java index 688b4788e3f..91538570de4 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/NoopTracerAutoConfigurationTests.java +++ b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/NoopTracerAutoConfigurationTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import io.micrometer.tracing.Tracer; import org.junit.jupiter.api.Test; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/OnEnabledTracingConditionTests.java b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/OnEnabledTracingConditionTests.java similarity index 98% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/OnEnabledTracingConditionTests.java rename to spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/OnEnabledTracingConditionTests.java index 415c3f364f5..25e78def554 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/OnEnabledTracingConditionTests.java +++ b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/OnEnabledTracingConditionTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import java.util.Collections; import java.util.Map; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/OpenTelemetryEventPublishingContextWrapperBeansTestExecutionListenerIntegrationTests.java b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/OpenTelemetryEventPublishingContextWrapperBeansTestExecutionListenerIntegrationTests.java similarity index 90% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/OpenTelemetryEventPublishingContextWrapperBeansTestExecutionListenerIntegrationTests.java rename to spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/OpenTelemetryEventPublishingContextWrapperBeansTestExecutionListenerIntegrationTests.java index d136fe14e73..87cfe11b5e5 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/OpenTelemetryEventPublishingContextWrapperBeansTestExecutionListenerIntegrationTests.java +++ b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/OpenTelemetryEventPublishingContextWrapperBeansTestExecutionListenerIntegrationTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import java.lang.reflect.Method; import java.util.List; @@ -23,8 +23,8 @@ import java.util.function.Function; import io.opentelemetry.context.ContextStorage; import org.junit.jupiter.api.Test; -import org.springframework.boot.actuate.autoconfigure.tracing.OpenTelemetryEventPublisherBeansApplicationListener.Wrapper.Storage; import org.springframework.boot.testsupport.classpath.ForkedClassPath; +import org.springframework.boot.tracing.autoconfigure.OpenTelemetryEventPublisherBeansApplicationListener.Wrapper.Storage; import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.Mockito.mock; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/OpenTelemetryTracingAutoConfigurationTests.java b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/OpenTelemetryTracingAutoConfigurationTests.java similarity index 98% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/OpenTelemetryTracingAutoConfigurationTests.java rename to spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/OpenTelemetryTracingAutoConfigurationTests.java index 348696644a9..8a93cb01109 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/OpenTelemetryTracingAutoConfigurationTests.java +++ b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/OpenTelemetryTracingAutoConfigurationTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import java.time.Duration; import java.util.ArrayList; @@ -61,7 +61,6 @@ import org.junit.jupiter.params.provider.ValueSource; import org.mockito.Mockito; import org.springframework.boot.autoconfigure.AutoConfigurations; -import org.springframework.boot.context.annotation.Configurations; import org.springframework.boot.observation.autoconfigure.ObservationAutoConfiguration; import org.springframework.boot.test.context.FilteredClassLoader; import org.springframework.boot.test.context.runner.ApplicationContextRunner; @@ -381,13 +380,6 @@ class OpenTelemetryTracingAutoConfigurationTests { }); } - @Test - @SuppressWarnings("removal") - void shouldUseReplacementForDeprecatedVersion() { - Class[] classes = Configurations.getClasses(AutoConfigurations.of(OpenTelemetryAutoConfiguration.class)); - assertThat(classes).containsExactly(OpenTelemetryTracingAutoConfiguration.class); - } - private void initializeOpenTelemetry(ConfigurableApplicationContext context) { context.addApplicationListener(new OpenTelemetryEventPublisherBeansApplicationListener()); Span.current(); diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/SpanExportersTests.java b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/SpanExportersTests.java similarity index 96% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/SpanExportersTests.java rename to spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/SpanExportersTests.java index cbc76a556bf..ff622a615e6 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/SpanExportersTests.java +++ b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/SpanExportersTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import java.util.List; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/SpanProcessorsTests.java b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/SpanProcessorsTests.java similarity index 96% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/SpanProcessorsTests.java rename to spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/SpanProcessorsTests.java index 5a25bb8f9da..219fa192588 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/SpanProcessorsTests.java +++ b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/SpanProcessorsTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import java.util.List; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/TracingAndMeterObservationHandlerGroupTests.java b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/TracingAndMeterObservationHandlerGroupTests.java similarity index 98% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/TracingAndMeterObservationHandlerGroupTests.java rename to spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/TracingAndMeterObservationHandlerGroupTests.java index d30426e69e6..180ccd8882b 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/TracingAndMeterObservationHandlerGroupTests.java +++ b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/TracingAndMeterObservationHandlerGroupTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import java.util.ArrayList; import java.util.Collections; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/TracingPropertiesTests.java b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/TracingPropertiesTests.java similarity index 97% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/TracingPropertiesTests.java rename to spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/TracingPropertiesTests.java index ab0abe4ca13..a873c97582d 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/TracingPropertiesTests.java +++ b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/TracingPropertiesTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing; +package org.springframework.boot.tracing.autoconfigure; import java.util.List; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpTracingAutoConfigurationIntegrationTests.java b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/otlp/OtlpTracingAutoConfigurationIntegrationTests.java similarity index 95% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpTracingAutoConfigurationIntegrationTests.java rename to spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/otlp/OtlpTracingAutoConfigurationIntegrationTests.java index abae9c9600a..7d06a869d78 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpTracingAutoConfigurationIntegrationTests.java +++ b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/otlp/OtlpTracingAutoConfigurationIntegrationTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing.otlp; +package org.springframework.boot.tracing.autoconfigure.otlp; import java.io.InputStream; import java.nio.charset.StandardCharsets; @@ -46,13 +46,13 @@ import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import org.springframework.boot.actuate.autoconfigure.tracing.MicrometerTracingAutoConfiguration; -import org.springframework.boot.actuate.autoconfigure.tracing.OpenTelemetryTracingAutoConfiguration; -import org.springframework.boot.actuate.autoconfigure.tracing.otlp.OtlpTracingAutoConfigurationIntegrationTests.MockGrpcServer.RecordedGrpcRequest; import org.springframework.boot.autoconfigure.AutoConfigurations; import org.springframework.boot.observation.autoconfigure.ObservationAutoConfiguration; import org.springframework.boot.opentelemetry.autoconfigure.OpenTelemetrySdkAutoConfiguration; import org.springframework.boot.test.context.runner.ApplicationContextRunner; +import org.springframework.boot.tracing.autoconfigure.MicrometerTracingAutoConfiguration; +import org.springframework.boot.tracing.autoconfigure.OpenTelemetryTracingAutoConfiguration; +import org.springframework.boot.tracing.autoconfigure.otlp.OtlpTracingAutoConfigurationIntegrationTests.MockGrpcServer.RecordedGrpcRequest; import static org.assertj.core.api.Assertions.assertThat; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpTracingAutoConfigurationTests.java b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/otlp/OtlpTracingAutoConfigurationTests.java similarity index 98% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpTracingAutoConfigurationTests.java rename to spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/otlp/OtlpTracingAutoConfigurationTests.java index 247e508489a..05e7cdb6f5e 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/otlp/OtlpTracingAutoConfigurationTests.java +++ b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/otlp/OtlpTracingAutoConfigurationTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing.otlp; +package org.springframework.boot.tracing.autoconfigure.otlp; import java.time.Duration; import java.util.List; @@ -29,10 +29,10 @@ import okhttp3.HttpUrl; import org.assertj.core.api.InstanceOfAssertFactories; import org.junit.jupiter.api.Test; -import org.springframework.boot.actuate.autoconfigure.tracing.otlp.OtlpTracingConfigurations.ConnectionDetails.PropertiesOtlpTracingConnectionDetails; import org.springframework.boot.autoconfigure.AutoConfigurations; import org.springframework.boot.test.context.FilteredClassLoader; import org.springframework.boot.test.context.runner.ApplicationContextRunner; +import org.springframework.boot.tracing.autoconfigure.otlp.OtlpTracingConfigurations.ConnectionDetails.PropertiesOtlpTracingConnectionDetails; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/prometheus/LazyTracingSpanContextTests.java b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/prometheus/LazyTracingSpanContextTests.java similarity index 95% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/prometheus/LazyTracingSpanContextTests.java rename to spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/prometheus/LazyTracingSpanContextTests.java index 8246025664a..d2f53dc59a6 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/prometheus/LazyTracingSpanContextTests.java +++ b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/prometheus/LazyTracingSpanContextTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing.prometheus; +package org.springframework.boot.tracing.autoconfigure.prometheus; import io.micrometer.tracing.Span; import io.micrometer.tracing.TraceContext; @@ -23,7 +23,7 @@ import org.junit.jupiter.api.Test; import org.springframework.beans.BeansException; import org.springframework.beans.factory.ObjectProvider; -import org.springframework.boot.actuate.autoconfigure.tracing.prometheus.PrometheusExemplarsAutoConfiguration.LazyTracingSpanContext; +import org.springframework.boot.tracing.autoconfigure.prometheus.PrometheusExemplarsAutoConfiguration.LazyTracingSpanContext; import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.BDDMockito.given; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/prometheus/PrometheusExemplarsAutoConfigurationTests.java b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/prometheus/PrometheusExemplarsAutoConfigurationTests.java similarity index 96% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/prometheus/PrometheusExemplarsAutoConfigurationTests.java rename to spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/prometheus/PrometheusExemplarsAutoConfigurationTests.java index 97551fd5d1f..c3f542dee35 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/prometheus/PrometheusExemplarsAutoConfigurationTests.java +++ b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/prometheus/PrometheusExemplarsAutoConfigurationTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing.prometheus; +package org.springframework.boot.tracing.autoconfigure.prometheus; import java.util.Optional; import java.util.regex.Matcher; @@ -31,14 +31,14 @@ import io.prometheus.metrics.expositionformats.OpenMetricsTextFormatWriter; import io.prometheus.metrics.tracer.common.SpanContext; import org.junit.jupiter.api.Test; -import org.springframework.boot.actuate.autoconfigure.tracing.BraveAutoConfiguration; -import org.springframework.boot.actuate.autoconfigure.tracing.MicrometerTracingAutoConfiguration; import org.springframework.boot.autoconfigure.AutoConfigurations; import org.springframework.boot.metrics.autoconfigure.MetricsAutoConfiguration; import org.springframework.boot.metrics.autoconfigure.export.prometheus.PrometheusMetricsExportAutoConfiguration; import org.springframework.boot.observation.autoconfigure.ObservationAutoConfiguration; import org.springframework.boot.test.context.FilteredClassLoader; import org.springframework.boot.test.context.runner.ApplicationContextRunner; +import org.springframework.boot.tracing.autoconfigure.BraveAutoConfiguration; +import org.springframework.boot.tracing.autoconfigure.MicrometerTracingAutoConfiguration; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.util.StringUtils; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/zipkin/DefaultEncodingConfiguration.java b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/zipkin/DefaultEncodingConfiguration.java similarity index 94% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/zipkin/DefaultEncodingConfiguration.java rename to spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/zipkin/DefaultEncodingConfiguration.java index 4451359eb62..dec77ece27b 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/zipkin/DefaultEncodingConfiguration.java +++ b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/zipkin/DefaultEncodingConfiguration.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing.zipkin; +package org.springframework.boot.tracing.autoconfigure.zipkin; import zipkin2.reporter.Encoding; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/zipkin/NoopSender.java b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/zipkin/NoopSender.java similarity index 93% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/zipkin/NoopSender.java rename to spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/zipkin/NoopSender.java index 5031fb37e4b..fe88e69e001 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/zipkin/NoopSender.java +++ b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/zipkin/NoopSender.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing.zipkin; +package org.springframework.boot.tracing.autoconfigure.zipkin; import java.io.IOException; import java.util.List; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/zipkin/ZipkinConfigurationsBraveConfigurationTests.java b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/zipkin/ZipkinConfigurationsBraveConfigurationTests.java similarity index 97% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/zipkin/ZipkinConfigurationsBraveConfigurationTests.java rename to spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/zipkin/ZipkinConfigurationsBraveConfigurationTests.java index 945fc1793fe..8d200c0d71e 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/zipkin/ZipkinConfigurationsBraveConfigurationTests.java +++ b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/zipkin/ZipkinConfigurationsBraveConfigurationTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing.zipkin; +package org.springframework.boot.tracing.autoconfigure.zipkin; import java.nio.charset.StandardCharsets; @@ -28,10 +28,10 @@ import zipkin2.reporter.BytesMessageSender; import zipkin2.reporter.Encoding; import zipkin2.reporter.brave.AsyncZipkinSpanHandler; -import org.springframework.boot.actuate.autoconfigure.tracing.zipkin.ZipkinTracingAutoConfiguration.BraveConfiguration; import org.springframework.boot.autoconfigure.AutoConfigurations; import org.springframework.boot.test.context.FilteredClassLoader; import org.springframework.boot.test.context.runner.ApplicationContextRunner; +import org.springframework.boot.tracing.autoconfigure.zipkin.ZipkinTracingAutoConfiguration.BraveConfiguration; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/zipkin/ZipkinConfigurationsOpenTelemetryConfigurationTests.java b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/zipkin/ZipkinConfigurationsOpenTelemetryConfigurationTests.java similarity index 96% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/zipkin/ZipkinConfigurationsOpenTelemetryConfigurationTests.java rename to spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/zipkin/ZipkinConfigurationsOpenTelemetryConfigurationTests.java index 6f036de35a5..ee30bbdb62b 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/tracing/zipkin/ZipkinConfigurationsOpenTelemetryConfigurationTests.java +++ b/spring-boot-project/spring-boot-tracing/src/test/java/org/springframework/boot/tracing/autoconfigure/zipkin/ZipkinConfigurationsOpenTelemetryConfigurationTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.tracing.zipkin; +package org.springframework.boot.tracing.autoconfigure.zipkin; import io.opentelemetry.exporter.zipkin.ZipkinSpanExporter; import org.junit.jupiter.api.Test; @@ -23,10 +23,10 @@ import zipkin2.reporter.BytesEncoder; import zipkin2.reporter.BytesMessageSender; import zipkin2.reporter.Encoding; -import org.springframework.boot.actuate.autoconfigure.tracing.zipkin.ZipkinTracingAutoConfiguration.OpenTelemetryConfiguration; import org.springframework.boot.autoconfigure.AutoConfigurations; import org.springframework.boot.test.context.FilteredClassLoader; import org.springframework.boot.test.context.runner.ApplicationContextRunner; +import org.springframework.boot.tracing.autoconfigure.zipkin.ZipkinTracingAutoConfiguration.OpenTelemetryConfiguration; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; diff --git a/src/checkstyle/import-control.xml b/src/checkstyle/import-control.xml index 6f0aabad65d..8ed1b619130 100644 --- a/src/checkstyle/import-control.xml +++ b/src/checkstyle/import-control.xml @@ -65,19 +65,19 @@ + + + + - - - - @@ -100,9 +100,6 @@ - - -