Commit Graph

1620 Commits (f145ca0c3c3a5a1cdb97fdcd05e77f163eecd016)

Author SHA1 Message Date
Moritz Halbritter c5b5449a07 Fix assertions in ThreadDumpEndpointTests 2 years ago
Phillip Webb a2ac38e203 Update copyright year of changed files 2 years ago
Phillip Webb 1621cfd578 Merge branch '2.7.x' 2 years ago
Phillip Webb 232807d388 Increase block timeout 2 years ago
Krzysztof Krason cf6493f65c Simplify AssertJ assertions and also make them more readable
See gh-33653
2 years ago
Phillip Webb f588793445 Update copyright year of changed files 2 years ago
Phillip Webb e4772cf3b7 Update copyright year of changed files 2 years ago
Scott Frederick fead976952 Adapt to changes in Couchbase client
See gh-33588
2 years ago
Moritz Halbritter 08659baeba Polish away public modifier on tests 2 years ago
Moritz Halbritter 725337f976 Make fields final
Closes gh-33537
2 years ago
Phillip Webb 93f8dc76ab Fix Neo4jReactiveHealthIndicator NoSuchElementException
Update `Neo4jReactiveHealthIndicator` to ensure that `result.records()`
is called before `result.consume()`. Prior to this commit, the indicator
used `zipWith` to merge records with a summary. This worked with the
previous RxJava based driver, but fails with the Reactor based driver
due to a `NoSuchElementException: Source was empty` error.

Fixes gh-33428
2 years ago
Phillip Webb 8849f72ac5 Merge branch '2.7.x' 2 years ago
Phillip Webb 06c6dafee2 Add Neo4jReactiveHealthIndicatorIntegrationTests
Add a full integration test for `Neo4jReactiveHealthIndicator`
to ensure that it works against a real server.

See gh-33428
2 years ago
Phillip Webb 8481004420 Polish 2 years ago
Johnny Lim 6027508cf7 Polish
See gh-33108
2 years ago
Brian Clozel 932f7d705f Start building against Spring Framework 6.0.0 SNAPSHOTs
See gh-33136
2 years ago
Phillip Webb 3d2071d044 Migrate endpoints to return OperationResponseBody types
Update types returned from endpoints to implement the
`OperationResponseBody` interface. This ensures that they will be
serialized using the isolated actuator `ObjectMapper`.

See gh-20291
2 years ago
Phillip Webb 1f8493fb29 Support isolated actuator ObjectMapper
Add `OperationResponseBody` tagging interface that can be used
to trigger the use of an isolated ObjectMapper specifically for
actuator responses.

The isolated mapper is provided by an `EndpointObjectMapper`
bean which is auto-configured unless specifically disabled
by the user.

WebMVC, WebFlux and Jersey integrations have been updated
to provide a link between the `OperationResponseBody` type
and the endpoint `ObjectMapper`.

See gh-20291
2 years ago
Andy Wilkinson 3a2703e8f6 Upgrade to Jakarta Mail 2.1 and switch to Eclipse Angus RI
Closes gh-33059
Closes gh-33050
2 years ago
Andy Wilkinson b67c427259 Upgrade to Servlet 6.0 and related EE 10 specs
Co-authored-by: Phillip Webb <pwebb@vmware.com>

Closes gh-33036
Closes gh-33037
Closes gh-33038
Closes gh-33039
Closes gh-33040
Closes gh-33041
Closes gh-33042
Closes gh-33043
2 years ago
Phillip Webb 179aa987ee Unify actuator descriptor class names
Update actuator endpoints to consistently use `...Descriptor` for
JSON support classes.

Closes gh-33022
2 years ago
Andy Wilkinson 9472cb2db7 Polish 2 years ago
Andy Wilkinson edecebb641 Upgrade to Neo4j Java Driver 5.2.0
Closes gh-33008
2 years ago
Phillip Webb 9856286a2d Refine actuator httpexhanges naming
See gh-32885
2 years ago
Andy Wilkinson 29f7a596fe Polish 2 years ago
Phillip Webb 3e50836b1a Rename httptrace endpoint and related classes to httpexchanges
Rename `/actuator/httptrace` to `/actuator/httpexchanges` to better
describe its purpose and to remove confusion with distribute tracing.

This change also takes the opportunity to improve the code by making
the `HttpExchange` class (previously `HttpTrace`) fully immutable.

Closes gh-32885

Co-authored-by: Andy Wilkinson <wilkinsona@vmware.com>
2 years ago
Johnny Lim 5067aab552 Polish
See gh-32840
2 years ago
Phillip Webb a59b6cb1f3 Polish 2 years ago
Phillip Webb 4be3218cb6 Merge branch '2.7.x' 2 years ago
Phillip Webb c8676a81de Merge branch '2.6.x' into 2.7.x 2 years ago
Phillip Webb d7ac20cd6c Update copyright year of changed files 2 years ago
Andy Wilkinson 99edda735e Polish 2 years ago
Andy Wilkinson b7fb345709 Revert workaround for multiple ImportRuntimeHints
Closes gh-32830
2 years ago
Johnny Lim fc61690675 Add missing @Test to sanitizeLists()
See gh-32792
2 years ago
Sébastien Deleuze 4e131bd627 Provide a workaround to allow multiple @ImportRuntimeHints
Provide a workaround for spring-projects/spring-framework#29361 so
that multiple `@ImportRuntimeHints` can be used in a type hierarchy.

The commit should cover Actuator web endpoint use cases with the
exception of Cloud Foundry endpoints which are not possible due to
package access issues.

See gh-29361
2 years ago
Brian Clozel 685fa900f8 Auto-configure Observation instrumentation for WebFlux
Prior to this commit, Spring Boot would offer a specific Metrics
instrumentation for WebFlux applications through a `WebFilter` and
custom Tag providers.

As of Spring Framework 6.0, the Observation instrumentation is done
directly in WebFlux, also with a `WebFilter`. While this allows both
metrics and traces, some features cannot be supported in the same way
with this new infrastructure.
The former `WebFilter` has been removed and the Tagging infrastructure
deprecated in favor of custom Observation conventions. This commit
provides an adapter layer so that developers can refactor their custom
tagging solution to the convention way, during the deprecation phase,
without losing any feature.

Closes gh-32539
2 years ago
Brian Clozel 9948fc3e39 Use GraphQL Observation instrumentation
This commit migrates the existing metrics support (added in #29140) to
the new `Observation` instrumentation contributed in
spring-projects/spring-graphql#501.

We cannot have a smoother migration path here as the instrumentation
does not use the same context information for metadata extraction.

Closes gh-32794
2 years ago
Madhura Bhave ce3c933f77 Adapt to Spring Security changes
Closes gh-32604
2 years ago
Brian Clozel b2fe807d47 Move MVC metrics to Observation auto-configuration
This commit moves the entire Metrics auto-configuration for Spring MVC
to the new `Observation` API and the instrumentation contributed in
Spring Framework.

Closes gh-32538
2 years ago
Phillip Webb 07dd388b58 Merge branch '2.7.x'
Closes gh-32776
2 years ago
Phillip Webb 8dec296dfd Merge branch '2.6.x' into 2.7.x
Closes gh-32775
2 years ago
Phillip Webb de111dba5c Polish 'Add DataSize serializer for configprops endpoint'
See gh-32645
2 years ago
Guirong Hu 3b25132e38 Add DataSize serializer for configprops endpoint
See gh-32645
2 years ago
Phillip Webb e3df6c5b6f Move @ConstructorBinding annotation and support add default support
Relocate `@ConstructorBinding` from the `boot.context.properties`
package to `boot.context.properties.bind` and update the
`DefaultBindConstructorProvider` to support it.

Closes gh-32660
2 years ago
Brian Clozel 5cee828546 Fix javadoc warnings in HTTP Observation support 2 years ago
Brian Clozel cbca457eff Adapt to HTTP Observation changes in Framework
This commit adapts to the renames/package changes in the HTTP
Observation support in Spring Framework.

See spring-projects/spring-framework#29334
2 years ago
Andy Wilkinson 7852c45a77 Generate reflection hints for loggers endpoint's responses
Some of the types that are returned are hidden behind a
Map<String, Object> so the operation annotations already been marked
as reflective isn't sufficient.

This commit uses `@RegisterReflectionForBinding` to register the
types that are used as (nested) values in the response maps.

Closes gh-32486
2 years ago
Stephane Nicoll cbf24bd1cd Upgrade to Elasticsearch Client 8.4.3
Closes gh-32671
2 years ago
Johnny Lim 73fd760137 Polish HTTP client observability changes
See gh-32484
See gh-32518

Closes gh-32636
2 years ago
Brian Clozel d25fc73dae Upgrade to Neo4J Java Driver 5.0.0
Closes gh-32620
2 years ago
Andy Wilkinson 7c4e46e538 Allow thread dump endpoint to call ThreadMXBean in a native image
Closes gh-31680
2 years ago
Phillip Webb e0b67889a8 Use Stream.toList instead of Stream.collect when possible
Update code to make use of `Stream.toList()` whenever possible.

Closes gh-28177
2 years ago
Andy Wilkinson 51df7813a5 Remove code deprecated in 2.x and add since and forRemoval attributes
Closes gh-32548
Closes gh-32549
2 years ago
Brian Clozel 5b092f5d80 Polish
See gh-32518
2 years ago
Brian Clozel ceb1e5d223 Polish
See gh-32518
2 years ago
Brian Clozel 8b4a20d6cd Use Observation infrastructure for instrumenting WebClient
As of spring-projects/spring-framework#28341, `WebClient` is
instrumented directly for `Observation`.
This commit removes the custom `ExchangeFilterFunction` that previously
instrumented the client for metrics.

As a result, the relevant tag providers are now deprecated and adapted
as `ObservationConvention` for the time being.

Closes gh-32518
2 years ago
Brian Clozel eac50a8f0c Auto-configure Observation support for RestTemplate
Prior to this commit, Spring Boot would auto-configure a customizer that
instruments `RestTemplate` through a `RestTemplateBuilder`. This would
install a request interceptor that instrumented client exchanges for
producing metrics.

As of spring-projects/spring-framework#28341, the instrumentation is
done at the `RestTemplate` level directly using the `Observation` API.
The `Tag` (now `KeyValue`) extraction, observation name and
instrumentation behavior now lives in the Spring Framework project.

This commit updates the auto-configuration to switch from Boot-specific
Metrics instrumentation to a generic Observation instrumentation.
As a migration path, some configuration properties are deprecated in
favor of the new `management.observations.*` namespace.

Closes gh-32484
2 years ago
Stephane Nicoll bac1bfcd1c Merge branch '2.7.x'
Closes gh-32514
2 years ago
Stephane Nicoll eb4b0a3f3c Merge branch '2.6.x' into 2.7.x
Closes gh-32513
2 years ago
Stephane Nicoll 8f598f876b Polish "Use non-blocking API in CouchbaseReactiveHealthIndicator"
See gh-32505
2 years ago
Mico Piira f51c4c3df0 Use non-blocking API in CouchbaseReactiveHealthIndicator
See gh-32505
2 years ago
Andy Wilkinson 5cb68eab1e Remove HotSpot specifics from HeapDumper strategy interface
Closes gh-27533
2 years ago
Madhura Bhave b44a7e242c Support Mongo's Stable API in MongoHealthIndicator
Closes gh-30849
2 years ago
Stephane Nicoll 26cec61f32 Adapt to API change in Spring Framework
See https://github.com/spring-projects/spring-framework/issues/29135
2 years ago
Andy Wilkinson aafceb3868 Merge branch '2.7.x'
Closes gh-32285
2 years ago
Andy Wilkinson f17df7bf30 Merge branch '2.6.x' into 2.7.x
Closes gh-32284
2 years ago
Andy Wilkinson 23c2f73b3f Update tests to allow them to run on Java 19
Closes gh-32280
2 years ago
Phillip Webb 46be4a3f30 Merge branch '2.7.x' 2 years ago
Johnny Lim 2273191c03 Polish
See gh-32215
2 years ago
Andy Wilkinson 25e6c533d9 Polish "Add path to DiskSpaceHealthIndicator's details and log message"
See gh-31998
2 years ago
rreich 36f9230f01 Add path to DiskSpaceHealthIndicator's details and log message
See gh-31998
2 years ago
Andy Wilkinson 795ea289db Adapt to BindingReflectionHintsRegistrar moving package 2 years ago
Andy Wilkinson cf8e84d406 Adapt to BindingReflectionHintsRegistrar moving into spring-core 2 years ago
Phillip Webb 44f1949c5e Polish hint API calls 2 years ago
Madhura Bhave 47effdcade Support role-based sanitization for actuator endpoints
Closes gh-32156
2 years ago
Stephane Nicoll 24a52aa66d Annotate actuator internal infrastructure with @Reflective
This commit simplifies the registration of hints for the infrastructure
of the Actuator that is invoked via reflection.
2 years ago
Stephane Nicoll 6d2d67b0bc Merge branch '2.7.x'
Closes gh-32050
2 years ago
Vedran Pavic 0e6cf07ec9 Polish LogFileWebEndpoint
See gh-32049
2 years ago
Andy Wilkinson ba93e6c0ed Restore support for Jersey
Closes gh-28637
2 years ago
Madhura Bhave 0991bd3983 Harmonize data configuration
Any classes that rely on Spring Data being on the classpath
have been moved under a data package.

Certain configuration properties have also been updated to
accurately reflect whether Spring Data is required for the
auto-configuration to work.

Closes gh-11574
2 years ago
Johnny Lim 6a4681baf5 Polish
See gh-31948
2 years ago
Brian Clozel 38f1bc9793 Reinstate Spring for GraphQL auto-configuration
This commit adds the Spring for GraphQL auto-configuration back
into Spring Boot 3.0, now that a 1.1.0 release is scheduled with the
required baseline. This release also needs GraphQL Java 19.0 as a
baseline.

Closes gh-31809
2 years ago
Phillip Webb 22144987e9 Update copyright year of changed files 2 years ago
Phillip Webb e08c16dfd6 Polish 2 years ago
Phillip Webb b68e43f5fd Merge branch '2.7.x' 2 years ago
Phillip Webb 2382e8322b Merge branch '2.6.x' into 2.7.x 2 years ago
Phillip Webb 2709f77ab9 Collect to named contributors to `LinkedHashMap`
Update `NamedContributorsMapAdapter` to collect items to a
`LinkedHashMap` rather than a `HashMap`.

See gh-31676
2 years ago
Stephane Nicoll c413f9adbe Merge branch '2.7.x'
Closes gh-31884
2 years ago
Stephane Nicoll 53a652ec65 Merge branch '2.6.x' into 2.7.x
Closes gh-31883
2 years ago
Stephane Nicoll 9cb614c626 Migrate Hazelcast 3 sanity tests to Hazelcast 4
Closes gh-31881
2 years ago
Adrian Bob aad9c8906a Disable auto-detection in tests that start Hazelcast
This commit updates test configurations to disable auto-detection of
Hazelcast instances.

See gh-31863
2 years ago
Stephane Nicoll 782e3f75b6 Polish Hazelcast configuration
This commit updates the XSD to 4.2 and removes the "tcp-ip" network
option as it is disabled by default.

See gh-31863
2 years ago
Phillip Webb 94ca5b5b53 Merge branch '2.7.x'
Closes gh-31880
2 years ago
Phillip Webb bfc703a40d Merge branch '2.6.x' into 2.7.x
Closes gh-31879
2 years ago
Phillip Webb 59c9a9cd8a Polish "Call the value adapter during NamedContributorsMapAdapter construction"
See gh-31676
2 years ago
Guirong Hu c530f12cc3 Call the value adapter during NamedContributorsMapAdapter construction
Update `NamedContributorsMapAdapter` so that the adapter function is
called only once per entry. Prior to this commit, the adapter was called
dynamically which made `CompositeHealthContributor` behave differently
from a regular `HealthContributor`.

See gh-31676
2 years ago
Phillip Webb 7377d85096 Merge branch '2.7.x'
Closes gh-31866
2 years ago
Phillip Webb a4ef6a7c5c Merge branch '2.6.x' into 2.7.x
Closes gh-31865
2 years ago
Phillip Webb f8412847dc Update copyright year for "Fix typos in code and documentation"
See gh-31734
2 years ago
Marc Wrobel dbfc6bded4 Fix typos in code and documentation
See gh-31734
2 years ago