Commit Graph

301 Commits

Author SHA1 Message Date
Andy Wilkinson 8d5b9f37d5 Merge branch '1.5.x' 2018-04-09 17:59:53 +01:00
Phillip Webb 598e9bb842 Polish 2018-04-04 18:01:25 -07:00
Brian Clozel f6d16c8b99 Align WebFluxTags uri support on WebMvcTags
This commit ensures that `WebFluxTags` not only relies on
`BEST_MATCHING_PATTERN_ATTRIBUTE` or request URI to provide the "uri"
tag information.

To avoid cardinality explosion, HTTP not found and redirects are
assigned fixed uri tags.

Closes gh-12685
2018-04-04 11:46:10 +02:00
Phillip Webb 98a2a91d16 Polish 2018-03-29 14:00:13 -07:00
Brian Clozel ebb2f70e0b Make WebMvgTags use matched patterns for HTTP 404
Prior to this commit, `WebMvcTags' would always mark as "NOT_FOUND" or
"REDIRECTION" *any* exchange with responses of 404 and 3xx status, even
if those responses are actually returned by Controller handlers.

This commit checks inverts those checks and first considers if the
"BEST_MATCHING_PATTERN_ATTRIBUTE" request attribute is present and uses
it - then falls back to "NOT_FOUND" and "REDIRECTION" to avoid
cardinality explosion.

Fixes gh-12577
2018-03-29 20:33:07 +02:00
Madhura Bhave 8b29823885 Prevent StackOverFlowException in metadata processor
Fixes gh-11037
2018-03-28 07:58:13 -07:00
dreis2211 3b0f6e7168 Use Supplier variants of Assert methods
See gh-12630
2018-03-26 17:58:17 +02:00
Johnny Lim 625bf93598 Polish
See gh-12584
2018-03-26 17:33:25 +02:00
Phillip Webb 78534a753d Polish "Iterate map by using lambda function"
See gh-12528
2018-03-19 08:00:36 -04:00
igor-suhorukov ffc883b005 Iterate map by using lambda function
Closes gh-12528
2018-03-19 07:50:54 -04:00
Phillip Webb 6e2ecb8a43 Fix broken endpoint integration tests
Ensure that JSON response is returned when extracting data from the
error details.

See gh-12513
2018-03-17 12:29:39 -07:00
Andy Wilkinson 2da4897aa8 Polish 2018-03-16 09:57:35 +00:00
Johnny Lim 2e6914ea88 Add missing super() calls
Closes gh-12459
2018-03-14 15:56:53 -07:00
dreis2211 8626daf135 Replace Mockito.times(0) with Mockito.never()
Closes gh-12475
2018-03-14 15:12:20 -07:00
dreis2211 0d3f3e46dd Fix typos
Closes gh-12468
2018-03-13 17:42:19 -07:00
Andy Wilkinson 2f1b2e3ce2 Log summary of web-exposed endpoints during startup
Closes gh-12442
2018-03-13 14:55:51 +00:00
igor-suhorukov 12185251c1 "toString()" should never be called on a String object
Closes gh-12452
2018-03-13 08:45:02 +01:00
igor-suhorukov aebb475bc5 Reorder modifiers to comply with the JLS
See gh-12432
2018-03-12 15:17:05 +01:00
Johnny Lim 3c9cee2a8c Invoke mapStatus() only when necessary
Closes gh-12419
2018-03-09 16:21:42 +01:00
Madhura Bhave 89e42d40c5 Provide security matchers for actuator links
Fixes gh-12353
2018-03-07 19:02:35 -08:00
Johnny Lim 751c444166 Polish
See gh-12326
2018-03-03 12:25:41 +01:00
Phillip Webb 7bc535e4fa Polish 2018-02-28 10:59:26 -08:00
Johnny Lim f12c7ab38a Remove an unnecessary method in EndpointDiscoverer
Closes gh-12284
2018-02-28 15:45:25 +01:00
Phillip Webb 29c3be3590 Polish 2018-02-26 10:26:02 -08:00
Stephane Nicoll 306c79f0de Merge branch '1.5.x' 2018-02-26 18:03:32 +01:00
Stephane Nicoll cd522dadcd Revert "Add Kafka health indicator"
Closes gh-12225
2018-02-26 15:46:35 +01:00
Phillip Webb 4b9c3c137e Polish Collection.toArray
Consistently use `StringUtils.toStringArray`, `ClassUtils.toClassArray`
or zero length when converting collections to arrays.

Fixes gh-12160
2018-02-22 21:11:30 -08:00
Phillip Webb 3076a5523a Fix checkstyle violation 2018-02-20 22:37:37 -08:00
Phillip Webb 8c24988faa Fix checkstyle violation 2018-02-20 22:02:02 -08:00
Phillip Webb 0925a0957e Polish 2018-02-20 16:24:35 -08:00
Phillip Webb 05faac2b09 Polish 2018-02-20 15:53:25 -08:00
Andy Wilkinson 8f699cd6f6 Use RoleVoter for role checks in ReactiveSecurityContext
See gh-11869
2018-02-20 17:11:57 +00:00
Andy Wilkinson ae45b6730b Apply ROLE_ prefix when needed in ReactiveSecurityContext isUserInRole
See gh-11869
2018-02-20 16:38:16 +00:00
Andy Wilkinson daa280faff Drop AuthorityReactiveAuthorizationManager and avoid need to block
See gh-11869
2018-02-20 16:29:28 +00:00
Stephane Nicoll 7c365bb253 Polish 2018-02-20 13:42:28 +01:00
Andy Wilkinson 87ef9a1d97 Polish 2018-02-20 12:37:24 +00:00
Andy Wilkinson 3e4baf744e Use role-based security to show details in the health endpoint
Closes gh-11869
2018-02-20 12:12:05 +00:00
Jon Schneider 16867f866c Consistent prefix for datasource pool metrics
See gh-12127
2018-02-20 09:35:43 +01:00
Phillip Webb 20109e27be Add ApplicationConversionService and fix binder
Create a new `ApplicationConversionService` similar in design to the
DefaultFormattingConversionService from Spring Framework. The new
conversion service provides a central place for custom conversion logic
supported by Spring Boot.

Also replace the `BindingConversionService` with an internal
`BindConverter` class that now invokes the `SimpleTypeConverter`
directly. Binding for `@ConfigurationProperties` has been updated so
that any custom property editors registered with the BeanFactory can
be used.

Fixes gh-12095
2018-02-19 20:25:47 -08:00
Johnny Lim 88b184ca23 Polish 2018-02-19 20:00:20 -08:00
Jon Schneider ec5ef0f246 Fix URI tag on RestTemplate requests based on URIs
Move leading slash logic from `MetricsClientHttpRequestInterceptor` to
`RestTemplateExchangeTags` so that URI based calls are also managed.

Closes gh-12126
2018-02-19 19:57:24 -08:00
Andy Wilkinson c3a31fafe2 Remove tangle between actuate.endpoint and actuate.endpoint.invoke
See gh-11854
2018-02-19 13:04:23 +00:00
Andy Wilkinson 19ce68d2d8 Prefix endpoint's path to controller endpoint mappings with no path
Previously, if a controll endpoint included a mapping with no path,
it would be mapped to the root of the application rather than the
root of the endpoint's path.

This commit updates the handler mappings for both reactive and Servlet
web applications to treat a mapping with no paths as being a mapping
with a single empty path. This ensures that a path with the endpoint's
path prepended is used for the mapping.

Closes gh-12104
2018-02-18 19:53:57 +00:00
Phillip Webb 9e75680e6f Polish 2018-02-16 18:11:54 -08:00
Andy Wilkinson 17c7f027e0 Add details of the request mapping conditions to mappings endpoint
Closes gh-12080
2018-02-16 17:36:06 +00:00
Andy Wilkinson 2c19257d6d Add HandlerMethod and HandlerFunction details to mappings endpoint
Closes gh-11864
2018-02-16 17:08:47 +00:00
Phillip Webb 6771cc9674 Polish 2018-02-13 14:41:12 -08:00
Andy Wilkinson d238a31d3d Polish 2018-02-13 17:50:40 +00:00
Stephane Nicoll b28cabdb12 Polish "Remove unnecessary config options for metrics"
Closes gh-12017"
2018-02-13 14:36:52 +01:00
Jon Schneider 49f21a2264 Remove unnecessary config options for JDBC, Rabbit, and Cache metrics
See gh-12017
2018-02-13 14:36:52 +01:00
Stephane Nicoll 28f5392787 Polish "Add health indicator for reactive MongoDB"
Closes gh-11997
2018-02-13 11:22:04 +01:00
Yulin Qin eee2694648 Add health indicator for reactive MongoDB
See gh-11997
2018-02-13 11:22:04 +01:00
Stephane Nicoll d468a0714e Polish "Polish modifier order"
Closes gh-12019
2018-02-13 09:50:20 +01:00
Johnny Lim 87bf0b26df Polish modifier order
See gh-12019
2018-02-13 09:49:59 +01:00
igor-suhorukov 71351de694 Remove redundant casts
See gh-12011
2018-02-13 09:33:49 +01:00
Phillip Webb 3bec55e16c Formatting 2018-02-12 17:49:53 -08:00
Madhura Bhave 16a499b2fa Cloud Foundry health should always show details
Fixes gh-12014
2018-02-12 15:28:06 -08:00
Phillip Webb f34aa6f4d8 Migrate to Spring Integration Micrometer support
Remove custom `SpringIntegrationMetrics` and instead provide
auto-configuration to the direct Micrometer support added in Spring
Integration 5.0.2.

Closes gh-11985
2018-02-12 13:24:29 -08:00
Phillip Webb 0348889fd7 Polish 2018-02-12 10:03:06 -08:00
Stephane Nicoll 7473642f58 Harmonize endpoints exclude property
Closes gh-11914
2018-02-12 14:00:40 +01:00
Andy Wilkinson bc814d2039 Prevent authenticated principal from clashing with argument of same name
Closes gh-11988
2018-02-12 10:46:19 +00:00
Phillip Webb d259f68fbf Drop recordRequestPercentiles property
Drop the `recordRequestPercentiles` property as it overlaps with the
property based `MeterFilter` support.

Fixes gh-11982
2018-02-09 13:59:46 -08:00
Andy Wilkinson 2993dccd1e Provide links to all types of endpoints
Previously, links were only provide to web endpoints. This commit
expands link resolution to also provide links for servlet endpoints,
controller endpoints, and rest controller endpoints.

Closes gh-11902
2018-02-09 10:56:15 +00:00
Phillip Webb d2418b99ef Fix checkstyle errors 2018-02-08 17:19:19 -08:00
Phillip Webb 5de46c3186 Polish 2018-02-08 16:35:10 -08:00
Phillip Webb 387804e600 Format with Eclipse Oxygen SR2 2018-02-08 15:44:32 -08:00
Andy Wilkinson dec37ec5e2 Move EndpointMapping into spring-boot-actuator 2018-02-08 15:13:27 +00:00
Andy Wilkinson 4beb6be179 Rename HTTP trace properties and packages
Closes gh-11934
2018-02-08 13:08:27 +00:00
Stephane Nicoll 7cd19822c6 Polish "Add Kafka health indicator"
Closes gh-11515
2018-02-08 11:58:42 +01:00
Juan Camilo Rada 0dbd9429cc Add Kafka health indicator
See gh-11515
2018-02-08 11:55:37 +01:00
Andy Wilkinson 76a450dfba Format with Eclipse Oxygen SR2 2018-02-08 10:53:53 +00:00
Madhura Bhave dd3bcc5691 Polish 2018-02-07 13:55:09 -08:00
Andy Wilkinson efc3f888da Avoid exception throw-catch for non-MatchableHandlerMapping mappings
Closes gh-11912
2018-02-07 17:06:33 +00:00
Andy Wilkinson 8605499a64 Provide more control over when the health endpoint shows details
Closes gh-11869
2018-02-07 09:51:19 +00:00
Andy Wilkinson 1975d51106 Add support for injecting a Principal into web endpoint operations
Closes gh-11941
2018-02-07 09:51:10 +00:00
Andy Wilkinson 7d561f5ed0 Polish "Align with Micrometer's standardized cache metrics"
Closes gh-11918
2018-02-06 11:13:37 +00:00
Jon Schneider ba52aa3674 Align with Micrometer's standardized cache metrics
See gh-11918
2018-02-06 11:12:58 +00:00
Phillip Webb b5c4ce230d Ensure full commit id is always available
Update `GitProperties` so that the `commit.id` entry is also copied to
`commit.id.full`.

Prior to this commit, when returning full details, the value of
`commit.id` would be replaced with a `Map` containing only `abbriv` as
a key. By  copying the value to a sub-key we ensure that it remains
available both in the FULL and SIMPLE modes.

Fixes gh-11892
2018-02-02 19:00:35 -08:00
Phillip Webb 69234f8c08 Polish 2018-02-02 18:59:05 -08:00
dreis2211 81459efffa Use HTTPS URLs where applicable 2018-02-02 12:03:12 +00:00
Andy Wilkinson 8a123d3289 Polish 2018-02-02 09:41:11 +00:00
Andy Wilkinson 875091ed85 Polish “Remove or use unused method parameters”
Closes gh-11812
2018-02-02 09:34:19 +00:00
igor-suhorukov 717bd2c580 Remove or use unused method parameters 2018-02-02 09:34:19 +00:00
Phillip Webb eb83b2e0c2 Fix DataSourceHealthIndicator test failure
Fix failure introduced in commit 8af02ce05b.

See gh-11880
2018-02-01 20:30:08 -08:00
Phillip Webb 8af02ce05b Allow custom AbstractHealthIndicator warning logs
Update `AbstractHealthIndicator` so that the warning message can be
customized. Also updated our existing indicators with better messages.

Fixes gh-11880
2018-02-01 17:00:27 -08:00
Phillip Webb 1e3bae9ba2 Third attempt to fix polish commit 2018-02-01 13:02:57 -08:00
Phillip Webb 84438183e1 Fix compile error due to previous polish 2018-02-01 12:01:43 -08:00
Phillip Webb 7d5e41f7dc Polish 2018-02-01 10:25:33 -08:00
Johnny Lim 3cead7693d Polish
Closes gh-11871
2018-02-01 08:35:42 +01:00
Stephane Nicoll c1ad9b73ba Allow caching for an Endpoint operation with optional arguments
This commit makes sure that caching is enabled if an operation has
nullable parameters and the actual invocation provides null values.

Closes gh-11795
2018-01-31 17:48:55 +01:00
Andy Wilkinson 42135cd5fc Polish "Aggregate max statistics in metrics endpoint with Double#max"
Closes gh-11852
2018-01-30 20:38:14 +00:00
Jon Schneider 92287f75f7 Aggregate max statistics in metrics endpoint with Double#max
See gh-11852
2018-01-30 20:38:02 +00:00
Andy Wilkinson 356efaa7c8 Rename trace to httptrace
Closes gh-11806
2018-01-30 12:55:27 +00:00
Phillip Webb c90a5a9e9e Polish 2018-01-29 21:35:56 -08:00
Phillip Webb 5632d043ff Fix enums following upstream micrometer change
See gh-11575
2018-01-29 19:51:51 -08:00
dreis2211 e7248ff273 Use interfaces for collection declarations
Closes gh-11839
2018-01-29 16:54:11 -08:00
Phillip Webb 3a12f98bab Migrate callbacks to LambdaSafe util
Migrate existing code to the new `LambaSafe` callback handler.

Closes gh-11584
2018-01-29 14:31:10 -08:00
Andy Wilkinson e834b25ef1 Polish 2018-01-29 20:20:58 +00:00
Phillip Webb af50a18da9 Polish 2018-01-29 09:47:03 -08:00
Johnny Lim 914bdb393f Polish
See gh-11811
2018-01-29 08:11:09 +01:00