850 Commits

Author SHA1 Message Date
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
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
Andy Wilkinson
04540887af Widen timeout and delay to accommodate Windows' imprecision under load
Closes gh-23093
2020-08-26 14:48:33 +01: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
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
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
b5e70157dc Update copyright year of changed files 2020-07-22 17:01:36 -07:00
Phillip Webb
51a26a4d5a Polish 2020-07-22 17:01:19 -07:00
Andy Wilkinson
21f733b89b Merge branch '2.1.x' into 2.2.x
Closes gh-22409
2020-07-20 13:49:53 +01:00
Andy Wilkinson
179d2c79d6 Avoid trivialising what the reader's learning about
Closes gh-22408
2020-07-20 13:45:41 +01:00
Andy Wilkinson
3922fb7164 Polish "Avoid NPE when binder is closed before started event"
See gh-22141
2020-06-30 13:26:30 +01:00
im47cn
b34c268547 Avoid NPE when binder is closed before started event
Previously, if TomcatMetricsBinder destroy() was called before it had
received an ApplicationStartedEvent an NPE would be thrown due to
TomcatMetrics being null. This NPE was then caught and logged at
warning level by the disposable bean adapter.

This prevents the NPE by checking that the TomcatMetrics instance is
null before calling close() on it.

See gh-22141
2020-06-30 13:23:58 +01:00
Andy Wilkinson
5475f10657 Remove WebClient's in-memory buffer size limit for endpoint tests
Previously, the thread dump endpoint's response could exceed
WebClient's in-memory buffer limt when there were a large number of
threads or the threads had large stacks.

This commit disables WebClient's in-memory buffer size limit so that
the test passing is not dependent on the number of active threads and
their stack sizes.

Closes gh-22101
2020-06-25 10:21:43 +01:00
Scott Frederick
b27303704f Fix RedisReactiveHealthIndicator in clustered configuration
Prior to Spring Data Redis version 2.2.8, the contents of the
Properties object returned from the
ReactiveRedisConnection.ServerCommands.info API were the same
for clustered and non-clustered Redis configurations, containing a set
of key/value pairs. This allowed ReactiveRedisHealthIndicator to get
a version property using a well-known key. Starting with Spring Data
Redis 2.2.8, the info property keys contain a host:port prefix in a
clustered Redis configuration. This prevented
ReactiveRedisHealthIndicator from getting the version property as
before and resulted in the health always being reported as DOWN.

This commit adjusts ReactiveRedisHealthIndicator to detect the
clustered configuration from Spring Data Redis and find the version
property for one of the reported cluster nodes.

Fixes gh-22061
2020-06-24 13:34:22 -05:00
Stephane Nicoll
ec8c1e3860 Update copyright year of changed files
See gh-21906
2020-06-15 08:39:51 +02:00
lltx
de897b9b72 Fix wrong property reference to keys-to-sanitize in Javadoc
See gh-21906
2020-06-15 08:39:51 +02:00
Phillip Webb
0a05b4c9fd Update copyright year of changed files 2020-06-05 15:36:09 -07:00
Stephane Nicoll
afcb5d54b2 Polish "Fix uri tag for empty path"
See gh-21392
2020-05-25 13:51:40 +02:00
Jon Schneider
f78f2d57e1 Fix uri tag for empty path
See gh-21392
2020-05-25 13:41:19 +02:00
Phillip Webb
49a21ded7a Create endpoint beans as late as possible
Update `EndpointDiscoverer` so that `@Endpoint` and `@EndpointExtension`
beans are created as late as possible.

Prior to this commit, endpoint beans and extension beans would be
created during the discovery phase which could cause early bean
initialization. The problem was especially nasty when using an embedded
servlet container since `ServletEndpointRegistrar` is loaded as the
container is initialized. This would trigger discovery and load all
endpoint beans, including the health endpoint, and all health indicator
beans.

Fixes gh-20714
2020-05-13 19:10:54 -07:00
Phillip Webb
102729b5e1 Merge branch '2.1.x' into 2.2.x
Closes gh-21082
2020-04-22 11:58:39 -07:00
Phillip Webb
b3d33754a5 Remove outdated FIXMEs from tests
Closes gh-19782
2020-04-22 11:55:35 -07:00
Stephane Nicoll
ac56db703e Merge branch '2.1.x' into 2.2.x
Closes gh-20725
2020-03-30 13:02:58 +02:00
Stephane Nicoll
88b7b78344 Make sure that cassandra health check reports version
Closes gh-20719
2020-03-30 12:58:41 +02:00
Stephane Nicoll
05f10819c4 Merge branch '2.1.x' into 2.2.x
Closes gh-20717
2020-03-29 18:39:17 +02:00
Stephane Nicoll
c9e32aaa47 Use LOCAL_ONE when querying system.local
This commit is a follow-up of gh-20709 to apply the same consistency
level to the Cassandra reactive health indicator.

Closes gh-20713
2020-03-29 18:37:30 +02:00
Stephane Nicoll
a9a6df2ed4 Merge branch '2.1.x' into 2.2.x
Closes gh-20711
2020-03-28 16:05:36 +01:00
Stephane Nicoll
63be1678de Polish "Use LOCAL_ONE when querying system.local"
See gh-20709
2020-03-28 16:02:04 +01:00
Alexandre Dutra
851f631eac Use LOCAL_ONE when querying system.local
The system keyspace has a replication factor of 1 and is local to each
node; it is therefore recommended to query system.local with a
consistency level of ONE or LOCAL_ONE.

Stronger consistency levels may result in an Unavailable error, but this
does not mean that the node is down.

See gh-20709
2020-03-28 16:01:47 +01:00
Phillip Webb
16b5ea3414 Update copyright year of changed files 2020-03-23 14:13:33 -07:00
Stephane Nicoll
8593270b5b Only remove trailing slash from URI value
This commit upgrades the algorithm when trailing slash are to be
ignored. Previously a root URI (i.e. "/") would result to to empty
string which is an issue for monitoring system that requires tag values
to be non empty. If the URI is a single character, the trailing is not
applied and "/" is left as is.

Closes gh-20536
2020-03-21 15:11:50 +01:00
Stephane Nicoll
1fdb08300b Polish 2020-03-08 17:22:22 +01:00
dreis2211
f08a9db984 Fix some deprecations
See gh-20388
2020-03-05 10:24:49 +01:00
Johnny Lim
1721aeccb0 Use ServerHttpResponse.getRawStatusCode() in WebFluxTags
See gh-19987
2020-03-04 15:28:31 +01:00
Brian Clozel
11b9862064 Revert "Clear ProducesRequestCondition cache attribute"
Closes gh-20292
2020-02-21 17:38:43 +01:00
Dmytro Nosan
1a8c321a7b Support nested requests in MetricsClientHttpRequestInterceptor
Prior to this commit, requests made by `HttpRequestInterceptor`
instances configured on `RestTemplate` would not be recorded
properly.

This commit ensures that nested requests are recorded separately.

Closes gh-20231
2020-02-20 14:49:50 -08:00
Stephane Nicoll
592ae85043 Merge branch '2.1.x' into 2.2.x 2020-02-20 11:03:10 +01:00
Stephane Nicoll
6aeff91f50 Polish 2020-02-20 10:58:37 +01:00
Brian Clozel
e59d3fbb86 Clear ProducesRequestCondition cache attribute
As of spring-projects/spring-framework#22644, Spring Framework caches
the "produces" condition when matching for endpoints in the
`HandlerMapping` infrastructure. This has been improved in
spring-projects/spring-framework#23091 to prevent side-effects in other
implementations.

Prior to this commit, the Spring Boot actuator infrastructure for
`EndpointHandlerMapping` would not clear the cached attribute,
presenting the same issue as Spring Framework's infrastructure. This
means that a custom arrangement with custom `HandlerMapping` or
`ContentTypeResolver` would not work properly and reuse the cached
produced conditions for other, unintented, parts of the handler mapping
process.

This commit clears the cached data and ensures that other handler
mapping implementations are free of that side-effect.

Fixes gh-20150
2020-02-17 11:33:45 +01:00
Stephane Nicoll
2ede9e63b9 Merge branch '2.1.x' into 2.2.x
Closes gh-20117
2020-02-14 10:20:33 +01:00
Stephane Nicoll
32c1dd45a9 Revert "Merge pull request #19926 from xak2000"
Closes gh-19926
2020-02-14 10:18:02 +01:00
Stephane Nicoll
a425cc1b46 Merge branch '2.1.x' into 2.2.x
Closes gh-20117
2020-02-11 10:30:19 +01:00
Ruslan Stelmachenko
5f7e1ac4f2 Remove unnecessary leading slash in changelog locations
See gh-19926
2020-02-11 10:14:49 +01:00
Madhura Bhave
d485708f68 Fix 404 when composite contributor is added to a group
Fixes gh-19974
2020-02-10 17:09:01 -08:00
Madhura Bhave
acc453db4a Polish contribution
See gh-19999
2020-02-06 17:36:05 -08:00
cbono
badc83d368 Add 'uris', 'address' and 'addresses' to keys to sanitize.
See gh-19999
2020-02-06 17:23:23 -08:00
Stephane Nicoll
d85bdfb23c Fix checkstyle violation 2020-02-04 10:19:01 +01:00