Skip to content

Commit fe63342

Browse files
ayudovinwilkinsona
authored andcommitted
Handle StepRegistry connect/read timeout deprecation
See gh-14886
1 parent a984453 commit fe63342

File tree

12 files changed

+81
-55
lines changed

12 files changed

+81
-55
lines changed

spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/appoptics/AppOpticsMetricsExportAutoConfiguration.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import io.micrometer.appoptics.AppOpticsConfig;
2020
import io.micrometer.appoptics.AppOpticsMeterRegistry;
2121
import io.micrometer.core.instrument.Clock;
22+
import io.micrometer.core.ipc.http.HttpUrlConnectionSender;
2223

2324
import org.springframework.boot.actuate.autoconfigure.metrics.CompositeMeterRegistryAutoConfiguration;
2425
import org.springframework.boot.actuate.autoconfigure.metrics.MetricsAutoConfiguration;
@@ -38,6 +39,7 @@
3839
* {@link EnableAutoConfiguration Auto-configuration} for exporting metrics to AppOptics.
3940
*
4041
* @author Stephane Nicoll
42+
* @author Artsiom Yudovin
4143
* @since 2.1.0
4244
*/
4345
@Configuration
@@ -59,8 +61,12 @@ public AppOpticsConfig appOpticsConfig(AppOpticsProperties appOpticsProperties)
5961
@Bean
6062
@ConditionalOnMissingBean
6163
public AppOpticsMeterRegistry appOpticsMeterRegistry(AppOpticsConfig config,
62-
Clock clock) {
63-
return new AppOpticsMeterRegistry(config, clock);
64+
Clock clock, AppOpticsProperties appOpticsProperties) {
65+
return AppOpticsMeterRegistry.builder(config).clock(clock)
66+
.httpClient(new HttpUrlConnectionSender(
67+
appOpticsProperties.getConnectTimeout(),
68+
appOpticsProperties.getReadTimeout()))
69+
.build();
6470
}
6571

6672
}

spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/datadog/DatadogMetricsExportAutoConfiguration.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
package org.springframework.boot.actuate.autoconfigure.metrics.export.datadog;
1818

1919
import io.micrometer.core.instrument.Clock;
20+
import io.micrometer.core.ipc.http.HttpUrlConnectionSender;
2021
import io.micrometer.datadog.DatadogConfig;
2122
import io.micrometer.datadog.DatadogMeterRegistry;
2223

@@ -38,6 +39,7 @@
3839
* {@link EnableAutoConfiguration Auto-configuration} for exporting metrics to Datadog.
3940
*
4041
* @author Jon Schneider
42+
* @author Artsiom Yudovin
4143
* @since 2.0.0
4244
*/
4345
@Configuration
@@ -59,8 +61,12 @@ public DatadogConfig datadogConfig(DatadogProperties datadogProperties) {
5961
@Bean
6062
@ConditionalOnMissingBean
6163
public DatadogMeterRegistry datadogMeterRegistry(DatadogConfig datadogConfig,
62-
Clock clock) {
63-
return new DatadogMeterRegistry(datadogConfig, clock);
64+
Clock clock, DatadogProperties datadogProperties) {
65+
return DatadogMeterRegistry.builder(datadogConfig).clock(clock)
66+
.httpClient(
67+
new HttpUrlConnectionSender(datadogProperties.getConnectTimeout(),
68+
datadogProperties.getReadTimeout()))
69+
.build();
6470
}
6571

6672
}

spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/dynatrace/DynatraceMetricsExportAutoConfiguration.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
package org.springframework.boot.actuate.autoconfigure.metrics.export.dynatrace;
1818

1919
import io.micrometer.core.instrument.Clock;
20+
import io.micrometer.core.ipc.http.HttpUrlConnectionSender;
2021
import io.micrometer.dynatrace.DynatraceConfig;
2122
import io.micrometer.dynatrace.DynatraceMeterRegistry;
2223

@@ -38,6 +39,7 @@
3839
* {@link EnableAutoConfiguration Auto-configuration} for exporting metrics to Dynatrace.
3940
*
4041
* @author Andy Wilkinson
42+
* @author Artsiom Yudovin
4143
* @since 2.1.0
4244
*/
4345
@Configuration
@@ -59,8 +61,12 @@ public DynatraceConfig dynatraceConfig(DynatraceProperties dynatraceProperties)
5961
@Bean
6062
@ConditionalOnMissingBean
6163
public DynatraceMeterRegistry dynatraceMeterRegistry(DynatraceConfig dynatraceConfig,
62-
Clock clock) {
63-
return new DynatraceMeterRegistry(dynatraceConfig, clock);
64+
Clock clock, DynatraceProperties dynatraceProperties) {
65+
return DynatraceMeterRegistry.builder(dynatraceConfig).clock(clock)
66+
.httpClient(new HttpUrlConnectionSender(
67+
dynatraceProperties.getConnectTimeout(),
68+
dynatraceProperties.getReadTimeout()))
69+
.build();
6470
}
6571

6672
}

spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/elastic/ElasticMetricsExportAutoConfiguration.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
package org.springframework.boot.actuate.autoconfigure.metrics.export.elastic;
1818

1919
import io.micrometer.core.instrument.Clock;
20+
import io.micrometer.core.ipc.http.HttpUrlConnectionSender;
2021
import io.micrometer.elastic.ElasticConfig;
2122
import io.micrometer.elastic.ElasticMeterRegistry;
2223

@@ -38,6 +39,7 @@
3839
* {@link EnableAutoConfiguration Auto-configuration} for exporting metrics to Elastic.
3940
*
4041
* @author Andy Wilkinson
42+
* @author Artsiom Yudovin
4143
* @since 2.1.0
4244
*/
4345
@Configuration
@@ -59,8 +61,12 @@ public ElasticConfig elasticConfig(ElasticProperties elasticProperties) {
5961
@Bean
6062
@ConditionalOnMissingBean
6163
public ElasticMeterRegistry elasticMeterRegistry(ElasticConfig elasticConfig,
62-
Clock clock) {
63-
return new ElasticMeterRegistry(elasticConfig, clock);
64+
Clock clock, ElasticProperties elasticProperties) {
65+
return ElasticMeterRegistry.builder(elasticConfig).clock(clock)
66+
.httpClient(
67+
new HttpUrlConnectionSender(elasticProperties.getConnectTimeout(),
68+
elasticProperties.getReadTimeout()))
69+
.build();
6470
}
6571

6672
}

spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/humio/HumioMetricsExportAutoConfiguration.java

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
package org.springframework.boot.actuate.autoconfigure.metrics.export.humio;
1818

1919
import io.micrometer.core.instrument.Clock;
20+
import io.micrometer.core.ipc.http.HttpUrlConnectionSender;
2021
import io.micrometer.humio.HumioConfig;
2122
import io.micrometer.humio.HumioMeterRegistry;
2223

@@ -38,6 +39,7 @@
3839
* {@link EnableAutoConfiguration Auto-configuration} for exporting metrics to Humio.
3940
*
4041
* @author Andy Wilkinson
42+
* @author Artsiom Yudovin
4143
* @since 2.1.0
4244
*/
4345
@Configuration
@@ -58,8 +60,14 @@ public HumioConfig humioConfig(HumioProperties humioProperties) {
5860

5961
@Bean
6062
@ConditionalOnMissingBean
61-
public HumioMeterRegistry humioMeterRegistry(HumioConfig humioConfig, Clock clock) {
62-
return new HumioMeterRegistry(humioConfig, clock);
63+
public HumioMeterRegistry humioMeterRegistry(HumioConfig humioConfig, Clock clock,
64+
HumioProperties humioProperties) {
65+
return HumioMeterRegistry.builder(humioConfig).clock(clock)
66+
.httpClient(
67+
new HttpUrlConnectionSender(humioProperties.getConnectTimeout(),
68+
humioProperties.getReadTimeout()))
69+
.build();
70+
6371
}
6472

6573
}

spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/influx/InfluxMetricsExportAutoConfiguration.java

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
package org.springframework.boot.actuate.autoconfigure.metrics.export.influx;
1818

1919
import io.micrometer.core.instrument.Clock;
20+
import io.micrometer.core.ipc.http.HttpUrlConnectionSender;
2021
import io.micrometer.influx.InfluxConfig;
2122
import io.micrometer.influx.InfluxMeterRegistry;
2223

@@ -38,6 +39,7 @@
3839
* {@link EnableAutoConfiguration Auto-configuration} for exporting metrics to Influx.
3940
*
4041
* @author Jon Schneider
42+
* @author Artsiom Yudovin
4143
* @since 2.0.0
4244
*/
4345
@Configuration
@@ -58,9 +60,14 @@ public InfluxConfig influxConfig(InfluxProperties influxProperties) {
5860

5961
@Bean
6062
@ConditionalOnMissingBean
61-
public InfluxMeterRegistry influxMeterRegistry(InfluxConfig influxConfig,
62-
Clock clock) {
63-
return new InfluxMeterRegistry(influxConfig, clock);
63+
public InfluxMeterRegistry influxMeterRegistry(InfluxConfig influxConfig, Clock clock,
64+
InfluxProperties influxProperties) {
65+
return InfluxMeterRegistry.builder(influxConfig).clock(clock)
66+
.httpClient(
67+
new HttpUrlConnectionSender(influxProperties.getConnectTimeout(),
68+
influxProperties.getReadTimeout()))
69+
.build();
70+
6471
}
6572

6673
}

spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/kairos/KairosMetricsExportAutoConfiguration.java

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
package org.springframework.boot.actuate.autoconfigure.metrics.export.kairos;
1818

1919
import io.micrometer.core.instrument.Clock;
20+
import io.micrometer.core.ipc.http.HttpUrlConnectionSender;
2021
import io.micrometer.kairos.KairosConfig;
2122
import io.micrometer.kairos.KairosMeterRegistry;
2223

@@ -38,6 +39,7 @@
3839
* {@link EnableAutoConfiguration Auto-configuration} for exporting metrics to KairosDB.
3940
*
4041
* @author Stephane Nicoll
42+
* @author Artsiom Yudovin
4143
* @since 2.1.0
4244
*/
4345
@Configuration
@@ -58,9 +60,14 @@ public KairosConfig kairosConfig(KairosProperties kairosProperties) {
5860

5961
@Bean
6062
@ConditionalOnMissingBean
61-
public KairosMeterRegistry kairosMeterRegistry(KairosConfig kairosConfig,
62-
Clock clock) {
63-
return new KairosMeterRegistry(kairosConfig, clock);
63+
public KairosMeterRegistry kairosMeterRegistry(KairosConfig kairosConfig, Clock clock,
64+
KairosProperties kairosProperties) {
65+
return KairosMeterRegistry.builder(kairosConfig).clock(clock)
66+
.httpClient(
67+
new HttpUrlConnectionSender(kairosProperties.getConnectTimeout(),
68+
kairosProperties.getReadTimeout()))
69+
.build();
70+
6471
}
6572

6673
}

spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/newrelic/NewRelicMetricsExportAutoConfiguration.java

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
package org.springframework.boot.actuate.autoconfigure.metrics.export.newrelic;
1818

1919
import io.micrometer.core.instrument.Clock;
20+
import io.micrometer.core.ipc.http.HttpUrlConnectionSender;
2021
import io.micrometer.newrelic.NewRelicConfig;
2122
import io.micrometer.newrelic.NewRelicMeterRegistry;
2223

@@ -39,6 +40,7 @@
3940
*
4041
* @author Jon Schneider
4142
* @author Andy Wilkinson
43+
* @author Artsiom Yudovin
4244
* @since 2.0.0
4345
*/
4446
@Configuration
@@ -60,8 +62,13 @@ public NewRelicConfig newRelicConfig(NewRelicProperties props) {
6062
@Bean
6163
@ConditionalOnMissingBean
6264
public NewRelicMeterRegistry newRelicMeterRegistry(NewRelicConfig newRelicConfig,
63-
Clock clock) {
64-
return new NewRelicMeterRegistry(newRelicConfig, clock);
65+
Clock clock, NewRelicProperties newRelicProperties) {
66+
return NewRelicMeterRegistry.builder(newRelicConfig).clock(clock)
67+
.httpClient(new HttpUrlConnectionSender(
68+
newRelicProperties.getConnectTimeout(),
69+
newRelicProperties.getReadTimeout()))
70+
.build();
71+
6572
}
6673

6774
}

spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/properties/StepRegistryPropertiesConfigAdapter.java

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
* @param <T> the properties type
2727
* @author Jon Schneider
2828
* @author Phillip Webb
29+
* @author Artsiom Yudovin
2930
* @since 2.0.0
3031
*/
3132
public abstract class StepRegistryPropertiesConfigAdapter<T extends StepRegistryProperties>
@@ -55,16 +56,6 @@ public boolean enabled() {
5556
return get(T::isEnabled, StepRegistryConfig.super::enabled);
5657
}
5758

58-
@Override
59-
public Duration connectTimeout() {
60-
return get(T::getConnectTimeout, StepRegistryConfig.super::connectTimeout);
61-
}
62-
63-
@Override
64-
public Duration readTimeout() {
65-
return get(T::getReadTimeout, StepRegistryConfig.super::readTimeout);
66-
}
67-
6859
@Override
6960
public int numThreads() {
7061
return get(T::getNumThreads, StepRegistryConfig.super::numThreads);

spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/wavefront/WavefrontMetricsExportAutoConfiguration.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
package org.springframework.boot.actuate.autoconfigure.metrics.export.wavefront;
1818

1919
import io.micrometer.core.instrument.Clock;
20+
import io.micrometer.core.ipc.http.HttpUrlConnectionSender;
2021
import io.micrometer.wavefront.WavefrontConfig;
2122
import io.micrometer.wavefront.WavefrontMeterRegistry;
2223

@@ -38,6 +39,7 @@
3839
* {@link EnableAutoConfiguration Auto-configuration} for exporting metrics to Wavefront.
3940
*
4041
* @author Jon Schneider
42+
* @author Artsiom Yudovin
4143
* @since 2.0.0
4244
*/
4345
@Configuration
@@ -59,8 +61,12 @@ public WavefrontConfig wavefrontConfig(WavefrontProperties props) {
5961
@Bean
6062
@ConditionalOnMissingBean
6163
public WavefrontMeterRegistry wavefrontMeterRegistry(WavefrontConfig wavefrontConfig,
62-
Clock clock) {
63-
return new WavefrontMeterRegistry(wavefrontConfig, clock);
64+
Clock clock, WavefrontProperties wavefrontProperties) {
65+
return WavefrontMeterRegistry.builder(wavefrontConfig).clock(clock)
66+
.httpClient(new HttpUrlConnectionSender(
67+
wavefrontProperties.getConnectTimeout(),
68+
wavefrontProperties.getReadTimeout()))
69+
.build();
6470
}
6571

6672
}

0 commit comments

Comments
 (0)