Commit Graph

1779 Commits

Author SHA1 Message Date
Stephane Nicoll 7388b4b768 Fix build failure 2017-09-06 11:43:34 +02:00
Andy Wilkinson f1c5fc41b4 Polish 2017-09-05 12:52:38 +01:00
Andy Wilkinson ad4ce9cf57 Return objects from trace, audit event, and thread dump endpoints
Closes gh-7648
2017-09-05 12:13:25 +01:00
Andy Wilkinson a6b30a3aab Reflect context hierarchy in beans endpoint’s response structure
Closes gh-10156
2017-09-05 12:13:25 +01:00
Andy Wilkinson ab54801143 Improve structure of response from configprops endpoint
Closes gh-10162
2017-09-05 12:13:25 +01:00
Andy Wilkinson 9242def4c0 Improve structure and JSON serialization of beans endpoint's response
Closes gh-10156
2017-09-04 14:40:15 +01:00
Andy Wilkinson 9ffbfb0d80 Ensure that endpoints are created before their web extensions
Closes gh-10140
2017-09-04 11:01:52 +01:00
Stephane Nicoll 37d92807d6 Polish test
See gh-10139
2017-09-04 10:01:14 +02:00
Mark Paluch 0e2f7c57ee Close reactive Redis connection after health check
Closes gh-10153
2017-09-04 08:44:21 +02:00
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
2017-09-01 15:18:48 +02:00
Andy Wilkinson 7fc12bc8a3 Polish 2017-08-30 17:34:07 +01:00
Johnny Lim db76112700 Polish
See gh-10109
2017-08-30 10:33:53 +02:00
Phillip Webb 2c97d3a5e9 Polish 2017-08-29 15:59:32 -07:00
Stephane Nicoll 441dd2bc16 Move endpoints.trace.filter to management.trace.filter
Closes gh-10007
2017-08-29 17:09:19 +02:00
Stephane Nicoll 54781c73b5 Move endpoints.metrics.filter to management.metrics.filter
See gh-10007
2017-08-29 17:04:59 +02:00
Stephane Nicoll 1897d76cda Merge branch '1.5.x' 2017-08-29 14:00:23 +02:00
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
2017-08-29 13:49:28 +02:00
Johnny Lim 118f65556f Remove unused ExpectedExceptions
Closes gh-10101
2017-08-29 13:19:04 +02:00
Stephane Nicoll 3ef3b40783 Rename EndpointType to EndpointExposure
Closes gh-10100
2017-08-29 11:50:27 +02:00
Phillip Webb f9e5b07eec Polish endpoint 2017-08-29 11:32:39 +02:00
Stephane Nicoll 98455e30dc Rename default endpoint settings to "default"
Closes gh-10098
2017-08-29 11:27:35 +02:00
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
2017-08-28 15:53:35 -07:00
Stephane Nicoll f6134a8862 Polish 2017-08-28 11:38:10 +02:00
Stephane Nicoll da65158eae Disable Jolokia by default
To be consistent with Actuator web endpoints, Jolokia is now disabled
by default.

Closes gh-10090
2017-08-28 10:18:19 +02:00
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.
2017-08-28 10:08:38 +02:00
Stephane Nicoll c76c16d92b Polish 2017-08-28 09:59:32 +02:00
Madhura Bhave 4990b52b72 Reinstate CloudFoundry support for actuators
Closes gh-9996
2017-08-27 23:15:19 -07:00
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
2017-08-27 23:15:18 -07:00
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
2017-08-27 23:15:18 -07:00
Stephane Nicoll f60ad0df74 Polish 2017-08-27 14:25:59 +02:00
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.
2017-08-27 14:25:01 +02:00
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
2017-08-25 18:53:56 +02:00
Stephane Nicoll dd88b116d5 Add deprecated metadata for Jolokia
See gh-10076
2017-08-25 15:57:57 +02:00
Stephane Nicoll c69725f68c Add deprecated metadata for Actuator endpoints
See gh-10076
2017-08-25 14:28:48 +02:00
Stephane Nicoll 38745d41d7 Add deprecated metadata for CRaSH support
See gh-10076
2017-08-25 14:12:42 +02:00
Stephane Nicoll e4f3164da7 Polish 2017-08-23 15:50:30 +02:00
Stephane Nicoll 2725151bff Add missing test scope 2017-08-23 15:08:23 +02:00
Johnny Lim 14c9f91aab Polish
Closes gh-10054
2017-08-22 16:28:03 +02:00
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`.
2017-08-22 11:46:38 +02:00
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
2017-08-22 11:40:39 +02:00
Stephane Nicoll 3087514b79 Move endpoints.health.mapping to management.health.status.http-mapping
Closes gh-10052
2017-08-22 11:11:22 +02:00
Stephane Nicoll 79bdaad686 Remove reference to HttpStatus
This commit removes an import on a class in "spring-web" as this class
is also meant to be used with Jersey only (i.e. when "spring-web" is
not present on the classpath).

Closes gh-10051
2017-08-22 10:03:32 +02:00
Stephane Nicoll 394371eb73 Polish "Harmonize database initializers"
Closes gh-9752
2017-08-18 18:14:22 +02:00
Johnny Lim a7ef258069 Polish
Closes gh-10032
2017-08-18 11:28:33 +02:00
Stephane Nicoll ad3a14141f Polish endpoints metadata
This commit introduces manual metadata for the endpoints.all.* namespace
and polish the appendix following the work that happened in #9692
2017-08-17 11:34:08 +02:00
Stephane Nicoll 80793b3148 Cleanup additional meta-data
The new endpoint infrastructure does not provide a `path` property so
the manual metadata for older endpoints have been removed.
2017-08-17 11:07:02 +02:00
Stephane Nicoll 19e211a1c2 Add Status endpoint
This commit adds a new `/application/status` endpoint that provides only
the Health's status of an application.

Previously, `/application/health` was returning full health details or
only the status depending on configuration. Those two use cases are now
separate in two endpoints that can be configured, secured and enabled
separately.

Closes gh-9721
2017-08-16 15:30:41 +02:00
Stephane Nicoll b9bbe9ee01 Polish 2017-08-16 13:52:40 +02:00
Stephane Nicoll 74b552826b Remove EndpointProperties
`EndpointProperties` is a left over of the infrastructure in 1.x and is
no longer used. Besides the `endpoints.enabled` property is now
`endpoints.all.enabled`.

Closes gh-10016
2017-08-16 13:41:32 +02:00
Stephane Nicoll 151f7ef325 Reinstate JMX customizations of Endpoints ObjectName
This commit restores the configuration properties used to configure how
the ObjectName of an endpoint is generated. For consistency, those
properties have been renamed to `management.jmx`

Closes gh-10005
2017-08-16 13:37:24 +02:00