This commit adds support for Actuator Metrics for WebClient.
This support mirrors the current behavior for `RestTemplate`, reusing
the same metric name `"http.client.requests"` and tags.
`WebClient` is instrumented by a `MetricsWebClientFilterFunction` which
is applied by a `WebClientCustomizer`. This instrumentation happens
automatically only if you create an instance of `WebClient` using an
auto-configured `WebClient.Builder` bean.
This infrastructure is reusing de facto the `MeterFilter` that has been
added for `RestTemplate` in order to limit the "uri" tag cardinality.
Closes gh-12228
NettyReactiveWebServerFactoryTests.portInUseExceptionIsThrownWhenPortIsAlreadyInUse
started failing on CI following this change in reactor netty:
e6634c27f6
Instead of a `BindException`, a `NativeIoException` is thrown. Since that Exception
is for internal use only, we throw a generic `WebServerException`
instead of the `PortInUseException`.
This commit excludes `com.rabbitmq:http-client` from `spring-rabbit` as
the former brings spring webflux for an optional feature. This also
prevents Spring Boot to consider that a web server should be started as
all the necessary pieces are unexpectedly present.
Closes gh-12853
This commit improves the couchbase auto-configuration so that it is
easier to customize the way the connection to the couchbase server is
initiated.
See gh-11146
While being able to exclude all artifacts of a given group is a handy
feature, excluding all artifacts with a given artifactId does not make
much sense as it should refer to a single artifact anyway. Also the
general "exclude" mechanism is meant to do the exact same thing.
Closes gh-12885