2572 Commits

Author SHA1 Message Date
Andy Wilkinson
8ce7da9bb0 Avoid duplicate customization of management web server factory
Previously, customization was performed in two places:

1. By customizers defined in the reactive and servlet web servlet
   factory auto-configuration
     - ServletWebServerFactoryAutoConfiguration
     - ReactiveWebServerFactoryAutoConfiguration
 2. By a ManagementWebServerFactoryCustomizer that delegates to
    customizers of certain types found in the application context
    hierarchy.

This led to some double customization as the customizers registered
by the auto-configuration classes were also found and called by the
ManagementWebServerFactoryCustomizer.

Additionally, the ManagementWebServerFactoryCustomizer would find
customizers from the parent context registered by
EmbeddedWebServerFactoryCustomizerAutoConfiguration.

This commit reworks the customization of the management web server
factory to remove the double customization.
ManagementWebServerFactoryCustomizer no longer delegates to
customizers that it finds in the context hierarchy. This
prevents the customizers defined in the reactive and servlet web
server factory auto-configuration classes from being called twice.
Additionally, EmbeddedWebServerFactoryCustomizerAutoConfiguration is
now registered in the child context so that its customizers continue
to be called when preparing the management context web server
factory.

Closes gh-44151
2025-02-07 12:23:40 +00:00
Johnny Lim
c335f772d0 Polish
See gh-44148

Signed-off-by: Johnny Lim <izeye@naver.com>
2025-02-07 09:21:19 +01:00
Phillip Webb
9576293a03 Polish 'Add ability to match Endpoint requests by HTTP method'
See gh-29596
2025-02-04 21:57:40 -08:00
onobc
996ee243a3 Add ability to match Endpoint requests by HTTP method
Update both servlet and reactive `EndpointRequest` classes with
support for matching endpoint requests by HTTP method.

See gh-29596
2025-02-04 21:56:14 -08:00
Phillip Webb
9881f38d82 Polish 'Add the ability to trigger a Quartz job through an Actuator endpoint'
See gh-43086
2025-02-04 16:29:52 -08:00
Dmytro Nosan
fbeace397f Add the ability to trigger a Quartz job through an Actuator endpoint
Add new methods to `QuartzEndpoint` and `QuartzEndpointWebExtension`
to allow a Quartz job to be triggered on demand.

See gh-43086

Signed-off-by: Dmytro Nosan <dimanosan@gmail.com>
2025-02-04 16:29:39 -08:00
Dmytro Nosan
1749235dbd Polish PrometheusPushGatewayConfiguration
See gh-44069

Signed-off-by: Dmytro Nosan <dimanosan@gmail.com>
2025-02-04 14:02:47 -08:00
Andy Wilkinson
63ecfac40d Support Pushgateway with new Prometheus client
Closes gh-43923
2025-02-04 11:17:25 +00:00
Johnny Lim
a39e1c4a09 Polish
Signed-off-by: Johnny Lim <izeye@naver.com>

See gh-44034
2025-01-31 17:04:58 +01:00
Moritz Halbritter
035c80aa5b Deprecate SignalFX tests
See gh-43962
2025-01-29 13:11:14 +01:00
Moritz Halbritter
58cc3a0d3d Deprecate SignalFX support
Closes gh-43962
2025-01-29 10:41:24 +01:00
Phillip Webb
7545bed284 Polish 2025-01-27 15:29:16 -08:00
Phillip Webb
3ff6e0b5a9 Merge branch '3.4.x' 2025-01-24 19:24:42 -08:00
Phillip Webb
8ec61b9870 Polish 'Refactor @ConfigurationProperties that only use prefix'
See gh-43917
2025-01-24 14:59:32 -08:00
Yanming Zhou
c1d97ffe16 Refactor @ConfigurationProperties that only use prefix
See gh-43917

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-01-24 14:58:36 -08:00
Dmytro Nosan
126233303c Remove the use of a FactoryBean when auto-configuring VirtualThreadMetrics
See gh-43957

Signed-off-by: Dmytro Nosan <dimanosan@gmail.com>
2025-01-24 14:05:26 +01:00
Dmytro Nosan
fc5c285ded Auto-configure VirtualThreadMetrics
See gh-43852

Signed-off-by: Dmytro Nosan <dimanosan@gmail.com>
2025-01-24 11:37:49 +01:00
Andy Wilkinson
1e43b0003f Merge branch '3.4.x'
Closes gh-43951
2025-01-24 08:54:50 +00:00
Yanming Zhou
960c8825e0 Replace @ConditionalOnProperty with …BooleanProperty where feasible
See gh-43868

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-01-21 15:08:26 +00:00
Andy Wilkinson
88eb74884a Merge branch '3.4.x'
Closes gh-43906
2025-01-21 14:36:55 +00:00
Andy Wilkinson
eea9491c46 Merge branch '3.3.x' into 3.4.x
Closes gh-43905
2025-01-21 14:36:44 +00:00
Johnny Lim
15a6c9affb Fix description of management.metrics.graphql.autotime.enabled
See gh-43904

Signed-off-by: Johnny Lim <izeye@naver.com>
2025-01-21 14:36:20 +00:00
Stéphane Nicoll
96d90eb63d Fix formatting 2025-01-17 14:42:25 +01:00
Andy Wilkinson
fd13a2e1c9 Avoid unclosed resource false positive 2025-01-17 10:08:45 +00:00
Moritz Halbritter
02a49b6038 Add a MeterBinder for SSL chain expiry
It registers a 'ssl.chains' gauge to count the number of chains with
different statuses (valid, expired, not yet valid, will expire soon).

Additionally, it registers a 'ssl.chain.expiry' gauge for every
certificate in a chain, tracking the seconds until expiry.

This binder reacts on bundle updates and new bundle registrations.

Closes gh-42030
2025-01-16 11:15:16 +01:00
Moritz Halbritter
bcf075b53e Polish "Add property to specify the management access log prefix"
See gh-43434
2025-01-15 14:48:47 +01:00
Michel Palourdio
020fd7b155 Add property to specify the management access log prefix
See gh-43434
2025-01-15 14:05:43 +01:00
Andy Wilkinson
2f29a49a1d Remove APIs deprecated for removal in 3.5
Closes gh-43788
2025-01-14 13:59:24 +00:00
Phillip Webb
b051a74b10 Polish "Make ZipkinHttpClientSender the default BytesMessageSender'
See gh-43085
2025-01-13 15:20:38 -08:00
YiXuan Ding
2b60c631a9 Make ZipkinHttpClientSender the default BytesMessageSender
Switch `HttpClientSenderConfiguration` and `UrlConnectionSenderConfiguration`
import order to set default sender.

See gh-43085
2025-01-13 15:19:25 -08:00
Phillip Webb
a49719d73e Use consistent exception messages in Assert calls
Update `Assert` calls to consistently use messages of the form
"'item' must [not] ...".

Closes gh-43780
2025-01-11 21:18:47 -08:00
Stéphane Nicoll
46a499bf1f Make RuntimeHints predicates more explicit
This commit narrows method invocation wherever applicable as the default
is 'introspect' only.
2025-01-11 18:17:10 +01:00
Phillip Webb
86b6171edc Introduce dedicated annotations to deal with boolean properties
Add `@ConditionalOnBooleanProperty` annotation to deal with
boolean properties and primarily for features that users toggle
using `.enabled` properties.

Closes gh-43704
2025-01-08 13:26:11 -08:00
Stéphane Nicoll
ff6c7c7fdf Merge branch '3.4.x' 2025-01-07 10:30:41 +01:00
Stéphane Nicoll
8502c80edb Merge branch '3.3.x' into 3.4.x 2025-01-07 10:30:15 +01:00
Stéphane Nicoll
6290b7545b Make skipSslValidation() test more robust
This commit updates the assertion of a test that relies on
https://self-signed.badssl.com to only fail if a SSLException is thrown.

This is a temporary measure until we run the test against a local
instance we control.

See gh-43708
2025-01-07 10:29:46 +01:00
Phillip Webb
170ff4eb23 Update copyright year of changed files 2025-01-06 17:40:24 -08:00
Phillip Webb
4c307d6fda Switch away from using @ConditionalOnProperty prefix
Merge `prefix` into `name` attribute and simplify annotations
where possible.

Closes gh-43703
2025-01-06 14:37:18 -08:00
Johnny Lim
4d15ee5bf0 Polish
See gh-43498
2024-12-13 13:29:20 -08:00
Moritz Halbritter
d5344e3f1b Polish "Fix property name in OnEnabledLoggingExportConditionTests"
See gh-43331
2024-12-02 13:52:01 +01:00
Johnny Lim
1f17e0125d Fix property name in OnEnabledLoggingExportConditionTests
See gh-43331
2024-12-02 13:49:39 +01:00
Johnny Lim
859c235a95 Polish
See gh-43316
2024-11-29 10:35:11 +01:00
Andy Wilkinson
f3a161afdd Enable relaxed matching of enabled and access properties
The lowercase form of the endpoint ID needs to be used so that
relaxed matching of properties, as provided by
ConfigurationPropertySources, works as intended. Without this
change the id of the endpoint in a property had to be an exact
match of the endpoint's ID.

Closes gh-43302
2024-11-28 14:17:37 +00:00
Andy Wilkinson
32433e84f3 Merge branch '3.3.x'
Closes gh-43270
2024-11-22 15:46:38 +00:00
Andy Wilkinson
bb3651b7d1 Reduce warnings reported by Eclipse
Closes gh-43269
2024-11-22 15:39:35 +00:00
Johnny Lim
fa0a4849fa Update Javadoc since for OtlpMetricsProperties and OtlpTracingProperties
See gh-43249
2024-11-22 08:24:59 +01:00
Phillip Webb
c9a84549c8 Polish 'Replace TestObservationRegistryAssert.assertThat()''
See gh-43235
2024-11-20 20:56:39 -08:00
Johnny Lim
4b5b76d7b1 Replace TestObservationRegistryAssert.assertThat()
See gh-43235
2024-11-20 20:56:03 -08:00
Yanming Zhou
7fdc9742af Prohibit unnecessary value on @EnumSource
See gh-43214
2024-11-18 21:50:35 -08:00
Phillip Webb
4ab80d263a Fix management.endpoints.access.default type in JSON metadata
Fixes gh-43154
2024-11-13 16:23:39 -08:00