Commit Graph

1788 Commits (1cd3b0cabe2f4479a07659c560c946eb03423d9e)

Author SHA1 Message Date
Andy Wilkinson 85493367b6 Rework health response structure to eliminate chance of key clashes
Previously, if a health's details contained a key named status (either
because an indicator bean was named statusHealthIndicator or an
indicator added an entry named status to its details) this would
clash with the health's own status as the details were serialized as
siblings of the status field.

This commit updates Health to remove @JsonAnyGetter from getDetails().
This means that all of a Health's details will now be nested within
a separate details field, thereby preventing a possible clash with
the status field.

Closes gh-10249
7 years ago
Andy Wilkinson c06de245d9 Allow endpoints to be mapped to /
This commit removes the restriction that was added in 4a61e45 to
prevent / from being used as the management context path when the
management context was not using a different port

The management context path can now be set to / irrespective of the
configuration of the management port. To avoid a possible clash
with the application's welcome page or similar, the links "endpoint"
that is mapping to the management context path is disabled when
the management context path is /.

As part of allowing / to be used as the management context path again,
the handling of endpoint mappings and the creation of paths for
individual operations has been consolidated into a new EndpointMapping
class that is used across the three (MVC, WebFlux, and Jersey)
implementations.

See gh-9898
7 years ago
Johnny Lim fd1b460027 Remove EndpointServletWebAutoConfigurationTests
Closes gh-10228
7 years ago
Andy Wilkinson 2e19f0b3e5 Upgrade to Jersey 2.26
Closes gh-10217
7 years ago
Stephane Nicoll 905e851219 Fix build failure 7 years ago
Johnny Lim 30262e3bc1 Polish
Closes gh-10168
7 years ago
Stephane Nicoll 8b88c6e884 Polish 7 years ago
Stephane Nicoll e244d75bd2 Restore `endpoints.env.keys-to-sanitize` binding
Closes gh-10174
7 years ago
Brian Clozel 1cf7c32a1e Polish 7 years ago
Stephane Nicoll 7388b4b768 Fix build failure 7 years ago
Andy Wilkinson f1c5fc41b4 Polish 7 years ago
Andy Wilkinson ad4ce9cf57 Return objects from trace, audit event, and thread dump endpoints
Closes gh-7648
7 years ago
Andy Wilkinson a6b30a3aab Reflect context hierarchy in beans endpoint’s response structure
Closes gh-10156
7 years ago
Andy Wilkinson ab54801143 Improve structure of response from configprops endpoint
Closes gh-10162
7 years ago
Andy Wilkinson 9242def4c0 Improve structure and JSON serialization of beans endpoint's response
Closes gh-10156
7 years ago
Andy Wilkinson 9ffbfb0d80 Ensure that endpoints are created before their web extensions
Closes gh-10140
7 years ago
Stephane Nicoll 37d92807d6 Polish test
See gh-10139
7 years ago
Mark Paluch 0e2f7c57ee Close reactive Redis connection after health check
Closes gh-10153
7 years ago
Stephane Nicoll a274c78fa0 Add support for reactive health indicator
This commit introduces a "ReactiveHealthIndicator" contract that can be
implemented for health checks against a reactive API.

When running in a WebFlux-based web app, the health and status endpoints
transparently use this in a WebFlux-based application and regular
HealthIndicator are executed on the elastic scheduler.

When running in a Servlet-based web app, the endpoints includes and
adapts available ReactiveHealthIndicators automatically

Closes gh-7972
7 years ago
Andy Wilkinson 7fc12bc8a3 Polish 7 years ago
Johnny Lim db76112700 Polish
See gh-10109
7 years ago
Phillip Webb 2c97d3a5e9 Polish 7 years ago
Stephane Nicoll 441dd2bc16 Move endpoints.trace.filter to management.trace.filter
Closes gh-10007
7 years ago
Stephane Nicoll 54781c73b5 Move endpoints.metrics.filter to management.metrics.filter
See gh-10007
7 years ago
Stephane Nicoll 1897d76cda Merge branch '1.5.x' 7 years ago
Paul Vorbach 04ca7f137d Identify and fix incomplete assertions
Several calls to assertThat lacked a following assertion most often due
to wrong use of parenthesis.

See gh-10084
7 years ago
Johnny Lim 118f65556f Remove unused ExpectedExceptions
Closes gh-10101
7 years ago
Stephane Nicoll 3ef3b40783 Rename EndpointType to EndpointExposure
Closes gh-10100
7 years ago
Phillip Webb f9e5b07eec Polish endpoint 7 years ago
Stephane Nicoll 98455e30dc Rename default endpoint settings to "default"
Closes gh-10098
7 years ago
Madhura Bhave 919dfd3f90 Remove unused properties and constants
Since the autoconfig totally backs off in the presence
of a WebSecurityConfigurerAdapter, there is no need to
order them ahead of/after the one provided by Spring Boot.

See gh-7958
7 years ago
Stephane Nicoll f6134a8862 Polish 7 years ago
Stephane Nicoll da65158eae Disable Jolokia by default
To be consistent with Actuator web endpoints, Jolokia is now disabled
by default.

Closes gh-10090
7 years ago
Stephane Nicoll def094b844 Advertize web endpoints as disabled by default
Following the rework on Security that expects web endpoints to be
disabled by default, this commit updates the metadata (including the
automatic generation) to reflect this decision.
7 years ago
Stephane Nicoll c76c16d92b Polish 7 years ago
Madhura Bhave 4990b52b72 Reinstate CloudFoundry support for actuators
Closes gh-9996
7 years ago
Madhura Bhave bacbe0459b Disable web endpoints by default
Since the handler interceptors have been removed, web endpoints
are all disabled by default to prevent accidental exposure of
sensitive information.

Closes gh-7958
7 years ago
Madhura Bhave e08ddbf838 Rework security autoconfiguration
This commit combines security autoconfigurations for
management endpoints and the rest of the application. By default,
if Spring Security is on the classpath, it turns on @EnableWebSecurity.
In the presence of another WebSecurityConfigurerAdapter this backs off
completely. A default AuthenticationManager is also provided with a user
and generated password. This can be turned off by specifying a bean of
type AuthenticationManager, AuthenticationProvider or UserDetailsService.

Closes gh-7958
7 years ago
Stephane Nicoll f60ad0df74 Polish 7 years ago
Stephane Nicoll 049df50f31 Add explicit dependency to ConnectionFactory auto-configurations
This commit makes sure tht `HealthIndicatorAutoConfiguration` runs after
any producers of a `ConnectionFactory` and not only ActiveMQ. This was
identified as part of #10081: `JmsAutoConfiguration` is actually the
one that isn't necessary (spring-boot-actuator has no import on the
`org.springframework.jms` and only `javax.jms.ConnectionFactory` is used
as part of the JMS health indicator.
7 years ago
Stephane Nicoll 69faa7dd33 Remove useless cast
The number of nodes can be added to the details without the need to cast
it.

Closes gh-10078
7 years ago
Stephane Nicoll dd88b116d5 Add deprecated metadata for Jolokia
See gh-10076
7 years ago
Stephane Nicoll c69725f68c Add deprecated metadata for Actuator endpoints
See gh-10076
7 years ago
Stephane Nicoll 38745d41d7 Add deprecated metadata for CRaSH support
See gh-10076
7 years ago
Stephane Nicoll e4f3164da7 Polish 7 years ago
Stephane Nicoll 2725151bff Add missing test scope 7 years ago
Johnny Lim 14c9f91aab Polish
Closes gh-10054
7 years ago
Stephane Nicoll ac4219b1d8 Move management.jmx to management.endpoints.jmx
For consistency with #10053, this commit moves the JMX specific endpoint
properties to `management.endpoints.jmx`.
7 years ago
Stephane Nicoll 68fcea7b9a Migrate endpoints.cors to management.endpoints.cors
This commit moves CORS properties out of the endpoints namespace as they
do not refer to a "cors" endpoint but rather to the CORS configuration
of all endpoints.

Closes gh-10053
7 years ago
Stephane Nicoll 3087514b79 Move endpoints.health.mapping to management.health.status.http-mapping
Closes gh-10052
7 years ago