Commit Graph

1079 Commits

Author SHA1 Message Date
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
Phillip Webb 14c1b0938a Polish 2020-07-22 18:25:27 -07:00
Phillip Webb da69286838 Merge branch '2.3.x' 2020-07-22 17:39:27 -07:00
Phillip Webb d2a7808098 Polish 2020-07-22 17:25:04 -07:00
Phillip Webb 217b2eff89 Merge branch '2.2.x' into 2.3.x 2020-07-22 17:03:23 -07: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 0ac7178ae1 Merge branch '2.3.x'
Closes gh-22491
2020-07-22 06:43:28 +01:00
dreis2211 198131f5e4 Remove redundant compiler arguments in Gradle build files
See gh-22488
2020-07-22 06:42:48 +01:00
Andy Wilkinson 19ad163486 Merge branch '2.3.x'
Closes gh-22411
2020-07-20 13:58:40 +01:00
Andy Wilkinson accc1f1ca8 Merge branch '2.2.x' into 2.3.x
Closes gh-22410
2020-07-20 13:58:19 +01: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 cb7f99ad72 Polish "Measure with nanoseconds in HttpExchangeTracer"
See gh-22266
2020-07-09 10:02:09 +01:00
dreis2211 d72f5139f1 Measure with nanoseconds in HttpExchangeTracer
See gh-22266
2020-07-09 10:01:55 +01:00
Brian Clozel 3f93978e99 Merge branch '2.3.x'
Closes gh-22215
2020-07-03 15:52:35 +02:00
Brian Clozel 86d8366ee2 Polish support for reactive Elasticsearch healthcheck
Fixes gh-21042
2020-07-03 15:25:18 +02:00
Aleksander Lech 203878a16f Add support for reactive Elasticsearch healthcheck
Prior to this commit, configuring a reactive Elasticsearch client would
auto-configure an Actuator Health check using a synchronous client, with
the default configuration properties (so tarting localhost:9200).

This would lead to false reports of unhealthy Elasticsearch clusters
when using reactive clients.

This commit reproduces the logic for MongoDB repositories: if a reactive
variant is available, it is selected for the health check
infrastructure.

See gh-21042
2020-07-03 15:16:38 +02:00
Andy Wilkinson 4ea07f432d Merge branch '2.3.x'
Closes gh-22168
2020-06-30 14:13:07 +01:00
Andy Wilkinson 75fc140e2d Merge branch '2.2.x' into 2.3.x
Closes gh-22167
2020-06-30 14:09:57 +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 fe78be240a Merge branch '2.3.x'
Closes gh-22103
2020-06-25 10:33:07 +01:00
Andy Wilkinson a2f7ce0564 Merge branch '2.2.x' into 2.3.x
Closes gh-22102
2020-06-25 10:32:32 +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 3b587449a6 Provide cluster info in RedisReactiveHealthIndicator
This commit changes the information provided by
RedisReactiveHealthIndicator to include cluster details when Spring
Data Redis detects that Redis is running in a clustered configuration.
This brings the reactive and non-reactive Redis health indicators
into alignment.

Fixes gh-21514
2020-06-24 16:45:26 -05:00
Scott Frederick dba8ca2848 Merge branch '2.3.x'
Closes gh-22095
2020-06-24 13:40:57 -05:00
Scott Frederick 72f37c41fb Merge branch '2.2.x' into 2.3.x
Fixes gh-22061 in 2.3.2
2020-06-24 13:37:16 -05: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
Andy Wilkinson 0d6ea79007 Start building against Spring Framework 5.3.0 snapshots
See gh-21929
2020-06-22 18:02:21 +01:00
Stephane Nicoll f0f8424191 Merge branch '2.3.x'
Closes gh-22008
2020-06-18 11:31:00 +02:00
dreis2211 855d596c2a Use lazy lambda instead of explicit argument
See gh-21986
2020-06-18 11:29:49 +02:00
Andy Wilkinson 9e08490522 Merge branch 'gh-21271'
Closes gh-21271
2020-06-16 12:52:17 +01:00
Andy Wilkinson 9636350b0b Enable rawtypes compilation warnings
See gh-21271
2020-06-16 12:50:50 +01:00
Andy Wilkinson 056d5f3120 Enable deprecation compilation warnings
See gh-21271
2020-06-16 12:50:47 +01:00
Andy Wilkinson c64649a6d9 Enable unchecked compilation warnings
See gh-21271
2020-06-16 12:50:44 +01:00
Andy Wilkinson 07fb4b065d Merge branch '2.3.x'
Closes gh-21940
2020-06-16 10:10:38 +01:00
Andy Wilkinson 0de466e06e Require dependency on s-b-dependencies to use its constraints
Previously, Spring Boot's modules published Gradle Module Metadata
(GMM) the declared a platform dependency on spring-boot-dependencies.
This provided versions for each module's own dependencies but also had
they unwanted side-effect of pulling in spring-boot-dependencies
constraints which would influence the version of other dependencies
declared in the same configuration. This was undesirable as users
should be able to opt in to this level of dependency management, either
by using the dependency management plugin or by using Gradle's built-in
support via a platform dependency on spring-boot-dependencies.

This commit reworks how Spring Boot's build uses
spring-boot-dependencies and spring-boot-parent to provide its own
dependency management. Configurations that aren't seen by consumers are
configured to extend a dependencyManagement configuration that has an
enforced platform dependency on spring-boot-parent. This enforces
spring-boot-parent's version constraints on Spring Boot's build without
making them visible to consumers. To ensure that the versions that
Spring Boot has been built against are visible to consumers, the
Maven publication that produces pom files and GMM for the published
modules is configured to use the resolved versions from the module's
runtime classpath.

Fixes gh-21911
2020-06-16 08:50:21 +01:00
Stephane Nicoll e87c3193ce Polish "Add Java 15 CI"
See gh-21713
2020-06-15 17:08:12 +02:00
dreis2211 cf3cd0be48 Use Class.getName() as fallback in HandlerFunctionDescription
In JDK 15 the concept of hidden classes was introduced, which also
affects Lambdas in so far that Class.getCanonicalName() will return null
for those. This commit uses Class.getName() as a fallback when no
canonical name is available.

See gh-21713
2020-06-15 16:45:59 +02:00
Stephane Nicoll 35e069e2cd Polish "Add health indicator for Cassandra that uses the CqlSession"
See gh-20887
2020-06-15 11:13:13 +02:00
Alexandre Dutra dad9ec86d5 Add health indicator for Cassandra that uses the CqlSession
This commit provides a CassandraDriverHealthIndicator and
CassandraDriverReactiveHealthIndicator that do not require Spring Data.
As a result, a health indicator for Cassandra is provided even if the
application does not use Spring Data.

See gh-20887
2020-06-15 11:13:13 +02:00
Stephane Nicoll 554971d29b Merge branch '2.3.x'
Closes gh-21917
2020-06-15 08:42:13 +02:00
Stephane Nicoll ee250e058a Merge branch '2.2.x' into 2.3.x
Closes gh-21916
2020-06-15 08:41:44 +02: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 16b1d64b43 Merge branch '2.3.x'
Closes gh-21764
2020-06-08 10:30:33 -07:00
dreis2211 eeb1db2176 Use supplier assertions in availability indicator
See gh-21758
2020-06-08 10:29:28 -07:00
Phillip Webb 8a7a5929ae Merge branch '2.3.x' 2020-06-05 15:37:33 -07:00
Phillip Webb cc50605687 Merge branch '2.2.x' into 2.3.x 2020-06-05 15:36:44 -07:00
Phillip Webb 0a05b4c9fd Update copyright year of changed files 2020-06-05 15:36:09 -07:00
Johnny Lim cd1baf18fe Support filtered scrape for Prometheus
See gh-21545
2020-06-05 14:16:42 +02:00
Andy Wilkinson daeca9f332 Restore Boot 2.2's compile-scoped dependencies
Fixes gh-21507
2020-06-03 12:55:11 +01:00
Stephane Nicoll 1d2d76b051 Merge branch '2.2.x'
Closes gh-21560
2020-05-25 13:52:10 +02: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 fd505e516f Merge branch '2.2.x'
Closes gh-21444
2020-05-13 19:11:29 -07: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 038ae93406 Update copyright year of changed files 2020-05-13 16:48:51 -07:00
Scott Frederick a30740f8d2 Separate server properties for message and errors
Prior to this commit, there was a property server.error.include-details
that allowed configuration of the message and errors attributes in a
server error response.

This commit separates the control of the message and errors attributes
into two separate properties named server.error.include-message and
server.error.include-binding-errors. When the message attribute is
excluded from a servlet response, the value is changed from a
hard-coded text value to an empty value.

Fixes gh-20505
2020-04-29 17:56:47 -05:00
Stephane Nicoll ee913503b4 Tolerate Hazelcast 4
This commit updates HazelcastHealthIndicator and
HazelcastCacheMeterBinderProvider so that they work with
Hazelcast 4 while retaining compatibility with Hazelcast 3. Reflection
is used when necessary.

This commit also adds a smoke test that validates those features are
working when Hazelcast 4 is on the classpath.

Closes gh-21169
2020-04-29 13:39:54 +02:00
Brian Clozel ec871d6752 Fix StatusAggregator static initialization
Prior to this commit, there was a cycle between `StatusAggregator` and
`SimpleStatusAggregator`, which caused a static initialization bug -
depending on which class (the implementation or its interface) was
loaded first.

This commit turns the static field of the `StatusAggregator` interface
into a static method to avoid this problem.

Fixes gh-21211
2020-04-28 21:01:14 +02:00
dreis2211 5eb5bf0a2d Polish
See gh-21009
2020-04-25 08:54:47 +02:00
Stephane Nicoll 85e9f713b0 Update copyright year of changed files
See gh-21007
2020-04-25 08:50:51 +02:00
Johnny Lim 29717423a3 Remove this keyword on member method invocations
See gh-21007
2020-04-25 08:49:44 +02:00
Phillip Webb 56711d678a Merge branch '2.2.x'
Closes gh-21083
2020-04-22 11:59:22 -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
Phillip Webb bf41da5322 Update copyright year of changed files 2020-04-21 18:12:27 -07:00
Scott Frederick 70d4994502 Disable exception details on default error views
Prior to this commit, default error responses included the message
from a handled exception. When the exception was a BindException, the
error responses could also include an errors attribute containing the
details of the binding failure. These details could leak information
about the application.

This commit removes the exception message and binding errors detail
from error responses by default, and introduces a
`server.error.include-details` property that can be used to cause
these details to be included in the response.

Fixes gh-20505
2020-04-16 10:46:36 -05:00