diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/observation/web/client/WebClientObservationConfiguration.java b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/observation/web/client/WebClientObservationConfiguration.java index 8d06b1d6a02..16a9aa74557 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/observation/web/client/WebClientObservationConfiguration.java +++ b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/observation/web/client/WebClientObservationConfiguration.java @@ -21,8 +21,8 @@ import io.micrometer.observation.ObservationRegistry; import org.springframework.beans.factory.ObjectProvider; import org.springframework.boot.actuate.autoconfigure.metrics.MetricsProperties; import org.springframework.boot.actuate.autoconfigure.observation.ObservationProperties; -import org.springframework.boot.actuate.metrics.web.reactive.client.ObservationWebClientCustomizer; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; +import org.springframework.boot.http.client.reactive.web.actuate.observation.ObservationWebClientCustomizer; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.reactive.function.client.ClientRequestObservationConvention; @@ -35,7 +35,7 @@ import org.springframework.web.reactive.function.client.WebClient; * @author Brian Clozel */ @Configuration(proxyBeanMethods = false) -@ConditionalOnClass(WebClient.class) +@ConditionalOnClass({ WebClient.class, ObservationWebClientCustomizer.class }) class WebClientObservationConfiguration { @Bean diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/observation/web/client/WebClientObservationConfigurationTests.java b/spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/observation/web/client/WebClientObservationConfigurationTests.java index 81b333f0ad0..9a537012ece 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/observation/web/client/WebClientObservationConfigurationTests.java +++ b/spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/observation/web/client/WebClientObservationConfigurationTests.java @@ -28,8 +28,8 @@ import reactor.core.publisher.Mono; import org.springframework.boot.actuate.autoconfigure.metrics.test.MetricsRun; import org.springframework.boot.actuate.autoconfigure.observation.ObservationAutoConfiguration; -import org.springframework.boot.actuate.metrics.web.reactive.client.ObservationWebClientCustomizer; import org.springframework.boot.autoconfigure.AutoConfigurations; +import org.springframework.boot.http.client.reactive.web.actuate.observation.ObservationWebClientCustomizer; import org.springframework.boot.http.client.reactive.web.autoconfigure.WebClientAutoConfiguration; import org.springframework.boot.test.context.assertj.AssertableApplicationContext; import org.springframework.boot.test.context.runner.ApplicationContextRunner; diff --git a/spring-boot-project/spring-boot-http-client-reactive/build.gradle b/spring-boot-project/spring-boot-http-client-reactive/build.gradle index dbe81c74e53..78fa1d5791f 100644 --- a/spring-boot-project/spring-boot-http-client-reactive/build.gradle +++ b/spring-boot-project/spring-boot-http-client-reactive/build.gradle @@ -41,6 +41,7 @@ dependencies { testImplementation(project(":spring-boot-project:spring-boot-test")) testImplementation(project(":spring-boot-project:spring-boot-tomcat")) testImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support")) + testImplementation("io.micrometer:micrometer-observation-test") testRuntimeOnly("ch.qos.logback:logback-classic") } diff --git a/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/metrics/web/reactive/client/ObservationWebClientCustomizer.java b/spring-boot-project/spring-boot-http-client-reactive/src/main/java/org/springframework/boot/http/client/reactive/web/actuate/observation/ObservationWebClientCustomizer.java similarity index 96% rename from spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/metrics/web/reactive/client/ObservationWebClientCustomizer.java rename to spring-boot-project/spring-boot-http-client-reactive/src/main/java/org/springframework/boot/http/client/reactive/web/actuate/observation/ObservationWebClientCustomizer.java index 7197e89c4bd..c227b42ccb8 100644 --- a/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/metrics/web/reactive/client/ObservationWebClientCustomizer.java +++ b/spring-boot-project/spring-boot-http-client-reactive/src/main/java/org/springframework/boot/http/client/reactive/web/actuate/observation/ObservationWebClientCustomizer.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.metrics.web.reactive.client; +package org.springframework.boot.http.client.reactive.web.actuate.observation; import io.micrometer.observation.ObservationRegistry; diff --git a/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/metrics/web/reactive/client/package-info.java b/spring-boot-project/spring-boot-http-client-reactive/src/main/java/org/springframework/boot/http/client/reactive/web/actuate/observation/package-info.java similarity index 78% rename from spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/metrics/web/reactive/client/package-info.java rename to spring-boot-project/spring-boot-http-client-reactive/src/main/java/org/springframework/boot/http/client/reactive/web/actuate/observation/package-info.java index 549eb39f8eb..918def8a905 100644 --- a/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/metrics/web/reactive/client/package-info.java +++ b/spring-boot-project/spring-boot-http-client-reactive/src/main/java/org/springframework/boot/http/client/reactive/web/actuate/observation/package-info.java @@ -15,7 +15,6 @@ */ /** - * Actuator support for {@link org.springframework.web.reactive.function.client.WebClient} - * metrics. + * Observation integration for WebClient. */ -package org.springframework.boot.actuate.metrics.web.reactive.client; +package org.springframework.boot.http.client.reactive.web.actuate.observation; diff --git a/spring-boot-project/spring-boot-actuator/src/test/java/org/springframework/boot/actuate/metrics/web/reactive/client/ObservationWebClientCustomizerTests.java b/spring-boot-project/spring-boot-http-client-reactive/src/test/java/org/springframework/boot/http/client/reactive/web/actuate/observation/ObservationWebClientCustomizerTests.java similarity index 96% rename from spring-boot-project/spring-boot-actuator/src/test/java/org/springframework/boot/actuate/metrics/web/reactive/client/ObservationWebClientCustomizerTests.java rename to spring-boot-project/spring-boot-http-client-reactive/src/test/java/org/springframework/boot/http/client/reactive/web/actuate/observation/ObservationWebClientCustomizerTests.java index e010e059cce..9703e855c3b 100644 --- a/spring-boot-project/spring-boot-actuator/src/test/java/org/springframework/boot/actuate/metrics/web/reactive/client/ObservationWebClientCustomizerTests.java +++ b/spring-boot-project/spring-boot-http-client-reactive/src/test/java/org/springframework/boot/http/client/reactive/web/actuate/observation/ObservationWebClientCustomizerTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.metrics.web.reactive.client; +package org.springframework.boot.http.client.reactive.web.actuate.observation; import io.micrometer.observation.tck.TestObservationRegistry; import org.junit.jupiter.api.Test;