Commit Graph

1148 Commits

Author SHA1 Message Date
Andy Wilkinson bf6f36a783 Apply any root URI to RestTemplate metric's URI tag
Previously, a root URI configured via RestTemplateBuilder's rootUri
method and RootUriTemplateHandler was not taken into account when
generated the URI tag for RestTemplate request metrics.

This commit updates MetricsClientHttpRequestInterceptor to be aware
of RootUriTemplateHandler and capture the URI template once the
root URI has been applied.

Fixes gh-25744
2021-03-23 13:05:54 +00:00
Stephane Nicoll 6840440220 Merge branch '2.3.x' into 2.4.x
Closes gh-25573
2021-03-10 15:15:21 +01:00
Stephane Nicoll f38e863fbc Properly subscribe to CloseableConnectionFactory#close
Closes gh-25565
2021-03-10 15:03:27 +01:00
Stephane Nicoll 0bc03c7141 Associate application classloader to auto-configured Hazelcast instance
Closes gh-24836
2021-02-15 10:08:23 +01:00
Andy Wilkinson 788a42d694 Merge branch '2.3.x' into 2.4.x
See gh-25076
2021-02-02 15:12:27 +00:00
Andy Wilkinson 67479b6380 Add junit-platform-launcher dependency by convention
Closes gh-25074
2021-02-02 13:03:21 +00:00
Phillip Webb d06407ec0a Update copyright year of changed files 2021-01-26 19:06:14 -08:00
Phillip Webb d95d7a0245 Update code for Spring Framework 5.3.4
See gh-24998
2021-01-26 17:35:54 -08:00
Andy Wilkinson 3ad2832cb2 Fix pattern extraction when MVC is using a PathPatternParser
Fixes gh-24874
2021-01-19 10:34:11 +00:00
Stephane Nicoll 59b01324ae Merge branch '2.3.x' into 2.4.x
Closes gh-24872
2021-01-18 17:08:36 +01:00
Stephane Nicoll 1ad5a3fe2e Update copyright of changed file
See gh-24753
2021-01-18 17:01:31 +01:00
izeye ddfa1e632b Make MetricsClientHttpRequestInterceptor defensive against metrics recoding failures
See gh-24753
2021-01-18 17:00:26 +01:00
Phillip Webb 26f143b8d3 Support @Name annotation on /actuator/configprops
Update `ConfigurationPropertiesReportEndpoint` so that supports
constructor parameters annotated with `@Name`.

Fixes gh-24713
2021-01-12 17:38:17 -08:00
Phillip Webb ac4243d615 Merge branch '2.3.x' into 2.4.x
Closes gh-24672
2021-01-06 12:33:53 -08:00
Phillip Webb 52e47c4275 Fix test for JSR-350 @Nonnull
Closes gh-24647
2021-01-06 12:33:25 -08:00
Phillip Webb 2b497b6aff Merge branch '2.3.x' into 2.4.x
Closes gh-24670
2021-01-06 12:23:45 -08:00
Phillip Webb 848ed65f5b Add test for JSR-350 @Nonnull
Closes gh-24647
2021-01-06 12:04:58 -08:00
Phillip Webb ab8080353e Merge branch '2.3.x' into 2.4.x
Closes gh-24654
2021-01-05 14:08:41 -08:00
Phillip Webb 2ad9a47d08 Support JSR-305 annotations on endpoint methods
Update `OperationMethodParameter` to additionally support JSR-305 based
`@Nullable` annotations.

Closes gh-24647
2021-01-05 14:07:22 -08:00
Phillip Webb 72d36e0c07 Update copyright year of changed files 2020-12-10 10:46:04 -08:00
Stephane Nicoll 105cf591bf Merge branch '2.3.x'
See gh-24418
2020-12-10 13:52:49 +01:00
Stephane Nicoll ab99de4349 Polish
See gh-24418
2020-12-10 13:52:11 +01:00
Stephane Nicoll 0d472d6f74 Start building against Spring Data 2020.0.2 snapshots
See gh-24284
2020-12-09 14:16:47 +01:00
Phillip Webb 30c27274e2 Merge branch '2.3.x'
Closes gh-24339
2020-12-04 18:31:55 -08:00
Phillip Webb 5f351a6983 Merge branch '2.2.x' into 2.3.x
Closes gh-24338
2020-12-04 18:21:57 -08:00
Phillip Webb d8a05090b3 Fix checkstyle BDD Mockito violations
See gh-24337
2020-12-04 18:06:54 -08:00
Phillip Webb 837fc83527 Fix checkstyle header violations
See gh-24337
2020-12-04 18:05:53 -08:00
dreis2211 0389a07f7c Remove deprecated code in EndpointDiscoverer
See gh-24317
2020-12-03 16:59:29 -08:00
Scott Frederick 01478a25b4 Handle wrapper types in Env actuator
This commit modifies the actuator `EnvironmentEndpoint` to allow
primitive wrapper types to be serialized in the response data
structure.

Fixes gh-24307
2020-12-01 15:12:13 -06:00
Stephane Nicoll b1678ee6ad Merge branch '2.3.x'
Closes gh-24251
2020-11-25 14:36:16 +01:00
Stephane Nicoll 9b992af34b Merge branch '2.2.x' into 2.3.x
Closes gh-24250
2020-11-25 14:31:30 +01:00
Stephane Nicoll d506f0c73e Polish "Reduce redis health indicator info command result size"
See gh-24208
2020-11-25 14:27:07 +01:00
xJoeWoo 99cc3f4bfc Reduce redis health indicator info command result size
See gh-24208
2020-11-25 14:23:57 +01:00
Andy Wilkinson 11c81ad245 Merge branch '2.3.x'
Closes gh-24223
2020-11-20 11:48:51 +00:00
Andy Wilkinson 7efa1e47aa Merge branch '2.2.x' into 2.3.x
Closes gh-24222
2020-11-20 11:48:25 +00:00
Andy Wilkinson 12f2529be5 Allow actuator endpoint to have responses with custom HTTP statuses
Fixes gh-24123
2020-11-20 11:38:31 +00:00
Stephane Nicoll e708667fc0 Merge branch '2.3.x'
Closes gh-24194
2020-11-18 10:09:23 +01:00
Stephane Nicoll 76912d1952 Merge branch '2.2.x' into 2.3.x
Closes gh-24193
2020-11-18 10:09:03 +01:00
Stephane Nicoll d3440880c4 Polish "Avoid unnecessary pattern compilation in WebFluxTags"
See gh-24147
2020-11-18 09:58:03 +01:00
Peter Paul Bakker b22bb7ea04 Avoid unnecessary pattern compilation in WebFluxTags
See gh-24147
2020-11-18 09:58:03 +01:00
dreis2211 5ef6e09c64 Fix deprecation warnings in javadoc comments
See gh-24120
2020-11-11 20:09:23 +00:00
Phillip Webb b0c2687aa9 Update copyright year of changed files 2020-10-29 09:07:42 -07:00
Scott Frederick 1a3f810cd8 Prevent serialization exception from Env actuator
When `EnvironmentEndpoint` is building a response to return to the
web infrastructure, it creates a data structure containing all
property values from all property sources. Prior to this commit, it
was possible for the response data structure to contain property
values that were not serializable to JSON by Jackson, which would
cause an exception to be thrown by the web infrastructure. This
commit ensures the data structure is serializable to JSON by
ensuring property values are primitives or Strings, and returning
a placeholder value if a property value is of any other type.

Fixes gh-23805
2020-10-26 14:26:41 -05:00
Andy Wilkinson 7df18d9a91 Polish 2020-10-23 15:05:58 +01:00
Andy Wilkinson 2673bc00fd Adapt to breaking change in Framework's RouterFunctions.Visitor
See gh-23774
2020-10-23 15:04:43 +01:00
Stephane Nicoll 34c4c3f235 Expose cache metrics for Redis
This commit adds support for Redis cache metrics. Users can opt-in for
statistics using the "spring.cache.redis.enable-statistics" property.

Closes gh-22701
2020-10-09 09:03:23 +02:00
Scott Frederick b59e0bd3a6 Replace deprecated API in ElasticsearchReactiveHealthIndicator
Fixes gh-23537
2020-10-08 14:26:30 -05:00
Stephane Nicoll 35d41e4ae2 Remove code deprecated in Spring Boot 2.2
Closes gh-22034
2020-10-06 08:17:10 +02:00
dreis2211 ecee9c0f9b Avoid unnecessary explicit initialization of Atomics
Constructor calls like new AtomicInteger(0) cause a volatile write that
can be saved in cases where the constructor parameter is the default
value.

See gh-23575
2020-10-02 16:43:34 +02:00
Stephane Nicoll 6f08e9709e Polish "Improve Cassandra health indicator with more robust mechanism"
See gh-23041
2020-10-02 16:11:31 +02:00
tomekl007 8e5a041bb4 Improve Cassandra health indicator with more robust mechanism
See gh-23041
2020-10-02 15:46:48 +02:00
Madhura Bhave 7c22e71753 Polish "Deprecate EmbeddedDatabaseConnection#HSQL"
See gh-23565
2020-10-01 16:56:48 -07:00
Stephane Nicoll 366fec33d0 Adapt to API change in Spring Framework 5.3.0 snapshots
See gh-23534
2020-09-30 13:46:57 +02:00
Andy Wilkinson ad6de10f14 Remove use of deprecated SDR API when describing request mappings
Closes gh-22654
2020-09-28 11:08:24 +01:00
Stephane Nicoll 4009acf025 Add support for Hazelcast
This commit upgrades to Hazelcast 4.0.3, yet keeping compatibility with
Hazelcast 3.x.

Closes gh-20856
Closes gh-23475
2020-09-24 15:57:07 +02:00
Phillip Webb 363d35a0ac Merge branch '2.2.x' into 2.3.x
Closes gh-23444
2020-09-21 23:20:10 -07:00
Phillip Webb b443d22c59 Merge branch '2.1.x' into 2.2.x
Closes gh-23443
2020-09-21 23:19:41 -07:00
Phillip Webb cc442c5c0d Make HandlerFunctionDescription JDK 15 compatible
Update `HandlerFunctionDescription` so that it will work with JDK 15.

Closes gh-23442
2020-09-21 23:18:02 -07:00
Phillip Webb c284edde67 Update copyright year of changed files 2020-09-17 00:31:01 -07:00
Brian Clozel 20eb8d0fc2 Merge branch '2.3.x'
Closes gh-23253
2020-09-11 11:45:23 +02:00
Brian Clozel 62cb87bd95 Merge branch '2.2.x' into 2.3.x
Closes gh-23252
2020-09-11 11:42:32 +02:00
David Good 775f0fa861 Improve sanitization for list of URI types
Prior to this commit, Actuator would sanitize properties values when
serializing them on the dedicated endpoint. Keys like "password" or
"secret" are entirely sanitized, but other keys like "uri" or "address"
are considered as URI types and only the password part of the user info
is sanitized.

This commit fixes the sanitization process where lists of such URI types
would not match the first entries of the list since they're starting
with `'['`. This commit improves the regexp matching process to sanitize
all URIs within a collection.

The documentation is also updated to better underline the processing
difference between complete sanitization and selective sanitization for
URIs.

Fixes gh-23037
2020-09-11 11:34:38 +02:00
Brian Clozel d2e67ab84d Align WebClient uri metric tag with RestTemplate
Prior to this commit, the `WebClientExchangeTags`, when given a request
without a string template, would only get the request path to create the
"uri" tag for metrics. This is inconsistent with the
`RestTemplateExchangeTags`, which are taking the full request URI minus
the protocol+host+port.

This commit aligns the `WebClientExchangeTags` behavior in this case.

Closes gh-22832
2020-09-09 13:33:48 +02:00
Stephane Nicoll b9b7393053 Deprecate Cassandra health indicators that rely on Spring Data
With the introduction of health indicators that only require the
CqlSession, this commit deprecates the health indicators that require
Spring Data since the latter build on top of the former.

Closes gh-23226
2020-09-08 14:39:37 +02:00
Brian Clozel 1d73d4eda7 Remove Elasticsearch RestClient auto-configuration
Prior to this commit, Spring Boot would auto-configure both
Elasticsearch variants: `RestClient` ("Low Level" client) and
`RestHighLevelClient` ("High Level" client).
Since one can be derived from the other, this would create complex and
unclear situations depending on what developers provided with their
configuration.

`RestHighLevelClient` is mostly for actual use of the Elasticsearch API,
with support for specific methods and (de)serialization. On the other
hand, `RestClient` is merely wrapping the Apache HTTP client for
load-balancing support and low level HTTP features.

This commit completely removes the support for `RestClient` in Spring
Boot and now requires the presence of the
`org.elasticsearch.client:elasticsearch-rest-high-level-client`
dependency for REST client support with Elasticsearch.

Closes gh-22358
2020-09-08 10:17:27 +02:00
Brian Clozel 8dcb3312f2 Switch startup actuator endpoint to using HTTP POST
Closes gh-23213
2020-09-07 20:32:26 +02:00
Brian Clozel 676e1809fb Add startup Actuator endpoint
This commit builds on top of gh-22603 and exposes data collected by the
`BufferingApplicationStartup` on a dedicated `"/startup"` Actuator
endpoint.

Closes gh-23213
2020-09-07 18:04:48 +02:00
Pradipta Sarma 2627bf896e Removed some redundant 'else's using early return
See gh-22528
2020-09-01 13:35:17 +02:00
Andy Wilkinson 72c6435078 Polish
See gh-23157
2020-09-01 12:12:16 +01:00
Stephane Nicoll f4c8668afd Merge branch '2.3.x'
Closes gh-23157
2020-09-01 11:50:40 +02:00
Stephane Nicoll 652561c274 Review checkstyle rule to prevent non BDD mockito imports
Closes gh-20902
2020-09-01 11:50:14 +02:00
Phillip Webb cf8776b83c Expose originParents on actuator endpoints
Update `ConfigurationPropertiesReportEndpoint` and `EnvironmentEndpoint`
so that they expose `originParents` when they are available.

Closes gh-23018
2020-08-27 22:15:51 -07:00
Andy Wilkinson 6cfd2e3a33 Merge branch '2.3.x'
Closes gh-23095
2020-08-26 14:49:37 +01:00
Andy Wilkinson c74e0be0d2 Merge branch '2.2.x' into 2.3.x
Closes gh-23094
2020-08-26 14:49:12 +01:00
Andy Wilkinson 04540887af Widen timeout and delay to accommodate Windows' imprecision under load
Closes gh-23093
2020-08-26 14:48:33 +01:00
Johnny Lim e48af31ced Polish
See gh-23081
2020-08-26 10:47:45 +02:00
Phillip Webb ea8762c484 Update copyright year of changed files 2020-08-18 15:40:05 -07:00
Andy Wilkinson e358144b2e Polish "Exclude cookie headers by default from HTTP traces"
See gh-22829
2020-08-11 15:58:55 +01:00
Emily Tsanova 5ff515727d Exclude cookie headers by default from HTTP traces
See gh-22829
2020-08-11 15:58:55 +01:00
Andy Wilkinson 969dd35e45 Upgrade to Mockito 3.4.6
Closes gh-22838
2020-08-10 15:22:03 +01:00
Stephane Nicoll f2a52a87ec Merge branch '2.3.x'
Closes gh-22850
2020-08-10 16:05:47 +02:00
Stephane Nicoll 980ddcffd0 Merge branch '2.2.x' into 2.3.x
Closes gh-22849
2020-08-10 16:05:13 +02:00
Stephane Nicoll dd9c9fd171 Polish "Migrate legacy endpoint that have a dash in their id"
See gh-21615
2020-08-10 14:53:18 +02:00
Gabriele Bianchet-David 0f9f10f97e Migrate legacy endpoint that have a dash in their id
See gh-21615
2020-08-10 14:42:46 +02:00
Stephane Nicoll 13260eab46 Merge branch '2.3.x'
Closes gh-22846
2020-08-10 14:08:38 +02:00
ksmilek 5cb1b41355 Fix wrong reference in `ReadinessStateHealthIndicator` javadoc
See gh-22760
2020-08-10 14:03:46 +02:00
Phillip Webb f7f4ff0ac9 Update copyright year of changed files 2020-08-06 14:35:43 -07:00
Stephane Nicoll dac63fc3e5 Polish 2020-08-06 17:35:01 +02:00
Brian Clozel fb1234a22c Upgrade to Reactor 2020.0.0 SNAPSHOTs
See gh-22667
2020-08-04 13:26:47 +02:00
Andy Wilkinson 8b40427402 Merge branch '2.3.x'
Closes gh-22687
2020-07-31 12:24:55 +01:00
Andy Wilkinson 7d25948ab5 Merge branch '2.2.x' into 2.3.x
Closes gh-22686
2020-07-31 12:24:34 +01:00
Andy Wilkinson 59b1df4548 Polish "Look in correct context when finding Liquibase beans"
See gh-22681
2020-07-31 12:20:58 +01:00
biergit 62156810cf Look in correct context when finding Liquibase beans
See gh-22681
2020-07-31 12:20:09 +01:00
Stephane Nicoll 5777aa5615 Start building against Spring Data 2020.0.0 snapshots
See gh-22647
2020-07-29 18:58:08 +02:00
Stephane Nicoll c6fde1e4d5 Polish "Update Neo4j health check to use the Neo4j Driver"
See gh-22302
2020-07-28 16:36:58 +02:00
Gerrit Meier c5a7815e42 Update Neo4j health check to use the Neo4j Driver
This commit replaces the Neo4j-OGM based health checks with one based on
the Neo4j Java driver. A Reactive variant is also added in this commit.

See gh-22302
2020-07-28 16:31:35 +02:00
Stephane Nicoll 2756f5911f Merge branch '2.3.x'
Closes gh-22627
2020-07-28 16:30:12 +02:00
Stephane Nicoll 12d78b26b9 Merge branch '2.2.x' into 2.3.x
Closes gh-22626
2020-07-28 16:29:36 +02:00
Stephane Nicoll 16aa8fbc88 Fix actuator dependency on Jackson JSR 310 module
This commit harmonizes dependency declarations for Jackson in the
actuator. Both Jackson and JSR 310 are back to optional in the core
actuator module and mandatory when using the auto-configuration.

Closes gh-22624
2020-07-28 16:26:11 +02:00
Phillip Webb 3d7d9d064c Update copyright year of changed files 2020-07-22 18:50:07 -07:00