Commit Graph

1413 Commits (b09aea8ec13b1a5e9536c41bdad600dcd68b2d69)

Author SHA1 Message Date
Andy Wilkinson e57579461a Prevent endpoint's shutdown() method from being a destroy method
Closes gh-17407
5 years ago
Andy Wilkinson 4ab4198168 Switch to Infinispan's Spring 5 integration
Closes gh-17333
5 years ago
Phillip Webb fcbcc9d309 Merge branch '2.1.x'
Closes gh-17387
5 years ago
Phillip Webb a81f37dd68 Escape '{reference}' elements in asciidoc files
Escape lines that look like variable references but should actually be
included verbatim.

Closes gh-17386
5 years ago
Phillip Webb 605599138e Merge branch '2.1.x' 5 years ago
Phillip Webb 92bff3c328 Merge branch '2.0.x' into 2.1.x 5 years ago
Phillip Webb cfeb0239b7 Merge branch '1.5.x' into 2.0.x 5 years ago
Phillip Webb c62b6b4ccd Merge branch '2.1.x' 5 years ago
Phillip Webb de35efd1ef Merge branch '2.0.x' into 2.1.x 5 years ago
Phillip Webb bb34846630 Merge branch '1.5.x' into 2.0.x 5 years ago
Madhura Bhave 7e22901bb2 Fail build on unresolved documentation links
Closes gh-12005
5 years ago
Stephane Nicoll e560b7f6ba Remove public modifier on JUnit5 lifecycle methods
See gh-17292
5 years ago
Stephane Nicoll 403d868611 Polish "Use constants for HTTP headers"
See gh-17199
5 years ago
Johnny Lim a57df0f595 Use constants for HTTP headers
See gh-17199
5 years ago
Stephane Nicoll 9eb2650c0f Merge branch '2.1.x' 5 years ago
Stephane Nicoll 86ace26049 Fix broken link to Spring Integration reference guide
Closes gh-17279
5 years ago
Stephane Nicoll 45d2f1d7d1 Merge branch '2.1.x'
Closes gh-17269
5 years ago
Stephane Nicoll 7e5ca6d280 Merge branch '2.0.x' into 2.1.x
Closes gh-17268
5 years ago
Stephane Nicoll 11dee3c0d8 Merge branch '1.5.x' into 2.0.x 5 years ago
Andy Wilkinson cffc870fd6 Fix test failures on Windows
Since the move to JUnit 5, a number of tests were failing on Windows.
The majority were failing due to open file handles preventing the
clean up of the tests' temporary directory. This commit addresses
these failures by updating the tests to close JarFiles, InputStreams,
OutputStreams etc.

A change has also been made to CachingOperationInvokerTests to make
a flakey test more robust. Due to System.currentTimeMillis() being
less precise on Windows than it is on *nix platforms, the test could
fail as it would not sleep for long enough for the TTL period to have
expired.
6 years ago
Stephane Nicoll 46c2da4a19 Polish "Use existing properties field"
See gh-17129
6 years ago
Ingyu Hwang 725cbd9bc8 Use existing properties field
See gh-17129
6 years ago
Phillip Webb 266d6334b2 Fix checkstyle RedundantModifier test violations 6 years ago
Andy Wilkinson b18fffaf14 Move tests to JUnit 5 wherever possible 6 years ago
Andy Wilkinson aef92b9295 Merge branch '2.1.x'
Closes gh-17079
6 years ago
Andy Wilkinson 24925c3dae Merge branch '2.0.x' into 2.1.x
Closes gh-17078
6 years ago
Andy Wilkinson c6c139d980 Merge branch '1.5.x' into 2.0.x 6 years ago
Phillip Webb d306b31ce9 Merge branch '2.1.x' 6 years ago
Phillip Webb ccfbd03482 Merge branch '2.0.x' into 2.1.x 6 years ago
Phillip Webb b442d3b906 Merge branch '1.5.x' into 2.0.x 6 years ago
Phillip Webb 14349518c9 Polish "Avoid using deprecated NCSARequestLog"
See gh-16987
6 years ago
dreis2211 4af3badbea Avoid using deprecated NCSARequestLog
See gh-16987
6 years ago
Andy Wilkinson 0644a79401 Repackage output capture and always use extension declaratively
Closes gh-17029
6 years ago
Phillip Webb d11d5ceb29 Split up JUnit 5 OutputCapture class
Split the JUnit 5 `OutputCapture` class into separate `OutputExtension`
and `CapturedOutput` classes. The JUnit 5 callback methods are now
contained only in the `OutputExtension` class so no longer pollute the
public API that users will interact with.

The `CapturedOutput` class has also been updated to capture System.err
and System.out separately to allow distinct assertions if required.

Closes gh-17029
6 years ago
Phillip Webb 68a3fbd7a0 Extract AutoTimer interface for metrics
Refactor `Autotime` from a properties object to an interface and
change the existing metric recording implementations. The `AutoTimer`
interface is a general purpose callback that can be applied to a
`Timer.Builder` to configure it. Autotime properties are now located
in `spring-boot-actuator-autoconfigure` and have become an
implementation of the interface.

Closes gh-17026
6 years ago
Phillip Webb 68aec8b6ee Polish 6 years ago
Andy Wilkinson b603cd5d4b Disable Tomcat's MBean Registry by default
Closes gh-16498
6 years ago
Andy Wilkinson 080a2f5c3b Align with Framework’s removal of charset attribute from application/json
Closes gh-16979
6 years ago
Andy Wilkinson 23f803c6b6 Upgrade to Hamcrest 2.1, switch to hamcrest artifact from -core and -library
Closes gh-15555
6 years ago
dreis2211 27ca7e17d9 Fix deprecated StandardAnnotationMetadata usages
Closes gh-16930
6 years ago
Stephane Nicoll 26df55761d Merge enablement and exposure conditions for Actuator endpoints
This commit merges the conditions for determining if an endpoint is
available in a single condition, deprecating
`ConditionalOnEnabledEndpoint` in the process.

Closes gh-16169
6 years ago
Johnny Lim 4900117c71 Restore HttpTraceAutoConfigurationTests.configuresServletFilter()
Closes gh-16885
6 years ago
Phillip Webb 3a9ca5fa30 Update copyright header of changed files 6 years ago
Phillip Webb 79e05c770f Merge branch '2.1.x' 6 years ago
Phillip Webb ed998ef0d3 Update copyright header of changed files 6 years ago
Stephane Nicoll 4d8df3cc47 Polish "Allow configuration of auto-timed metrics"
This commit makes sure the "auto-time-requests" property is still
available in a deprecated fashion.

See gh-15988
6 years ago
Madhura Bhave 1db1c8b03c Validate our own tests work with JUnit5 and the vintage engine
Closes gh-14737

Co-authored-by: Stephane Nicoll <snicoll@pivotal.io>
6 years ago
Madhura Bhave 07d6eb6397 Disable auditing infrastructure by default
Prior to this commit, the audit auto-configuration provided
an `InMemoryAuditEventRepository` bean. This commit changes the auto-config
so that an `AuditEventRepository` is not provided and instead the auto-config
is conditional on the presence of a `AuditEventRepository` bean. This is done
to encourage the use of a custom implementation of `AuditEventRepository`
since the in-memory one is quite limited and not suitable for production.
A flag is available if the auto-configuration needs to be turned off even
in the presence of a bean.

Closes gh-16110
6 years ago
Madhura Bhave e2b15c3f2a Fix tests
See gh-15039
6 years ago
Madhura Bhave de128fed20 Disable HttpTrace infrastructure by default
Prior to this commit, the http trace auto-configuration provided
an `InMemoryHttpTraceRepository` bean. This commit changes the auto-config
so that an `HttpTraceRepository` is not provided and instead the auto-config
is conditional on the presence of a `HttpTraceRepository` bean. This is done
to encourage the use of a custom implementation of `HttpTraceRepository`
since the in-memory one is quite limited and not suitable for production.
A flag is available if the auto-configuration needs to be turned off even
in the presence of a bean.

Closes gh-15039
6 years ago
Madhura Bhave cc99b13ecb Merge branch '2.1.x' 6 years ago
Madhura Bhave c9752f165f Fix javadoc 6 years ago
Stephane Nicoll 8045bf1f50 Polish "Allow configuration of auto-timed metrics"
Closes gh-15988
6 years ago
Tadaya Tsuyukubo 4df6f5dee0 Allow configuration of auto-timed metrics
When `management.metrics.web.server.auto-time-requests` is enabled
(default=true), Spring Boot collects metrics on controller methods even
when they are not annotated with `@Timed`.

When this happens, created metrics are based on the default
`@Timed` configuration and there is no way to customize the
configuration of those auto-timed controller metrics.

This commit adds default configurations to auto-timed requests on both
client and server sides.

See gh-15988
6 years ago
Phillip Webb 17aaf26590 Use consistent javadoc style for annotation links
Closes gh-13920
6 years ago
Phillip Webb 1e44aba772 Fix compiler warnings and polish
Fix various compiler warnings and apply a little polish.
6 years ago
Andy Wilkinson 4754386361 Merge branch '2.1.x'
Closes gh-16644
6 years ago
Andy Wilkinson 6b20d13b3d Polish "Prevent double update of metrics when CompositeMeterRegistry exists"
See gh-16221
6 years ago
Johnny Lim cc285d92dd Prevent double update of metrics when CompositeMeterRegistry exists
See gh-16221
6 years ago
Phillip Webb b879972d0d Migrate to MergedAnnotations API
Migrate away from `AnnotationUtils` and `AnnotatedElementUtils`
when possible to the new `MergedAnnotations` API.

Closes gh-16551
6 years ago
Phillip Webb 2dfd916c96 Polish 6 years ago
Vedran Pavic bbaa98175f Upgrade to Hazelcast 3.12
Closes gh-16503
6 years ago
Stephane Nicoll f42b6199ae Polish 6 years ago
Stephane Nicoll a828072132 Migrate tests to use withBean
See gh-16011
6 years ago
Stephane Nicoll 84735f58f3 Fix build failure 6 years ago
Madhura Bhave ce0282406f Skip lazy init for beans that explicitly set lazy to false
This commit also adds tests to ensure that the child
management context works when lazy initialization is
enabled. Also, it adds a BeanFactoryPostProcessor to
the child context so that the server is created and
listening for requests but other beans in the child
context are not created until requested.

See gh-16184
6 years ago
Andy Wilkinson ff1e5076dc Merge branch '2.1.x'
Closes gh-16473
6 years ago
Andy Wilkinson c0a91478f1 Only start management server once main server is initialized
Closes gh-15378
6 years ago
Stephane Nicoll c432288ed1 Migrate ApplicationContext to common hierarchy
This commit migrates `AnnotationConfigReactiveWebApplicationContext`
parent to the `GenericApplicationContext` abstraction. Any use of
`AnnotationConfigWebApplicationContext` is also removed as it also
inherits from the `AbstractRefreshableApplicationContext` outdated
hierarchy.

A new `AnnotationConfigServletWebApplicationContext` context is
introduced instead, extending from `GenericApplicationContext` and
providing the counter part of the reactive context for the Servlet-based
web app tests.

See gh-16096
6 years ago
Phillip Webb ad7eebee9e Merge branch '2.1.x' 6 years ago
Phillip Webb f12ab1ff90 Update copyright header of changed files 6 years ago
Phillip Webb 34fee1adfa Polish 6 years ago
Andy Wilkinson c5c53849ce Merge branch '2.1.x' 6 years ago
Andy Wilkinson ca0119950f Align with new fail-fast behaviour in Micrometer 1.1.4
Closes gh-16425
6 years ago
Phillip Webb 2376f973f4 Merge branch '2.1.x' 6 years ago
Phillip Webb 47c6bf741d Merge branch '2.0.x' into 2.1.x 6 years ago
Phillip Webb 07c000c5b7 Merge branch '1.5.x' into 2.0.x 6 years ago
Stephane Nicoll 8c8a088c20 Fix zip structure of Actuator documentation
Closes gh-16326
6 years ago
Andy Wilkinson e1a6726d76 Polish "Update CORS handling according to Framework changes"
See gh-16410
6 years ago
Sebastien Deleuze 2f9db7eec6 Update CORS handling according to Framework changes
This commit updates CORS handling according to Framework changes
introduced via [1]. It also fixes tests according to the new behavior.

See gh-16410

[1] d27b5d0ab6.
6 years ago
Stephane Nicoll f4c4b1d3f0 Polish "Permit use of https for configuring Prometheus push gateway"
Closes gh-16084
6 years ago
Dmytro Nosan eed4e9ea56 Permit use of https for configuring Prometheus push gateway
See gh-16084
6 years ago
Stephane Nicoll 1bc47b7e74 Polish "Add Spring-specific styling to Actuator's API documentation"
Closes gh-16326
6 years ago
simionAndrei 26cfbe04b2 Add Spring-specific styling to Actuator's API documentation
This commit replaces the default Asciidoctor styling with
Spring specific styling.

First, we need to unzip the contents of the Spring Asciidoctor
documentation resources provided by the
`io.spring.docsresources:spring-docs-resources` distribution zip. This
is done in a `/target/refdocs` folder. We then copy all files from
`src/main/asciidoc` to the same location, and then launch the generation
process.

See gh-16326
6 years ago
Spring Operator fb242c27d2 Use HTTPS for external links wherever possible
See gh-16276
6 years ago
Andy Wilkinson 878a635bfb Merge branch '2.1.x' 6 years ago
Spring Operator 9fc3ac7d49 Use HTTPS for external links wherever possible
See gh-16320
6 years ago
Andy Wilkinson 864942ad4f Merge branch '2.0.x' into 2.1.x 6 years ago
Spring Operator 1a4c6f2dac Use HTTPS for external links wherever possible
See gh-16319
6 years ago
Andy Wilkinson ba4671f0ab Merge branch '1.5.x' into 2.0.x 6 years ago
Stephane Nicoll b055410ab4 Fix outdated tests
Closes gh-16298
6 years ago
Valery_Yalauchuk c880e10c41 Fix LogFile conditions to check for exposure as well
Closes gh-16298
6 years ago
Stephane Nicoll 76ca467d92 Merge branch '2.1.x' 6 years ago
Stephane Nicoll bd2cc6f48b Add missing condition on LogFile endpoint
See gh-16298
6 years ago
Andy Wilkinson 36c1c051b8 Merge branch '2.1.x' 6 years ago
Andy Wilkinson e23f72c8b0 Merge branch '2.0.x' into 2.1.x 6 years ago
Andy Wilkinson 9fbd38ab3c Merge branch '1.5.x' into 2.0.x 6 years ago
Andy Wilkinson b828b398b5 Merge branch '2.1.x' 6 years ago
Andy Wilkinson a36aa67b52 Merge branch '2.0.x' into 2.1.x 6 years ago
Spring Operator 3e2b6ac8ed Update build and setup configuration to use HTTPS
See gh-16246
6 years ago
Madhura Bhave 3d0219c315 Merge branch '2.1.x' 6 years ago
Johnny Lim c5b5f752ed Polish
Closes gh-16219
6 years ago
Stephane Nicoll c115ee1550 Fix build failure 6 years ago
Stephane Nicoll 0e0ea7f00a Fix checkstyle violation 6 years ago
Stephane Nicoll fcdc414646 Remove use of `@Autowired` for configuration properties bean
See gh-8762
6 years ago
Madhura Bhave 223f2be7d2 Inject InfoContributors instead of exposing them on InfoEndpoint
Closes gh-13586
6 years ago
Stephane Nicoll 81def1f21d Polish 6 years ago
Madhura Bhave e8cb75bba8 Enable git remote linking automatically on CF
Closes gh-13586
6 years ago
Andy Wilkinson 68bfb020aa Reduce need for bean method proxying and disable where not needed
Closes gh-9068
6 years ago
Andy Wilkinson 4b98fa7d94 Alias proxyBeanMethods on annotations meta-annotated with @Configuration
Closes gh-16201
6 years ago
Phillip Webb 64a2e8d67f Update copyright year for changed files 6 years ago
Phillip Webb dd3e8154d9 Merge branch '2.1.x' 6 years ago
Phillip Webb fc3aa43cc2 Update copyright year for changed files 6 years ago
Phillip Webb f02887b6c6 Merge branch '2.0.x' into 2.1.x 6 years ago
Phillip Webb 9c3af103e0 Fix ScheduledTasksEndpointAutoConfigurationTests
Update the `CustomEndpointConfiguration` class in
`ScheduledTasksEndpointAutoConfigurationTests` to be package private
so that it can be enhanced by cglib.

Prior to merge commit 361437f4 the class was a lite configuration so
it didn't matter that it was a private class.
6 years ago
Andy Wilkinson aa2008bc5a Merge branch '2.1.x' 6 years ago
Andy Wilkinson 8c3cec8f13 Merge branch '2.0.x' into 2.1.x 6 years ago
Andy Wilkinson 361437f4e2 Merge branch '1.5.x' into 2.0.x 6 years ago
Stephane Nicoll 430571b37b Perform binding at creation time if possible
Previously, environment binding always happened in a post processor once
the bean has been created. Constructor binding requires to perform the
binding at creating time so this commit performs binding at creation
time if possible.

When this happens, a special `ConfigurationPropertiesBeanDefinition` is
created with a supplier that invokes the binder. To avoid a case where
a bean is processed twice, the post-processor now ignores any bean that
has already been bound to the environment.

Closes gh-8762

Co-authored-by: Madhura Bhave <mbhave@pivotal.io>
6 years ago
Brian Clozel 8325fce53e Fix formatting 6 years ago
Brian Clozel 6586bae889 Guard Endpoint bean declarations with ConditionalOnExposedEndpoint
This commit adds the newly introduced `@ConditionalOnExposedEndpoint`
conditional annotation to all auto-configured `Endpoint` in Actuator.

With that change, `EndPoint` instances and related infrastructure will
only be created when they are meant to be exposed and used. This will
save CPU and memory resources when Actuator is present.

Closes gh-16093
6 years ago
Brian Clozel 4ffbe6c9e8 Add @ConditionalOnExposedEndpoint condition
Prior to this commit, Actuator `Endpoint` instantiations would be
guarded by `@ConditionalOnEnabledEnpoint` condition annotations. This
feature saves resources as disabled endpoints aren't unnecessarily
instantiated.

By default, only `"health"` and `"info"` endpoints are exposed over the
web and all endpoints are exposed over JMX.

As of gh-16090, JMX is now disabled by default. This is an opportunity
to avoid instantiating endpoints if they won't be exposed at all, which
is more likely due to the exposure defaults.

This commit adds a new `@ConditionalOnExposedEndpoint` conditional
annotation that checks the `Environment` for configuration properties
under `"management.endpoints.web.exposure.*"` and
`"management.endpoints.jmx.exposure.*"`. In the case of JMX, an
additional check is perfomed, checking that JMX is enabled first.
The rules implemented in the condition itself are following the ones
described in `ExposeExcludePropertyEndpointFilter`.

See gh-16093
6 years ago
Andy Wilkinson 0959698c32 Upgrade to Jersey 2.28
Closes gh-16114
6 years ago
Andy Wilkinson d6a869fa98 Switch to Jakarta EE API dependencies where possible
Closes gh-16113
Closes gh-16112
Closes gh-16111
Closes gh-15916
Closes gh-15689
6 years ago
Brian Clozel ce9626d00f Disable JMX by default
This commit switches the default value for the `spring.jmx.enabled`
configuration property.
JMX is now disabled by default and can be enabled with
`spring.jmx.enabled=true`.

Closes gh-16090
6 years ago
Stephane Nicoll 715db153e3 Polish "Remove code deprecated in 2.1"
Closes gh-16013
6 years ago
Stephane Nicoll 7b0004d6c3 Fix formatting 6 years ago
Andy Wilkinson f2e3e274a8 Merge branch '2.1.x' 6 years ago
Andy Wilkinson 53326695ea Polish 6 years ago
Madhura Bhave 6f045d8891 Merge branch '2.1.x' 6 years ago
Madhura Bhave c3e47541ad EndpointRequest should check that the request is to the mgmt context
Fixes gh-15702
6 years ago
Andy Wilkinson de0c065625 Inject single-use configuration dependencies into bean methods
Closes gh-15751
6 years ago
Andy Wilkinson e6764bdc5a Merge branch '2.1.x' 6 years ago
Andy Wilkinson 55426208ab Provide type information for optional thread dump endpoint response fields
Closes gh-15989
6 years ago
Madhura Bhave 862ffcbbf4 Merge branch '2.1.x' 6 years ago
Madhura Bhave bbe555a4f5 Split Jersey management context configuration
This commit splits the management context configuration for jersey
into two separate configurations depending on if the type is SAME or
CHILD. The configuration for the SAME context should only kick in if
there is no existing ResourceConfig bean.

Fixes gh-15891
6 years ago
Andy Wilkinson 22192c2b5c Polish "Make auto-config of RestTemplate metrics back off with no builder bean"
Closes gh-15842
6 years ago
Raheela 8f3c4dbc64 Make auto-config of RestTemplate metrics back off with no builder bean
See gh-15842
6 years ago
Madhura Bhave 4d69e127c8 Merge branch '2.1.x' 6 years ago
Madhura Bhave 26da45aa9a Configure a JerseyApplicationPath bean for the actuators
This commit also ensures that Jersey-based actuator endpoints are
available before the user has configured a `ResourceConfig` bean

Fixes gh-15625
Fixes gh-15877
6 years ago
Stephane Nicoll 380d7ec01c Merge branch '2.1.x' 6 years ago
Johnny Lim 885c28891b Polish
Closes gh-15873
6 years ago
Andy Wilkinson ecb7e240eb Merge branch '2.1.x' 6 years ago
Andy Wilkinson 59c66eaf41 Correct documented path for locked synchronizer's identity hashcode
Closes gh-15847
6 years ago
Andy Wilkinson ebcc53a9b7 Include tasks with custom triggers in scheduledtasks endpoint output
Closes gh-15815
6 years ago
Stephane Nicoll 002fa405a8 Merge branch '2.1.x' 6 years ago
Stephane Nicoll ede23caace Polish "Inject Map directly rather than via ObjectProvider"
Closes gh-15798
6 years ago
ayudovin 3a2e85ce75 Inject Map directly rather than via ObjectProvider
See gh-15798
6 years ago
Andy Wilkinson f23a0a5969 Inject InfoContributorProperties more precisely
Closes gh-15750
6 years ago
Stephane Nicoll 6baa6b291e Polish contribution
Closes gh-15695
6 years ago
Johnny Lim af3ed9ff9f Polish
See gh-15695
6 years ago
Phillip Webb 2f77ef7722 Merge branch '2.1.x' 6 years ago
Phillip Webb 9e58942698 Update copyright year for changed files 6 years ago
Phillip Webb 6a901199f5 Polish 6 years ago
Stephane Nicoll 5e736c0d1f Merge branch '2.1.x' 6 years ago
Stephane Nicoll 6ad01a6dfc Optimize ConditionalOnEnabledEndpoint usage
Closes gh-15451
6 years ago
Stephane Nicoll 2d2aa96c05 Allow ConditionalOnEnabledEndpoint to be set at class level
See gh-15451
6 years ago
Madhura Bhave 2dc7a89bd4 Merge branch '2.1.x' 6 years ago
Madhura Bhave 5b990605dc Polish "Order actuator security config after resource-server config"
Closes gh-15472
6 years ago
Stephen Doxsee 4597e7cc82 Order actuator security config after resource-server config
See gh-15472
6 years ago
Stephane Nicoll d57f831f50 Polish "Use Optional value in more functional style"
Closes gh-15575
6 years ago
igor-suhorukov 8ced867e95 Use Optional value in more functional style
See gh-15575
6 years ago
Stephane Nicoll fd12e696b0 Polish "Replace redundant call to class isInstance() with instanceof"
Closes gh-15554
6 years ago
igor-suhorukov 7424f48803 Replace redundant call to class isInstance() with instanceof
See gh-15554
6 years ago
Stephane Nicoll 9d67400afa Merge branch '2.1.x' 6 years ago
igor-suhorukov e578d30722 Replace anonymous inner class with lambda
See gh-15438
6 years ago
Andy Wilkinson 3a7406fe3a Merge branch '2.0.x' into 2.1.x 6 years ago
Andy Wilkinson 0741c90489 Avoid blocking on a Mono indefinitely
Closes gh-15535
6 years ago
Andy Wilkinson 9d2d6d5812 Merge branch '2.1.x' 6 years ago
Andy Wilkinson 9a33d1a2f9 Merge branch '2.0.x' into 2.1.x 6 years ago
Andy Wilkinson 8c68da0882 Avoid blocking on a Mono indefinitely
Closes gh-15535
6 years ago
Andy Wilkinson de599819ae Merge branch '2.1.x' 6 years ago
Andy Wilkinson 33fb1fa9a3 Avoid creating meter binders before registry has been customized
Previously, MeterRegistryPostProcessor would trigger the creation of all
meter binders and meter registry customizers before applying the
customizers and calling the binders. In some situations with complex
dependency graphs where the creation of a binder and the injection of
its dependencies inadvertently triggered some meter binding, this
could result in meters being bound before the registry had been
customized.

This commit reworks MeterRegistryPostProcessor and MeterRegistryConfigurer
to defer the retrieval of registry customizers and meter binders until
just before they are needed. As a result, customizers are now retrieved
and applied before the binders are retrieved.

Closes gh-15483
6 years ago
Andy Wilkinson 064f6478df Move back to JUnit 4 until SUREFIRE-1614 has been resolved
See gh-14736
See gh-14737
See gh-14738
6 years ago
Andy Wilkinson 2b453bbb16 Minimise dependencies on Log4j2
Closes gh-15441
6 years ago
Andy Wilkinson 71b29684b3 Remove redundant field type configuration
See gh-15435
6 years ago
Andy Wilkinson 55d7c19c06 Merge branch '2.1.x' 6 years ago
Andy Wilkinson d05ae40c99 Remove redundant field type and optional configuration
See gh-15435
6 years ago
Andy Wilkinson 393decff35 Merge branch '2.1.x' 6 years ago
Andy Wilkinson ef4ea591b3 Mark nested optional fields as optional
See gh-15435
6 years ago
igor-suhorukov 2b1653d009 Simplify code by using try-with-resources statement
Closes gh-15427
6 years ago
igor-suhorukov 5c1813aef8 Replace this lambda with a method reference
See gh-15401
6 years ago
Madhura Bhave 59d2b0a3fb Upgrade tests to Junit5
See gh-14737
6 years ago
Andy Wilkinson 5c986b5030 Merge branch '2.1.x' 6 years ago
Andy Wilkinson 42b58f6d27 Add JAXB API dependency that is no longer transitive via testcontainers
See gh-15371
6 years ago
Andy Wilkinson 0f474ec08f Merge branch '2.1.x' 6 years ago
Andy Wilkinson 07065532fe Replace accidental use of code shaded by Testcontainers
See gh-15371
6 years ago
dreis2211 f57f16c190 Avoid premature declaration of variables
Closes gh-15215
6 years ago
Stephane Nicoll 7939b8b4da Polish "Rename logging.file to logging.file.name"
Closes gh-15089
6 years ago
TwinProduction 21da4a5d12 Rename logging.file to logging.file.name
See gh-15089
6 years ago
Phillip Webb ba1ef52e39 Merge branch '2.0.x' 6 years ago
Phillip Webb 74376aa023 Polish 6 years ago
Madhura Bhave 427d494d57 Merge branch '2.0.x' 6 years ago
Madhura Bhave 02a1c43587 Fix tests 6 years ago
Madhura Bhave fc6c07ad3c Merge branch '2.0.x' 6 years ago
Madhura Bhave decaacddce Account for application path for Jersey servlet endpoints
Closes gh-14895
6 years ago
Brian Clozel d12e42e8d5 Polish
Closes gh-15211
6 years ago
artsiom 0a4ba499df Add Actuator health checks for Elasticsearch REST clients
This commit adds `ElasticsearchRestHealthIndicator`, a new
`HealthIndicator` for Elasticsearch, using the Elasticsearch "low level
rest client" provided by the
`"org.elasticsearch.client:elasticsearch-rest-client"` dependency.

Note that Spring Boot will auto-configure both low and high level REST
clients, but since the high level one is using the former, a single
health indicator will cover both cases.

See gh-15211
6 years ago
Stephane Nicoll 114347107e Polish key description 6 years ago
Alon Bar-Lev 108f28417e Allow to disable SSL client authentication on the management port
When server and management are at different ports, and when server
requires TLS client authentication, then there is no simple method to
disable TLS client authentication for management port.

This commit adds an additional "none" option to ssl.client-auth.

Example:

    server.port=8080
    server.ssl.enabled=true
    server.ssl.client-auth=need
    management.server.port=8081
    management.server.ssl.enabled=true
    management.server.ssl.client-auth=none

See gh-14985
6 years ago
Stephane Nicoll 476fe6ed17 Stop configuring metrics if hibernate is not available
Closes gh-15317
6 years ago
Stephane Nicoll 5f145ac482 Merge branch '2.0.x' 6 years ago
Stephane Nicoll b103e0c869 Polish "Unwrap DataSource target rather than plain instanceof calls"
Closes gh-15227
6 years ago
dreis2211 17f04b8b75 Replace DirectFieldAccessor usages by hasFieldOrPropertyWithValue
Closes gh-15312
6 years ago
Andy Wilkinson dad6d4beca Merge branch '2.0.x' 6 years ago
Andy Wilkinson 2b22b23aad Polish 6 years ago
Andy Wilkinson 1c4a26557c Polish 6 years ago
Andy Wilkinson c1bbcb6908 Merge branch '2.0.x' 6 years ago
Andy Wilkinson 4bc32e6358 Use a HandlerInterceptor for timing long tasks
Closes gh-15204
6 years ago
Andy Wilkinson 5a246ce24d Merge branch '2.0.x' 6 years ago
Andy Wilkinson 8772f90e2f Polish 6 years ago
Andy Wilkinson 1797040e1a Merge branch '2.0.x' 6 years ago
Andy Wilkinson a54de61e61 Polish
Revert change inadvertently committed as part of gh-15017
6 years ago
Andy Wilkinson deeb961c6e Merge branch '2.0.x' 6 years ago
Andy Wilkinson 1f39b5dd7a Align MeterRegistryConfigurer's javadoc with its implementation
Closes gh-15017
6 years ago
Phillip Webb dbf09de203 Merge branch '2.0.x' 6 years ago
Phillip Webb e87664f295 Add JettyAccessLogCustomizer
Add a `JettyAccessLogCustomizer` to customize management access logs
when the management server is running on a different port.

Closes gh-15041
6 years ago
Phillip Webb c64a007e12 Format POM file 6 years ago
Brian Clozel 8e86bcafc1 Improve actuator endpoint mapping debug logging
Closes gh-14292
6 years ago
dreis2211 3b4b0641d9 Polish some Map operations
Closes gh-15153
6 years ago
Johnny Lim fd5aa3ebf1 Polish
See gh-15134
6 years ago
Stephane Nicoll 2c3b455b8b Merge branch '2.0.x' 6 years ago
Johnny Lim 8470d649bc Polish
See gh-15134
6 years ago
Stephane Nicoll f42a653604 Merge branch '2.0.x' 6 years ago
Stephane Nicoll f5ba9952db Make UndertowAccessLogCustomizer conditional on class
Closes gh-15065
6 years ago
Phillip Webb f3fa20b2d1 Polish 6 years ago
Andy Wilkinson 290e8886c9 Polish "Handle StepRegistry connect/read timeout deprecation"
Closes gh-14886
6 years ago
artsiom fe63342f52 Handle StepRegistry connect/read timeout deprecation
See gh-14886
6 years ago
Andy Wilkinson de674db454 Merge branch '2.0.x' 6 years ago
dreis2211 62ca9e47b8 Use MeterRegistry.isClosed() for tests
Closes gh-14975
6 years ago
dreis2211 fb03139c59 Fix MetricsAutoConfigurationTests
Closes gh-14972
6 years ago
Phillip Webb c393f6262e Merge branch '2.0.x' 6 years ago
Phillip Webb 33c7a74bee Update copyright year for changed files 6 years ago
Vedran Pavic 6e967fe860 Upgrade to Hazelcast 3.11
Closes gh-14949
6 years ago
dreis2211 4857b45ea5 Replace lambdas with method reference or call
Closes gh-14937
6 years ago
Andy Wilkinson 4d9714a0cb Start building against Micrometer snapshots for 1.1.0
See gh-14890
6 years ago
Andy Wilkinson cefc7842d6 Merge branch '2.0.x' 6 years ago
Andy Wilkinson 9b8ead825c Polish 6 years ago
Andy Wilkinson 3177584588 Back off auto-config of Log4J2Metrics when context is backed by SLF4J
Closes gh-14883
6 years ago
Johnny Lim c8c3f59e93 Polish
Closes gh-14884
6 years ago
Stephane Nicoll 474da80b4d Revert "Restructure of security packages"
See gh-14412
6 years ago
Stephane Nicoll fd0e8815b1 Polish 6 years ago
Stephane Nicoll 5f2517f889 Auto-configure AppOptics metrics
Closes gh-14819
6 years ago
Stephane Nicoll 134682a7de Add error metadata for properties removed recently 6 years ago
Andy Wilkinson bd0a41d82d Merge branch '2.0.x' 6 years ago
Andy Wilkinson d4cad5e916 Polish "Servlet path not explicitly required for EndpointRequest"
Closes gh-14503
6 years ago
Madhura Bhave 0fd873f0f9 Servlet path not explicitly required for EndpointRequest 6 years ago
Andy Wilkinson 98d95268e1 Align with changes to CouchbaseReactiveHealthIndicator
Closes gh-14799
6 years ago
Johnny Lim 7f9671fd14 Polish
Closes gh-14843
6 years ago
Hanope c3f3240e2c Fix typos
closes gh-14844
6 years ago
Phillip Webb 29707bf75a Complete restructure of security packages
Complete the restructuring of the security auto-configuration
packages by removing the direct import of web configuration from
the main security auto-configuration.

Closes gh-14412
6 years ago
Madhura Bhave f835f82582 Preliminary restructure of security packages
Restructure the security auto-configuration packages to better reflect
the part of the system that the configuration applies to.

See gh-14412
6 years ago
Phillip Webb d558a1a762 Merge branch '2.0.x' 6 years ago
Phillip Webb 8ecb659a35 Deprecate SecurityPrerequisite
Deprecate `SecurityPrerequisite` interface since we don't support it
in Spring Boot 2.

Closes gh-14846
6 years ago
Phillip Webb 6b37d87497 Allow multiple endpoint PathMapper beans
Update `WebEndpointDiscoverer` and related classes to that multiple
`PathMapper` beans can be registered. Mappers are now tried in order
until one returns a non-null value.

Closes gh-14841
6 years ago
Phillip Webb f0f999a27d Merge branch '2.0.x' 6 years ago
Phillip Webb 5d219bcd19 Polish 6 years ago
Phillip Webb 734e9e4b74 Merge branch '2.0.x' 6 years ago
Phillip Webb b25e222136 Retain original case when mapping endpoint paths
Update `MappingWebEndpointPathMapper` to keep the original case rather
than using a lower-case version.

Closes gh-14773
6 years ago
Stephane Nicoll e901a0bd0e Merge branch '2.0.x' 6 years ago
Stephane Nicoll 935d621a42 Fix mapping of Wavefront base properties
Closes gh-14839
6 years ago
Stephane Nicoll 94b2092218 Add base test for StepRegistryPropertiesConfigAdapter 6 years ago
Andy Wilkinson 1e2d5a1382 Auto-configure Micrometer's HumioMeterRegistry
Closes gh-14804
6 years ago
Stephane Nicoll edf4045c3b Add missing tests for Kairos config adapter
Closes gh-14821
6 years ago
Andy Wilkinson e53e8bf79f Merge branch '2.0.x' 6 years ago
Andy Wilkinson 0fedf8d2af Keep Liquibase-specific DataSource open for use by LiquibaseEndpoint
Closes gh-13832
6 years ago
Andy Wilkinson a4eb636913 Merge branch '2.0.x' 6 years ago
Andy Wilkinson 6d98851fb5 Use Couchbase's DiagnosticsReport to determine its health
Previously, Couchbase's health was determined by retrieving the bucket info
from the cluster info. This retrieval could take over one minute in some
cases even when Couchbase is health. This latency is too large for a health
check.

The Couchbase team have recommended the of a Cluster#diagnostics instead.
This provides a much lower latency view of the cluster's health. This
commit updates CouchbaseHealthIndicator to use Cluster#diagnostics while
retaining support, in a deprecated form, for the old info-based mechanism
should anyone want to opt back into that in 2.0.x.

Closes gh-14685
6 years ago
Stephane Nicoll 89349c6eb9 Auto-configure KairosDB metrics
Closes gh-14821
6 years ago
Stephane Nicoll 1a0d53dec0 Replace ReflectionTestUtils usage by hasFieldOrPropertyWithValue
Closes gh-14696
6 years ago
Phillip Webb 18319ac276 Remove deprecated Endpoint ID methods
See gh-14773
6 years ago
Phillip Webb 1bf97e9b5e Merge branch '2.0.x' 6 years ago
Phillip Webb a00ee15e16 Use lowercase default endpoint paths
Update `MappingWebEndpointPathMapper` to use the lowercase version of
the endpoint ID when no explicit path mapping has been set. An endpoint
with the ID 'myEndpoint' will now be mapped to the path 'myendpoint'.

See gh-14773
6 years ago
Phillip Webb df5dfbf4be Support mixed case endpoint includes/excludes
Update `ExposeExcludePropertyEndpointFilter` so that mixed case
endpoint IDs are supported. Prior to this commit it was not easy for
an endpoint to be missed by the filter due to the formatting of the
property value.

See gh-14773
6 years ago
Phillip Webb 674a909bab Support mixed case endpoint IDs with enabled
Update `OnEnabledEndpointCondition` so that mixed case endpoint IDs
are supported. Prior to this commit an
`InvalidConfigurationPropertyNameException` would be thrown when trying
to enabled or disable an endpoint with a camel case ID.

See gh-14773
6 years ago
Phillip Webb 138d85477d Support mixed case endpoint IDs with time-to-live
Update the endpoint time-to-live binding logic so that mixed case
endpoint IDs are supported. Prior to this commit an
`InvalidConfigurationPropertyNameException` would be thrown when using
a camel case endpoint ID.

See gh-14773
6 years ago
Phillip Webb 3105a38884 Introduce EndpointID to enforce naming rules
Add an `EndpointID` class to enforce the naming rules that we support
for actuator endpoints. We now ensure that all endpoint names contain
only letters and numbers and must begin with a lower-case letter.

Existing public classes and interfaces have been changes so that String
based `endpointId` methods are deprecated and strongly typed versions
are preferred instead. A few public classes that we're not expecting
to be used directly have been changed without deprecated methods being
introduced.

See gh-14773
6 years ago
Phillip Webb c5786c218d Polish 6 years ago
Andy Wilkinson 7ad94299d6 Stop relying on server customizer ordering for Tomcat metrics binding
Closes gh-14784
6 years ago
Andy Wilkinson 2b11ee4389 Auto-configure binding of Micrometer's JettyServerThreadPoolMetrics
Closes gh-14591
6 years ago
Madhura Bhave 6df9555d6a Update micrometer tests following upstream changes 6 years ago
Stephane Nicoll 0ff1b25f52 Polish "Improve Micrometer histogram properties support"
Closes gh-14139
6 years ago
Alexander Abramov c1c79ab1c2 Improve Micrometer histogram properties support
This commit adds configuration properties for Micrometer histogram
settings: "minimumExpectedValue" and "maximumExpectedValue".

See gh-14139
6 years ago
Andy Wilkinson 19232ad87a Merge branch '2.0.x' 6 years ago
Andy Wilkinson 861587ec78 Allow @ConditionalOnEnabledEndpoint to be used on any component
Closes gh-14787
6 years ago
Andy Wilkinson 5e3b5ae14f Polish
See gh-14780 and gh-14467
6 years ago
Andy Wilkinson 5f0d7dd6c7 Merge branch '2.0.x' 6 years ago
Andy Wilkinson 2a2908e74e Order MeterFilters and MeterRegistryCustomizers
Closes gh-14780
6 years ago
Phillip Webb 60719bd982 Upgrade to Dropwizard Metrics 4.0.3
Closes gh-14428
6 years ago
Andy Wilkinson 2216b78f1e Merge branch '2.0.x' 6 years ago
Andy Wilkinson d3b3c8c64e Honour management.metrics.web.server.auto-time-requests with WebFlux
Closes gh-13895
6 years ago
Stephane Nicoll 7da3396555 Merge branch '2.0.x' 6 years ago
dreis2211 55ec016bac Remove unused fields in tests
Closes gh-14707
6 years ago
Phillip Webb 20ecf73cd1 Polish "Add Prometheus push gateway support"
Rework Prometheus push gateway support so that the central class can
be used outside of auto-configuration. The shutdown flags have also
been replaced with a single "shutdown-operation" property since it's
unlikely that both "push" and "delete" will be required.

It's also possible now to supply a `TaskScheduler` to the manager.

See gh-14353
6 years ago
David J. M. Karlsen 4e71981f77 Add Prometheus push gateway support
Add support for Prometheus push gateway so that short lived processes
(for example batch jobs) can still submit metrics to Prometheus.

Closes gh-14353
6 years ago
Stephane Nicoll 35752a54d2 Adapt to latest change in Micrometer 1.1 6 years ago
Phillip Webb 01b8667dd7 Update copyright year for changed files 6 years ago
Andy Wilkinson 72e2313fe8 Polish "Auto-configure Micrometer's Jersey 2 server instrumentation"
Closes gh-12482
6 years ago
Michael Weirauch dd126faf5a Auto-configure Micrometer's Jersey 2 server instrumentation
See gh-12482

Co-authored-by: Michael J. Simons <michael@simons.ac>
6 years ago
Stephane Nicoll bdd8e53124 Improve filtering of actuator auto-configurations
This commit splits auto-configurations that require different
environments so that they can be filtered early.

Closes gh-12260
6 years ago
Stephane Nicoll 91b4dc2f69 Polish "Add reactive health indicator for Couchbase"
Closes gh-13926
6 years ago
Mikalai Lushchytski 20ff0d97e4 Add reactive health indicator for Couchbase
See gh-13926
6 years ago
Andy Wilkinson c9da881322 Polish "Drop support for "all" from management.metrics.distribution.sla"
Closes gh-14684
6 years ago
artsiom ccb964e886 Drop support for "all" from management.metrics.distribution.sla
See gh-14684
6 years ago
Andy Wilkinson ef7c2bc6ea Merge branch '2.0.x' 6 years ago
Andy Wilkinson e7f100d5d7 Improve test coverage of PropertiesMeterFilter
Closes gh-14689
6 years ago
Stephane Nicoll 5d0e812afe Merge branch '2.0.x' 6 years ago
Stephane Nicoll 1b10d3fcbf Fix missing metadata for nested POJO
This commit fixes missing descriptions and default values when
applicable for `management.server.ssl`, `server.compression`,
`server.http2`, `server.servlet.jsp`, `server.servlet.session` and
`server.ssl`.

Those nested namespace are managed by a POJO that is declared outside
of the module of the target @ConfigurationProperties type using it. As
a result, the annotation processor has no access to the source model and
can't extract the description and the default value, if any.

This commit migrates the misleading field-level Javadoc to manual meta
data for the time being.

Closes gh-14669
6 years ago
Phillip Webb d76bba5e6f Migrate from ExpectedException rule to AssertJ
Replace ExpectedException JUnit rules with AssertJ exception
assertions.

Closes gh-14336
6 years ago
Johnny Lim 1e756db966 Use Commons Logging for OnlyOnceLoggingDenyMeterFilter
Closes gh-14637
6 years ago
Johnny Lim 698bbd6a9e Polish
Closes gh-14597
6 years ago
Hanope e5ed5ebf8b Fix "Query Parameters" section name
Closes gh-14600
6 years ago
Stephane Nicoll 5765ed00e8 Polish 6 years ago
Andy Wilkinson 6e00d13d68 Polish 6 years ago
Andy Wilkinson 4c3e2d10d1 Auto-configure Micrometer's Elastic registry
Closes gh-14523
6 years ago
Andy Wilkinson 95ecbc736b Update example for disk space health indicator to use DataSize
See gh-14549
6 years ago
Stephane Nicoll 47f9379305 Adapt to changes in latest Micrometer snapshot
See gh-14522
6 years ago
Andy Wilkinson 977f8b4479 Auto-configure Micrometer's Kafka consumer metrics
Closes gh-14525
6 years ago
Stephane Nicoll cbae22f0c9 Polish "Migrate size properties to DataSize"
Closes gh-14549
6 years ago
Andy Wilkinson 258c4838b1 Auto-configure Micrometer's Log4j2 metrics
Closes gh-14524
6 years ago
Andy Wilkinson fe75f966ff Auto-configure Micrometer's Dynatrace meter registry
Closes gh-14522
6 years ago
Andy Wilkinson 426ff3ada7 Store ObjectProvider rather than their Streams to allow reuse
Generally speaking, methods on configuration classes will only be called once
and, therefore, it should be safe to hold a reference to a Stream for later
one-time usage. However, there are some scenarios in Spring Fu where functional
registration results in an attempt being made to use a Stream more than use.

This commit protects against multiple use by storing the ObjectProvider and
getting a new ordered Stream each time it's needed.

Closes gh-14467
6 years ago
Andy Wilkinson cc6cf880cf Stop using ObjectProvider<List> and ObjectProvider<Collection>
Closes gh-14467
6 years ago
Phillip Webb bb19d5690c Fix spring-boot-actuator-autoconfigure test logs
Add log4j to `spring-boot-actuator-autoconfigure` test scope so that
we get valid log output.

See gh-14148
6 years ago
Madhura Bhave 6c1915e81f Merge branch '2.0.x' 6 years ago
Madhura Bhave 7af6665a0e Ignore management.server.port for war
Fixes gh-14148
6 years ago
Stephane Nicoll a170bfcc76 Deprecate micrometer meter's enabled flags
This commit deprecates the few 'enabled' flags that control whether
certain meter binders are registered in the context.

Metrics auto-configuration for the JVM, Logback and System-related
information have been moved to individual auto-configurations so that
they can be excluded rather than using the now deprecated flag.

This harmonizes our policy with regards to disabling behaviour,
especially since other similar auto-configurations do not have such
flag.

Closes gh-13408
6 years ago
Stephane Nicoll 45ef926a90 Merge branch '2.0.x' 6 years ago
Stephane Nicoll ff8b8c55c6 Remove reference to "management.metrics.binders.integration.enabled"
Closes gh-14319
6 years ago
Phillip Webb c3de4c84f2 Polish 6 years ago
Madhura Bhave f0d7533e0b Merge branch '2.0.x' 6 years ago
Madhura Bhave 9c82d5c382 Make ApplicationContextServerWebExchangeMatcher and subclasses thread-safe
Fixes gh-14161
6 years ago
Andy Wilkinson 8ee4775820 Polish 6 years ago
Stephane Nicoll 1ceb076035 Harmonize Metrics test
This commit harmonizes metrics test to rely on `MetricRun.simple()`
rather than configuring a simple `MeterRegistry` manually. Rather than
applying related auto-configurations automatically, `MetricsRun` only
enable the absolute minimum.

See gh-14255
6 years ago
Stephane Nicoll 3d732e86f4 Merge branch '2.0.x' 6 years ago
Johnny Lim ca57e58ee5 Polish
See gh-14293
6 years ago
Stephane Nicoll 4634811c7c Polish 6 years ago
Stephane Nicoll 7bee9dfc22 Harmonize HTTP client metrics
This commit harmonizes the auto-configurations for RestTemplate and
WebClient in a single `HttpClientMetricsAutoConfiguration`. Doing so
allows to give a better scope for the shared `MeterFilter`.

As a result`WebClientMetricsAutoConfiguration` has moved to the `client`
package.

Closes gh-14269
6 years ago
Stephane Nicoll 6c26315cd1 Merge branch '2.0.x' 6 years ago
Stephane Nicoll 0625443d27 Polish "Limit metrics collection of incoming requests"
Closes gh-14173
6 years ago
Dmytro Nosan 81a6701914 Limit metrics collection of incoming requests
See gh-14173
6 years ago
dreis2211 422a436df1 Polish some Collectors
See gh-13727
6 years ago
Stephane Nicoll dd9209c7d9 Merge branch '2.0.x' 6 years ago
Stephane Nicoll 000cb94323 Polish "Fix String concatenation in a loop"
Closes gh-14153
6 years ago
Hiroaki Yoshida 43acc37587 Fix String concatenation in a loop
See gh-14153
6 years ago
Stephane Nicoll f5d922c712 Upgrade to Spring Integration 5.1.0.M2
Upgrade to M2 broke a test that was looking for a particular bean that
is configured by Spring Integration (`HeaderChannelRegistry`).

It looks like INT-4517 is related to the regression as it registers the
bean too late for the auto-configuration to see it.

This commit changes the condition to a more central bean that is created
very early on.

Closes gh-14142
6 years ago
Stephane Nicoll b60fbe5a1f Merge branch '2.0.x' 6 years ago
Stephane Nicoll b0d388830f Polish test 6 years ago
Vedran Pavic 644ab5f3e4 Align SessionsEndpoint with Spring Session API improvements
This commit aligns SessionsEndpoint with
FindByIndexNameSessionRepository API improvements that simplifies
retrieval of sessions by principal name.

Closes gh-14124
6 years ago
Madhura Bhave d724f154f4 Merge branch '2.0.x' 6 years ago
Madhura Bhave b93c2b9a9f Allow actuator endpoints to be used with mvcMatchers
This commit changes AbstractWebMvcEndpointHandlerMapping to
be a MatchableHandlerMapping. Additionally, EndpointRequest,
now delegates to MvcRequestMatcher for Spring MVC applications.

For all other applications, AntPathRequestMatcher is used as
a delegate.

Closes gh-13962
6 years ago
Johnny Lim 101cc59b7d Polish
Closes gh-14023
6 years ago
Stephane Nicoll a12ca0a0dc Merge branch '2.0.x' 6 years ago
Stephane Nicoll a023bd030a Add configurable timeout for Couchbase health indicator
This commit makes sure to use a configurable timeout to check if the
Couchbase cluster is up, rather than relying on the default that can be
quite long.

Closes gh-13879
6 years ago
Stephane Nicoll 14a9ec8711 Polish 6 years ago
Stephane Nicoll e6b44189e0 Polish "Add global support for JMX unique names"
This commit ensures that the new "spring.jmx.unique-names" property
deprecates the Endpoint's specific property as they share the same goal.

If both are set with an incompatible value, an exception is thrown
inviting the user to update their configuration.

Closes gh-13990
6 years ago
Stephane Nicoll 624c1306fd Merge branch '2.0.x' 6 years ago
Stephane Nicoll 737b4a275b Polish 6 years ago
Stephane Nicoll 0e750f982b Merge branch '2.0.x' 6 years ago
Johnny Lim 7b6b91aae7 Return null immediately when sla is null in convertSla()
Closes gh-13991
6 years ago
Phillip Webb 1b91c0ceb7 Merge branch '2.0.x' 6 years ago
Phillip Webb 0ec22c8bf9 Polish copyright date on changed files 6 years ago
Phillip Webb 80da9cf5eb Merge branch '2.0.x' 6 years ago
Phillip Webb aeb885192e Polish ternary expressions 6 years ago
Phillip Webb a6c9c92f2e Merge branch '2.0.x' 6 years ago
Phillip Webb e6a68b39a3 Fix checkstyle javadoc issues
Fix checkstyle issues in javadoc following the spring-javaformat
upgrade.

See gh-13932
6 years ago
Phillip Webb 7fc455654a Fix checkstyle ternary issues
Fix checkstyle issues with ternary expressions following the
spring-javaformat upgrade.

See gh-13932
6 years ago
Madhura Bhave f2a9030788 Merge branch '2.0.x' 6 years ago
Madhura Bhave e753b530fa EndpointRequest should match links with trailing slash
Fixes gh-13921
6 years ago
Phillip Webb b5b60c2053 Merge branch '2.0.x' 6 years ago
Phillip Webb 9a9111af21 Support path discovery for main dispatcher servlet
Add an `DispatcherServletPath` interface which provides a much more
consistent way to discover the path of the main dispatcher servet.

Prior to this commit, auto-configurations would often make use of the
`ServerProperties` class to discover the dispatcher servlet path. This
mechanism isn't very explicit and also makes it hard for us to relocate
that property in Spring Boot 2.1.

This commit also reverts most of fddc9e9c7e since it is now clear that
the supporting multiple dispatcher servlet paths will be much more
involved that we originally anticipated.

Closes gh-13834
6 years ago
Phillip Webb d37e717500 Polish 6 years ago
Stephane Nicoll 1e7aa7c4bc Fix Spring Integration imports 6 years ago
Stephane Nicoll af0aa11d15 Polish "Add reactive health indicator for Cassandra"
Closes gh-13864
6 years ago
artsiom 61c41555c8 Add reactive health indicator for Cassandra
See gh-13864
6 years ago
Stephane Nicoll 6dc0cb4f67 Merge branch '2.0.x' 6 years ago
Stephane Nicoll 7176c54f5e Polish "Add metric description and base unit to metrics endpoint"
Closes gh-13813
6 years ago
Johannes Edmeier ab1f8cf77b Add metric description and base unit to metrics endpoint
See gh-13813
6 years ago
Stephane Nicoll ecb8da2536 Polish "Upgrade to Micrometer 1.0.6"
Closes gh-13819
6 years ago
Jon Schneider f478911c54 Upgrade to Micrometer 1.0.6
See gh-13819
6 years ago
Madhura Bhave 9b6a069903 Merge branch '2.0.x' 6 years ago
Johnny Lim 86ccb26c58 Polish EndpointRequest.RequestMatcherFactory.antPath()
Closes gh-13775
6 years ago
Andy Wilkinson 6a189cee06 Merge branch '2.0.x' 6 years ago
Andy Wilkinson a57d0f0853 Reinstate order of WebMvcMetricsFilter
Closes gh-13781
6 years ago
Stephane Nicoll 070c26d6c3 Merge branch '2.0.x' 6 years ago
Stephane Nicoll d6c7eff8f7 Add check for empty values for lookup
Closes gh-13419
6 years ago
Johnny Lim 58df752af4 Polish
See gh-13790
6 years ago
Stephane Nicoll 43091150d8 Merge branch '2.0.x' 6 years ago
Johnny Lim f363fe7dd1 Polish
See gh-13790
6 years ago
Andy Wilkinson ac1f2a5817 Polish 6 years ago
Madhura Bhave d1b8558430 Make /health and /info insecure by default
Closes gh-13722
6 years ago
Stephane Nicoll fa171671b1 Merge branch '2.0.x' 6 years ago
Stephane Nicoll e6ea28dec5 Polish 6 years ago
Johnny Lim 13202eb278 Prevent duplicate RequestMatcher in RequestMatcherFactory.antPath()
Closes gh-13706
6 years ago
Johnny Lim f94ce495d8 Fix parameter order for RequestMatcherAssert.doesNotMatch()
Closes gh-13707
6 years ago
dreis2211 be837ccb4b Use PropertySources.stream() where possible
Closes gh-13724
6 years ago
Andy Wilkinson c1a81cfca0 Prohibit bean overriding by default and analyze override failures
Closes gh-13609
6 years ago
Johnny Lim b87b23a44f Fix parameter order for RequestMatcherAssert.doesNotMatch()
Closes gh-13707
6 years ago
Stephane Nicoll 60457f1d9a Merge branch '2.0.x' 6 years ago
Stephane Nicoll 44b9aa168e Polish "Improve description of Endpoint exclude"
Closes gh-13619
6 years ago
Miguel Gomes 838e6cdbbb Improve description of Endpoint exclude
See gh-13619
6 years ago
Brian Clozel 68a3c234be Adapt to API changes in Reactor Netty
The following issue changed the SSL configuration API for both client
and server: https://github.com/reactor/reactor-netty/issues/370
6 years ago
Andy Wilkinson fd624c20cf Upgrade to Hikaricp 3.2.0
Closes gh-13695
6 years ago
Andy Wilkinson b6b37c91bb Upgrade to Flyway 5.1.3
Closes gh-13672
6 years ago
Madhura Bhave 4eff07f6c0 Merge branch '2.0.x' 6 years ago
Madhura Bhave fddc9e9c7e Support multiple paths in DispatcherServletPathProvider
Closes gh-13603
6 years ago
Johnny Lim bb60edaca6 Polish
Closes gh-13534
7 years ago
Stephane Nicoll d4d169277d Merge branch '2.0.x' 7 years ago
Johnny Lim b9ea0fd5a7 Polish
See gh-13534
7 years ago
Stephane Nicoll 9d3ba14686 Fix conditions for CachingConnectionFactory support
Closes gh-12161
7 years ago
Stephane Nicoll defa171a32 Merge branch '2.0.x' 7 years ago
Johnny Lim dd3bfdbe42 Use @ManagementContextConfiguration consistently 7 years ago
Brian Clozel cb6c8f76e2 Configure X-Forwarded-* support with Reactor Netty
This commit configures the new X-Forwarded-* / Forwarded HTTP headers
support with Reactor Netty in its 0.8.0 version.

Closes gh-10900
7 years ago
Stephane Nicoll c738b73c6f Merge branch '2.0.x' 7 years ago
Johnny Lim 870d7fe16a Use @SpringBootTest.properties in tests and samples
Closes gh-13453
7 years ago
Madhura Bhave 6eaae608b5 Merge branch '2.0.x' 7 years ago
Madhura Bhave 461202bc25 EndpointRequest uses empty servlet path if not available
Fixes gh-13399
7 years ago
Stephane Nicoll 0d63e7f592 Merge branch '2.0.x' 7 years ago
dreis2211 ba8a32fa4e Replace commons-codec Base64 usage
See gh-13378
7 years ago
Phillip Webb 66be6c3396 Polish 7 years ago
Stephane Nicoll 83f7df920b Merge branch '2.0.x' 7 years ago
Stephane Nicoll bf56ec496d Polish 7 years ago
Stephane Nicoll 47634f5587 Polish 7 years ago
Stephane Nicoll 1901008d6f Merge branch '2.0.x' 7 years ago
Stephane Nicoll fff06822dc Polish 7 years ago
Stephane Nicoll d84e2b90d7 Fix wrong usage of ManagementContextConfiguration
Closes gh-13366
7 years ago
Stephane Nicoll 3248400665 Merge branch '2.0.x' 7 years ago
Stephane Nicoll b4f8361989 Make JMX metrics domain configurable
Closes gh-13356
7 years ago
Phillip Webb ade1397ea2 Merge branch '2.0.x' 7 years ago
Phillip Webb 571c50e43f Switch to functional web code to use static imports
Update the samples and tests to use the more idiomatic static import
style.
7 years ago
Brian Clozel bd8106d77f Upgrade to Spring Framework 5.1
As of Spring Framework 5.1, we're depending on the Reactor Californium
release train.
Reactor Netty is now at version 0.8 and changed its artifact
coordinates, package names and broke several APIs. Spring Framework is
now up-to-date with those changes and this commit does the same for
Spring Boot.

Note that in that process, the `NettyServerCustomizer` has been changed
since the former `HttpServerOptions.Builder` API is now gone from
Reactor Netty, and we're now relying on immutable server instances
instead of a stateful builder pattern.

See gh-13321
7 years ago
Andy Wilkinson 78b1a37d7d Merge branch '2.0.x' 7 years ago
Andy Wilkinson 68cd27c47b Do not require DataSourcePoolMetrics to auto-configure Hikari meters
Closes gh-13330
7 years ago
Vedran Pavic 205b1c1327 Upgrade to Hazelcast 3.10.1
Closes gh-13322
7 years ago
Johnny Lim 5d5a14e4f7 Make MetricsProperties fields final if possible
Closes gh-13324
7 years ago
Stephane Nicoll f06627c408 Allow CompositeHealthIndicator to be created with a Map as before
See gh-4965
7 years ago
Johnny Lim de01e7aad4 Polish
See gh-13243
7 years ago
Stephane Nicoll f91b53747a Merge branch '2.0.x' 7 years ago
Johnny Lim f385a1cb11 Polish
Closes gh-13243
7 years ago
Phillip Webb 3702da4573 Formatting 7 years ago
Phillip Webb 2215709165 Merge branch '2.0.x' 7 years ago
Phillip Webb 9fd3b9103a Format code 7 years ago
Madhura Bhave 940c3d1b75 Merge branch '2.0.x' 7 years ago
Madhura Bhave 552878c431 Fix javadoc 7 years ago
Stephane Nicoll 4464a5f5bd Remove code deprecated in 2.0
Closes gh-12962
7 years ago
Phillip Webb c5f63c19a4 Merge branch '2.0.x' 7 years ago
Phillip Webb 2dc4f1df00 Polish 7 years ago
Stephane Nicoll 27c60e3deb Merge branch '2.0.x' 7 years ago
Stephane Nicoll 48cf025093 Polish 7 years ago
Stephane Nicoll d35d221b5c Merge branch '2.0.x' 7 years ago
Stephane Nicoll 6893be5479 Make sure that RabbitMQ metrics are configured early
The ConnectionFactory can be used early in user configuration to
configure an `Exchange`. Such connection may not hold the proper
MetricCollector and can be cached, leading to missed metrics
information.

This commit moves the configuration of RabbitMQ metrics to a
BeanPostProcessor so that the proper MetricCollector is configured
before any connection is created.

Closes gh-12855
7 years ago
Stephane Nicoll b51b997b70 Run specific health check
This commit improves the `health` endpoint to run health check for a
particular component or, if that component is itself a composite, an
instance of that component.

Concretely, it is now possible to issue a `GET` on
`/actuator/health/{component}` and
`/actuator/health/{component}/instance` to retrieve the health of a
component or an instance of a composite component, respectively.

If details cannot be showed for the current user, any request leads to a
404 and does not invoke the health check at all.

Closes gh-8865
7 years ago
Stephane Nicoll 2c176a3770 Add support for ReactiveHealthIndicatorRegistry
This commit updates the initial proposal to add support for reactive
use cases as well. A reactive application can use
ReactiveHealthIndicatorRegistry as an alternative to
HealthIndicatorRegistry.

Closes gh-4965
7 years ago
Stephane Nicoll 95b251590e Polish "Introduce HealthIndicatorRegistry"
See gh-4965

Co-authored-by: Andy Wilkinson <awilkinson@pivotal.io>
7 years ago
Vedran Pavic d829d522be Introduce HealthIndicatorRegistry
This commit introduces HealthIndicatorRegistry which handles
registration of HealthIndicator instances. Registering new
HealthIndicator instances is now possible in runtime.

See gh-4965
7 years ago
Stephane Nicoll 602f52fffc Add support for configuring common tags declaratively
Closes gh-12933
7 years ago
Vedran Pavic f81f50c119 Improve LDAP auto-configuration
Auto-configuration of LDAP's `LdapTemplate` is currently a part of
`LdapDataAutoConfiguration` which is conditional of presence of
`LdapRepository` (i.e. Spring Data LDAP). This arrangement isn't ideal
since the `LdapTemplate` is a part of Spring LDAP project, and therefore
should not be tied to Spring Data LDAP.

This commit improves and simplifies LDAP auto-configuration by moving
`LdapTemplate` configuration to `LdapAutoConfiguration`. Consequently,
`LdapDataAutoConfiguration` is not needed anymore and is removed.

See gh-13136
7 years ago
Andy Wilkinson a325b13d05 Polish "Auto-configure a ResourceConfig for Jersey endpoints if needed"
Closes gh-11948
7 years ago
Michael J. Simons bb2864ad02 Auto-configure a ResourceConfig for Jersey endpoints if needed
See gh-11948
7 years ago
Madhura Bhave ea99d8cab0 Merge branch '2.0.x' 7 years ago
Madhura Bhave 05cf8229d9 Fix tests 7 years ago
Madhura Bhave 36c89e2383 Merge branch '2.0.x' 7 years ago
Madhura Bhave c937bb68a0 ServletEndpoints should take servletPath into account
Fixes gh-13106
7 years ago
Madhura Bhave 36c7602f2a Merge branch '2.0.x' 7 years ago
Madhura Bhave 4ec87956f9 Fix EndpointRequest include/exclude for ServletEndpoints
Fixes gh-13089
7 years ago
Stephane Nicoll c72df104d8 Improve caches endpoint format
This commit adds an intermediate "caches" element so that additional
cache manager attributes can be added in the future.

Closes gh-13079
7 years ago
Andy Wilkinson a41c9eb736 Merge branch '2.0.x' 7 years ago
Andy Wilkinson e14a2e33ab Deprecate queue size property for StatsD metrics export
Closes gh-13108
7 years ago
Andy Wilkinson c826310fd1 Polish 7 years ago
Andy Wilkinson 3a3eeb0caf Merge branch '2.0.x' 7 years ago
Andy Wilkinson 8ce4110966 Allow Jersey-based Actuator to be used with separate management port
Previously, when the Jersey-based Actuator was configure with a
separate management port, the resulting child context would fail to
start due to their being no ResourceConfigCustomizer beans available.

This commit updates the configuration so that the customizer's are
injected using an ObjectProvider and an empty list is used in the
event of their being no customizer beans. This aligns the child
context configuration class with JerseyAutoConfiguration which
already used this approach.

Closes gh-12975
7 years ago
Stephane Nicoll 3ad8f3fcbf Merge branch '2.0.x' 7 years ago
Stephane Nicoll 9dccf5b895 Polish
See gh-13078
7 years ago
Phillip Webb c578a30e90 Polish 7 years ago
Phillip Webb cff552fb05 Merge branch '2.0.x' 7 years ago
Phillip Webb 6556bb2e89 Fix checkstyle violations 7 years ago
Phillip Webb a323a85e3b Merge branch '2.0.x' 7 years ago
Phillip Webb 975e986fef Polish 7 years ago
Madhura Bhave cdb5d76c7d Merge branch '2.0.x' 7 years ago
Madhura Bhave 469372c5ef Account for servlet path "/" in EndpointRequest
See gh-12934
7 years ago
Phillip Webb 7b120c1c97 Formatting 7 years ago
Phillip Webb 42c053cf1b Merge branch '2.0.x' 7 years ago
Phillip Webb 6de479fe6a Polish 7 years ago
Phillip Webb 93046d058d Polish 7 years ago
Madhura Bhave 6855c5556d EndpointRequest should consider server.servlet.path
Fixes gh-12934
7 years ago
Phillip Webb 5b3cb8a698 Update copyright header year for changed files 7 years ago
Phillip Webb 6e09e497f2 Formatting 7 years ago
Phillip Webb b6a2a46f78 Merge branch '2.0.x' 7 years ago
Phillip Webb 2d70a7ae5e Polish caught exception names
Prefer `ex` over `e`.
7 years ago
Phillip Webb 41efea51a7 Polish ternary expressions
Consistently format ternary expressions and always favor `!=` as the
the check.
7 years ago
Phillip Webb 8c0c0ee55a Merge branch '2.0.x' 7 years ago
Phillip Webb e125085993 Merge branch '1.5.x' into 2.0.x 7 years ago
Andy Wilkinson 0526594a3c Merge branch '2.0.x' 7 years ago
Stephane Nicoll 0fcffae0d9 Merge branch '2.0.x' 7 years ago
Johnny Lim d8700522d3 Rename nested *AutoConfiguration classes to *Configuration
Closes gh-12989
7 years ago
Stephane Nicoll fb8a5a9864 Polish "Add cache actuator endpoint"
This commit improves the initial proposal by providing a by name read
operation that returns the detail of a particular cache. It also adds
more tests and complete API documentation for the feature.

Closes gh-12216
7 years ago
Johannes Edmeier 1a57673345 Add cache actuator endpoint
This commits adds an actuator endpoint which lists the caches per
context and cacheManager and provides a delete operation to clear the
caches. As the statistics are exposed via the metrics endpoint they are
not included

See gh-12216
7 years ago
Brian Clozel 1ef0098ab5 Add WebClient metrics support
This commit adds support for Actuator Metrics for WebClient.
This support mirrors the current behavior for `RestTemplate`, reusing
the same metric name `"http.client.requests"` and tags.

`WebClient` is instrumented by a `MetricsWebClientFilterFunction` which
is applied by a `WebClientCustomizer`. This instrumentation happens
automatically only if you create an instance of `WebClient` using an
auto-configured `WebClient.Builder` bean.

This infrastructure is reusing de facto the `MeterFilter` that has been
added for `RestTemplate` in order to limit the "uri" tag cardinality.

Closes gh-12228
7 years ago
Johnny Lim b45c5f1a27 Polish
See gh-12981
7 years ago
Stephane Nicoll 03cf4fbb10 Polish "Add actuator endpoint for exposing the Spring Integration graph"
Closes gh-12331
7 years ago
Tim Ysewyn 8c67ef1079 Add actuator endpoint for exposing the Spring Integration graph
See gh-12331
7 years ago
Stephane Nicoll 518f41a4ae Improve @ConditionalOnEnabledEndpoint to be used on any component
This commit adds an `endpoint` attribute so that the condition can be
used on arbitrary components, not only endpoints or extensions.

Closes gh-12945
7 years ago
Stephane Nicoll 760b5e8510 Merge branch '2.0.x' 7 years ago
Johnny Lim a15319ee30 Remove ManagementServerProperties.addApplicationContextHeader
Closes gh-12926
7 years ago
Stephane Nicoll a85998f4c3 Polish "Add auto-configuration for Hibernate metrics"
Closes gh-12550
7 years ago
Rui Figueira b6b92ba937 Add auto-configuration for Hibernate metrics
All Hibernate entityManagerFactories are automatically instrumented
and their statistics are included into Micrometer using its
HibernateMetrics binder.

Closes gh-12550
7 years ago
dreis2211 2bbf438c36 Fix duplicate words in comments
Closes gh-12866
7 years ago
Stephane Nicoll 3c169b4e0a Fix bean name of EnvironmentEndpointWebExtension
Closes gh-12827
7 years ago
Johnny Lim f03849d502 Polish
See gh-12812
7 years ago
Andy Wilkinson 8d5b9f37d5 Merge branch '1.5.x' 7 years ago
Jon Schneider 03158e2fd5 Upgrade to Micrometer 1.0.3
Closes gh-12767
7 years ago
Phillip Webb 685babc829 Polish "Use lambdas for map entry iteration where possible"
Closes gh-12626
7 years ago
igor-suhorukov 69bc19e0ca Use lambdas for map entry iteration where possible
See gh-12626
7 years ago
Phillip Webb 598e9bb842 Polish 7 years ago
Phillip Webb ce9ca6ae70 Polish "Apply MeterRegistryCustomizer to composites"
Closes gh-12762
7 years ago
Jon Schneider 1fce462944 Apply MeterRegistryCustomizer to composites
Update `MeterRegistryConfigurer` to also apply customizers to
composite meter registries. Prior to this commit composites were
skipped due to the incorrect assumption that did not contain
their own state.

Closes gh-12762
7 years ago
Stephane Nicoll 7dbeaaa932 Polish "Remove HierarchicalNameMapper as a configured @Bean"
Closes gh-12683
7 years ago
Jon Schneider 8572a091b8 Remove HierarchicalNameMapper as a configured @Bean
HierarchicalNameMapper is not a component that can be shared amongst
multiple monitoring systems.

See gh-12683
7 years ago
Stephane Nicoll 7c36c00331 Fix default HierarchicalNameMapper implementation for Graphite
Closes gh-12557
7 years ago
Johnny Lim 4ab439856c Remove destroyMethod attribute in @Bean for MeterRegistry
Closes gh-12725
7 years ago
Madhura Bhave 270ee6dd2c Configure RequestContextFilter in mgmt context
Closes gh-12546
7 years ago
Andy Wilkinson cca5c0d2ee Start building against Spring REST Docs 2.0.1 snapshots
See gh-12681
7 years ago
dreis2211 3b0f6e7168 Use Supplier variants of Assert methods
See gh-12630
7 years ago
Johnny Lim c100510222 Remove value in @ConditionalOnMissingBean if possible
See gh-12604
7 years ago
Johnny Lim 625bf93598 Polish
See gh-12584
7 years ago
Johnny Lim 1e2e8b1d66 Rename expose to include
Closes gh-12555
7 years ago
Andy Wilkinson 72e36eadae Polish 7 years ago
Phillip Webb c201c1dac1 Polish 7 years ago
Madhura Bhave e6149fda1c Assert endpoints basePath starts with '/' or is empty
Fixes gh-12489
7 years ago
Vladimir Tsanev bf433e7f17 Fix Javadoc for ServiceLevelAgreementBoundary
Closes gh-12492
7 years ago
dreis2211 8626daf135 Replace Mockito.times(0) with Mockito.never()
Closes gh-12475
7 years ago
Phillip Webb a4b0be089d Polish 7 years ago
Andy Wilkinson 2f1b2e3ce2 Log summary of web-exposed endpoints during startup
Closes gh-12442
7 years ago
Andy Wilkinson f758a4ddd5 Do not link to controller endpoints in Jersey-based Actuator
Closes gh-12463
7 years ago
dreis2211 a21ea612db Remove duplicated @author tags
Closes gh-12454
7 years ago
igor-suhorukov 93f9bd0a32 Polish
Closes gh-12450
7 years ago
Madhura Bhave 89e42d40c5 Provide security matchers for actuator links
Fixes gh-12353
7 years ago
Andy Wilkinson 317b51f2ad Make ApplicationContextRequestMatcher and subclasses thread-safe
Previously, when performing lazy initialisation of the context,
ApplicationContextRequestMatcher assigned the context field before it
called initialized. The context being non-null is used as the signal
that it’s ok to call a subclass’s matches method. If one thread checks
for a non-null context in between the field being assigned and
initialized being called on another thread, matches will be called
before the subclass is ready.

This commit closes the window for the race condition by only assigning
the context field once the subclass’s initialized method has been
called.

There is a secondary problem in each of the subclasses. Due to the use
of double-checked locking in ApplicationContextRequestMatcher, it’s
possible for a subclass’s matches method to be called by a thread that
has not synchronised on the context lock that’s held when initialized
is called and the delegate field is assigned. This means that the
value assigned to the field may not be visible to that thread.

This commit declares the delegate field of each
ApplicationContextRequestMatcher subclass as volatile to ensure that,
following initialisation, its value is guaranteed to be visible to
all threads.

Closes gh-12380
7 years ago
Madhura Bhave e6eca04af2 Make EndpointRequestMatcher#excluding public
Fixes gh-12354
7 years ago
Johnny Lim 751c444166 Polish
See gh-12326
7 years ago
Madhura Bhave 1c27a8e6e2 Move tests to ApplicationContextRunner 7 years ago
Andy Wilkinson 01304959fa Polish "Remove redundant auto-configuration of SI Micrometer metrics"
Closes gh-12287
7 years ago
Gary Russell ddd820af9a Remove redundant auto-configuration of SI Micrometer metrics
Spring Integration no longer requires a `MicrometerMetricsFactory` to
support Micrometer metrics so there's nothing for Boot to
auto-configure.

See gh-12287
7 years ago
Andy Wilkinson c4c50b7c49 Only auto-configure LogbackMetrics when Logback is actually being used
Closes gh-12286
7 years ago
Phillip Webb 7f8bb4e8eb Allow EndpointRequest matching without path bean
Update `EndpointRequest` to that the `PathMappedEndpoints` bean is
optional. A missing bean is treated as if there are no path mapped
endpoints.

Fixes gh-12238
7 years ago
Phillip Webb d66496787d Propagate exceptions in security matchers
Update `ApplicationContextRequestMatcher` and
`ApplicationContextServerWebExchangeMatcher` to use a supplier for
the context, rather than the context itself.

This allow exceptions to be propagated to subclasses which may choose
to deal with them.

See gh-12238
7 years ago
Phillip Webb 802cd856aa Remove test-autoconfigure dependency
Update `spring-boot-actuator-autoconfigure` so that it no longer has
a dependency on `spring-boot-test-autoconfigure`. This will allow us to
add test support for actuator concerns in the future if we need to.

Fixed gh-12270
7 years ago
Andy Wilkinson dc36360155 Polish 7 years ago
Phillip Webb 3e4da3cc37 Polish 7 years ago
Andy Wilkinson 476b7087a7 Upgrade to Hikaricp 2.7.8
Closes gh-12252
7 years ago
Stephane Nicoll 0b46408846 Polish 7 years ago
Stephane Nicoll b0f381bb6f Review conditions of ElasticsearchHealthIndicatorAutoConfiguration
Closes gh-12249
7 years ago
Phillip Webb 29c3be3590 Polish 7 years ago
Stephane Nicoll 306c79f0de Merge branch '1.5.x' 7 years ago
Stephane Nicoll cd522dadcd Revert "Add Kafka health indicator"
Closes gh-12225
7 years ago
igor-suhorukov 98f4692c62 Polish
This commit changes invocations to immediately return the expression
instead of assigning it to a temporary variable. The method name should
be sufficient for callers to know exactly what will be returned.

Closes gh-12211
7 years ago
Stephane Nicoll cb1eed42b8 Polish 7 years ago
Stephane Nicoll e1fd9df7b9 Fix usage of management.server.add-application-context-header
Closes gh-12190
7 years ago
Stephane Nicoll 09ff815f00 Harmonize metadata
Closes gh-12177
7 years ago
Phillip Webb 4b9c3c137e Polish Collection.toArray
Consistently use `StringUtils.toStringArray`, `ClassUtils.toClassArray`
or zero length when converting collections to arrays.

Fixes gh-12160
7 years ago
Phillip Webb cd5266ac03 Polish 7 years ago
Johnny Lim 2fe86da95b Use isTrue() and isFalse() for AssertJ
Closes gh-12170
7 years ago
Johnny Lim 50c07d0772 Polish
Closes gh-12156
7 years ago
Andy Wilkinson e7176c63f5 Stop DataSource initialization from preventing Hikari instrumentation
Closes gh-12129
7 years ago
Stephane Nicoll e7db69be7a Polish
See gh-11869
7 years ago
Phillip Webb 349987d9be Switch show details default to ShowDetails.NEVER
Closes gh-11869
7 years ago
Phillip Webb 46021928ba Rework common server customization
Update the configurable embedded web server factory interfaces to
extend `ConfigurableWebServerFactory` so that the can be used in a
`WebServerFactoryCustomizer`.

Extract server specific customization to their own auto-configuration
and align reactive/servlet server auto-configuration.

Closes gh-8573
7 years ago
Phillip Webb aafa1e9615 Rename MetricsIntegrationAutoConfiguration
Rename `MetricsIntegrationAutoConfiguration` to
`IntegrationMetricsAutoConfiguration`.

Closes gh-12147
7 years ago
Phillip Webb 05faac2b09 Polish 7 years ago
Stephane Nicoll a7cccac0d0 Remove deprecation note for property that was renamed in 2.0 7 years ago
Stephane Nicoll 20f104766b Add missing default values for enums 7 years ago
Stephane Nicoll 45476961c1 Polish
See gh-12129
7 years ago
Stephane Nicoll 0f75a9a9fe Rework Hikari metrics registration
This commits move the Hikari metrics registration to a BeanPostProcessor
as the Hikari datasource cannot be modified once its configuration has
been sealed (usually happens when `getConnection` is invoked on the
pool).

Closes gh-12129
7 years ago
Stephane Nicoll 784372e6b3 Polish "Auto-configure metrics for Hikari"
Closes gh-12129
7 years ago
Tommy Ludwig 05e1f22824 Auto-configure metrics for Hikari
HikariCP has metrics integration with Micrometer. This configures all
`HikariDataSource` beans with the `MicrometerMetricsTrackerFactory` if a
`MeterRegistry` is available.

See gh-12129
7 years ago
Andy Wilkinson 3e4baf744e Use role-based security to show details in the health endpoint
Closes gh-11869
7 years ago
Stephane Nicoll f19b43bacc Polish "Consistent prefix for datasource pool metrics"
Closes gh-12127
7 years ago
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
7 years ago
igor-suhorukov fe023817c7 Polish static finals
Closes gh-12083
7 years ago
Phillip Webb adf22d6e4a Polish 7 years ago
Andy Wilkinson 482ecc606c Polish 7 years ago
Andy Wilkinson 22bac1b54e Polish "Bind StatsD queue gauges"
Closes gh-12124
7 years ago
Jon Schneider 53e872bf4c Bind StatsD queue gauges
See gh-12124
7 years ago
Jon Schneider 9934285bca Remove destroy methods from auto-configured MeterRegistry beans
Closes gh-12121
7 years ago
Andy Wilkinson 73460a5b25 Use auto-configuration to create composite, not a BFPP
Closes gh-12122
7 years ago
Stephane Nicoll 1e932860c4 Specify default micrometer values
This commit adds micrometer's default values for each monitoring
system with tests that validate those defaults are consistent. This
makes sure that those defaults are part of the metadata and any tooling
support that uses it.

Closes gh-12089
7 years ago
Stephane Nicoll 202ed7b72b Polish 7 years ago
Stephane Nicoll cd0c81fe39 Restore prefix in ConditionalOnProperty 7 years ago
Andy Wilkinson c3a31fafe2 Remove tangle between actuate.endpoint and actuate.endpoint.invoke
See gh-11854
7 years ago
Stephane Nicoll 6c85ed70e4 Polish "Add SignalFxConfig source property"
Closes gh-12066
7 years ago
Jon Schneider a732053afd Add SignalFxConfig source property
See gh-12066
7 years ago
Stephane Nicoll 1dab83adaa Polish "Restore behavior of management.metrics.export.simple.enabled"
Closes gh-12106
7 years ago
Jon Schneider da759f29d0 Restore behavior of management.metrics.export.simple.enabled
See gh-12106
7 years ago
Phillip Webb 9e75680e6f Polish 7 years ago
Andy Wilkinson c1c162ab0c Polish "Add auto-configuraton for exporting metrics to Wavefront"
Closes gh-12068
7 years ago
Jon Schneider 142dbb2213 Add auto-configuration for exporting metrics to Wavefront
See gh-12068
7 years ago
Andy Wilkinson 17c7f027e0 Add details of the request mapping conditions to mappings endpoint
Closes gh-12080
7 years ago
Andy Wilkinson 2c19257d6d Add HandlerMethod and HandlerFunction details to mappings endpoint
Closes gh-11864
7 years ago
Stephane Nicoll 99466e7fa6 Polish 7 years ago
Andy Wilkinson fe4c8f95ed Rename ReactiveWebServerAutoConfiguration
Closes gh-12086
7 years ago