Skip to content

Commit 58cc3a0

Browse files
committed
Deprecate SignalFX support
Closes gh-43962
1 parent a13fe0b commit 58cc3a0

File tree

9 files changed

+94
-47
lines changed

9 files changed

+94
-47
lines changed

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

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright 2012-2022 the original author or authors.
2+
* Copyright 2012-2025 the original author or authors.
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -38,6 +38,7 @@
3838
* @author Jon Schneider
3939
* @author Andy Wilkinson
4040
* @since 2.0.0
41+
* @deprecated since 3.5.0 for removal in 3.7.0
4142
*/
4243
@AutoConfiguration(
4344
before = { CompositeMeterRegistryAutoConfiguration.class, SimpleMetricsExportAutoConfiguration.class },
@@ -46,6 +47,8 @@
4647
@ConditionalOnClass(SignalFxMeterRegistry.class)
4748
@ConditionalOnEnabledMetricsExport("signalfx")
4849
@EnableConfigurationProperties(SignalFxProperties.class)
50+
@Deprecated(since = "3.5.0", forRemoval = true)
51+
@SuppressWarnings("removal")
4952
public class SignalFxMetricsExportAutoConfiguration {
5053

5154
@Bean

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

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020

2121
import org.springframework.boot.actuate.autoconfigure.metrics.export.properties.StepRegistryProperties;
2222
import org.springframework.boot.context.properties.ConfigurationProperties;
23+
import org.springframework.boot.context.properties.DeprecatedConfigurationProperty;
2324

2425
/**
2526
* {@link ConfigurationProperties @ConfigurationProperties} for configuring metrics export
@@ -29,8 +30,10 @@
2930
* @author Andy Wilkinson
3031
* @author Stephane Nicoll
3132
* @since 2.0.0
33+
* @deprecated since 3.5.0 for removal in 3.7.0
3234
*/
3335
@ConfigurationProperties("management.signalfx.metrics.export")
36+
@Deprecated(since = "3.5.0", forRemoval = true)
3437
public class SignalFxProperties extends StepRegistryProperties {
3538

3639
/**
@@ -60,47 +63,115 @@ public class SignalFxProperties extends StepRegistryProperties {
6063
private HistogramType publishedHistogramType = HistogramType.DEFAULT;
6164

6265
@Override
66+
@DeprecatedConfigurationProperty(since = "3.5.0", reason = "Deprecated in Micrometer 1.15.0")
67+
@Deprecated(since = "3.5.0", forRemoval = true)
6368
public Duration getStep() {
6469
return this.step;
6570
}
6671

6772
@Override
73+
@Deprecated(since = "3.5.0", forRemoval = true)
6874
public void setStep(Duration step) {
6975
this.step = step;
7076
}
7177

78+
@DeprecatedConfigurationProperty(since = "3.5.0", reason = "Deprecated in Micrometer 1.15.0")
79+
@Deprecated(since = "3.5.0", forRemoval = true)
7280
public String getAccessToken() {
7381
return this.accessToken;
7482
}
7583

84+
@Deprecated(since = "3.5.0", forRemoval = true)
7685
public void setAccessToken(String accessToken) {
7786
this.accessToken = accessToken;
7887
}
7988

89+
@DeprecatedConfigurationProperty(since = "3.5.0", reason = "Deprecated in Micrometer 1.15.0")
90+
@Deprecated(since = "3.5.0", forRemoval = true)
8091
public String getUri() {
8192
return this.uri;
8293
}
8394

95+
@Deprecated(since = "3.5.0", forRemoval = true)
8496
public void setUri(String uri) {
8597
this.uri = uri;
8698
}
8799

100+
@DeprecatedConfigurationProperty(since = "3.5.0", reason = "Deprecated in Micrometer 1.15.0")
101+
@Deprecated(since = "3.5.0", forRemoval = true)
88102
public String getSource() {
89103
return this.source;
90104
}
91105

106+
@Deprecated(since = "3.5.0", forRemoval = true)
92107
public void setSource(String source) {
93108
this.source = source;
94109
}
95110

111+
@DeprecatedConfigurationProperty(since = "3.5.0", reason = "Deprecated in Micrometer 1.15.0")
112+
@Deprecated(since = "3.5.0", forRemoval = true)
96113
public HistogramType getPublishedHistogramType() {
97114
return this.publishedHistogramType;
98115
}
99116

117+
@Deprecated(since = "3.5.0", forRemoval = true)
100118
public void setPublishedHistogramType(HistogramType publishedHistogramType) {
101119
this.publishedHistogramType = publishedHistogramType;
102120
}
103121

122+
@Override
123+
@DeprecatedConfigurationProperty(since = "3.5.0", reason = "Deprecated in Micrometer 1.15.0")
124+
@Deprecated(since = "3.5.0", forRemoval = true)
125+
public boolean isEnabled() {
126+
return super.isEnabled();
127+
}
128+
129+
@Override
130+
@Deprecated(since = "3.5.0", forRemoval = true)
131+
public void setEnabled(boolean enabled) {
132+
super.setEnabled(enabled);
133+
}
134+
135+
@Override
136+
@DeprecatedConfigurationProperty(since = "3.5.0", reason = "Deprecated in Micrometer 1.15.0")
137+
@Deprecated(since = "3.5.0", forRemoval = true)
138+
public Duration getConnectTimeout() {
139+
return super.getConnectTimeout();
140+
}
141+
142+
@Override
143+
@Deprecated(since = "3.5.0", forRemoval = true)
144+
public void setConnectTimeout(Duration connectTimeout) {
145+
super.setConnectTimeout(connectTimeout);
146+
}
147+
148+
@Override
149+
@DeprecatedConfigurationProperty(since = "3.5.0", reason = "Deprecated in Micrometer 1.15.0")
150+
@Deprecated(since = "3.5.0", forRemoval = true)
151+
public Duration getReadTimeout() {
152+
return super.getReadTimeout();
153+
}
154+
155+
@Override
156+
@Deprecated(since = "3.5.0", forRemoval = true)
157+
public void setReadTimeout(Duration readTimeout) {
158+
super.setReadTimeout(readTimeout);
159+
}
160+
161+
@Override
162+
@DeprecatedConfigurationProperty(since = "3.5.0", reason = "Deprecated in Micrometer 1.15.0")
163+
@Deprecated(since = "3.5.0", forRemoval = true)
164+
public Integer getBatchSize() {
165+
return super.getBatchSize();
166+
}
167+
168+
@Override
169+
@Deprecated(since = "3.5.0", forRemoval = true)
170+
public void setBatchSize(Integer batchSize) {
171+
super.setBatchSize(batchSize);
172+
}
173+
174+
@Deprecated(since = "3.5.0", forRemoval = true)
104175
public enum HistogramType {
105176

106177
/**

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

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright 2012-2023 the original author or authors.
2+
* Copyright 2012-2025 the original author or authors.
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -19,14 +19,16 @@
1919
import io.micrometer.signalfx.SignalFxConfig;
2020

2121
import org.springframework.boot.actuate.autoconfigure.metrics.export.properties.StepRegistryPropertiesConfigAdapter;
22-
import org.springframework.boot.actuate.autoconfigure.metrics.export.signalfx.SignalFxProperties.HistogramType;
2322

2423
/**
2524
* Adapter to convert {@link SignalFxProperties} to a {@link SignalFxConfig}.
2625
*
2726
* @author Jon Schneider
2827
* @since 2.0.0
28+
* @deprecated since 3.5.0 for removal in 3.7.0
2929
*/
30+
@Deprecated(since = "3.5.0", forRemoval = true)
31+
@SuppressWarnings("removal")
3032
public class SignalFxPropertiesConfigAdapter extends StepRegistryPropertiesConfigAdapter<SignalFxProperties>
3133
implements SignalFxConfig {
3234

@@ -61,7 +63,7 @@ public boolean publishCumulativeHistogram() {
6163
}
6264

6365
private boolean isPublishCumulativeHistogram(SignalFxProperties properties) {
64-
return HistogramType.CUMULATIVE == properties.getPublishedHistogramType();
66+
return SignalFxProperties.HistogramType.CUMULATIVE == properties.getPublishedHistogramType();
6567
}
6668

6769
@Override
@@ -70,7 +72,7 @@ public boolean publishDeltaHistogram() {
7072
}
7173

7274
private boolean isPublishDeltaHistogram(SignalFxProperties properties) {
73-
return HistogramType.DELTA == properties.getPublishedHistogramType();
75+
return SignalFxProperties.HistogramType.DELTA == properties.getPublishedHistogramType();
7476
}
7577

7678
}

spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/metrics/export/signalfx/SignalFxMetricsExportAutoConfigurationTests.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright 2012-2023 the original author or authors.
2+
* Copyright 2012-2025 the original author or authors.
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -34,6 +34,7 @@
3434
*
3535
* @author Andy Wilkinson
3636
*/
37+
@SuppressWarnings("removal")
3738
class SignalFxMetricsExportAutoConfigurationTests {
3839

3940
private final ApplicationContextRunner contextRunner = new ApplicationContextRunner()

spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/metrics/export/signalfx/SignalFxPropertiesConfigAdapterTests.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright 2012-2023 the original author or authors.
2+
* Copyright 2012-2025 the original author or authors.
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -19,7 +19,6 @@
1919
import org.junit.jupiter.api.Test;
2020

2121
import org.springframework.boot.actuate.autoconfigure.metrics.export.properties.StepRegistryPropertiesConfigAdapterTests;
22-
import org.springframework.boot.actuate.autoconfigure.metrics.export.signalfx.SignalFxProperties.HistogramType;
2322

2423
import static org.assertj.core.api.Assertions.assertThat;
2524

@@ -28,6 +27,7 @@
2827
*
2928
* @author Mirko Sobeck
3029
*/
30+
@SuppressWarnings("removal")
3131
class SignalFxPropertiesConfigAdapterTests
3232
extends StepRegistryPropertiesConfigAdapterTests<SignalFxProperties, SignalFxPropertiesConfigAdapter> {
3333

@@ -70,15 +70,15 @@ void whenPropertiesSourceIsSetAdapterSourceReturnsIt() {
7070
@Test
7171
void whenPropertiesPublishHistogramTypeIsCumulativeAdapterPublishCumulativeHistogramReturnsIt() {
7272
SignalFxProperties properties = createProperties();
73-
properties.setPublishedHistogramType(HistogramType.CUMULATIVE);
73+
properties.setPublishedHistogramType(SignalFxProperties.HistogramType.CUMULATIVE);
7474
assertThat(createConfigAdapter(properties).publishCumulativeHistogram()).isTrue();
7575
assertThat(createConfigAdapter(properties).publishDeltaHistogram()).isFalse();
7676
}
7777

7878
@Test
7979
void whenPropertiesPublishHistogramTypeIsDeltaAdapterPublishDeltaHistogramReturnsIt() {
8080
SignalFxProperties properties = createProperties();
81-
properties.setPublishedHistogramType(HistogramType.DELTA);
81+
properties.setPublishedHistogramType(SignalFxProperties.HistogramType.DELTA);
8282
assertThat(createConfigAdapter(properties).publishDeltaHistogram()).isTrue();
8383
assertThat(createConfigAdapter(properties).publishCumulativeHistogram()).isFalse();
8484
}

spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/metrics/export/signalfx/SignalFxPropertiesTests.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright 2012-2023 the original author or authors.
2+
* Copyright 2012-2025 the original author or authors.
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -20,7 +20,6 @@
2020
import org.junit.jupiter.api.Test;
2121

2222
import org.springframework.boot.actuate.autoconfigure.metrics.export.properties.StepRegistryPropertiesTests;
23-
import org.springframework.boot.actuate.autoconfigure.metrics.export.signalfx.SignalFxProperties.HistogramType;
2423

2524
import static org.assertj.core.api.Assertions.assertThat;
2625

@@ -29,6 +28,7 @@
2928
*
3029
* @author Stephane Nicoll
3130
*/
31+
@SuppressWarnings("removal")
3232
class SignalFxPropertiesTests extends StepRegistryPropertiesTests {
3333

3434
@Test
@@ -43,7 +43,7 @@ void defaultValuesAreConsistent() {
4343
// histogram type should be published.
4444
assertThat(config.publishCumulativeHistogram()).isFalse();
4545
assertThat(config.publishDeltaHistogram()).isFalse();
46-
assertThat(properties.getPublishedHistogramType()).isEqualTo(HistogramType.DEFAULT);
46+
assertThat(properties.getPublishedHistogramType()).isEqualTo(SignalFxProperties.HistogramType.DEFAULT);
4747
}
4848

4949
}

spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/metrics/test/MetricsRun.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright 2012-2023 the original author or authors.
2+
* Copyright 2012-2025 the original author or authors.
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -32,7 +32,6 @@
3232
import org.springframework.boot.actuate.autoconfigure.metrics.export.newrelic.NewRelicMetricsExportAutoConfiguration;
3333
import org.springframework.boot.actuate.autoconfigure.metrics.export.otlp.OtlpMetricsExportAutoConfiguration;
3434
import org.springframework.boot.actuate.autoconfigure.metrics.export.prometheus.PrometheusMetricsExportAutoConfiguration;
35-
import org.springframework.boot.actuate.autoconfigure.metrics.export.signalfx.SignalFxMetricsExportAutoConfiguration;
3635
import org.springframework.boot.actuate.autoconfigure.metrics.export.simple.SimpleMetricsExportAutoConfiguration;
3736
import org.springframework.boot.actuate.autoconfigure.metrics.export.statsd.StatsdMetricsExportAutoConfiguration;
3837
import org.springframework.boot.autoconfigure.AutoConfigurations;
@@ -47,6 +46,7 @@
4746
* @author Jon Schneider
4847
* @author Phillip Webb
4948
*/
49+
@SuppressWarnings("removal")
5050
public final class MetricsRun {
5151

5252
private static final Set<Class<?>> EXPORT_AUTO_CONFIGURATIONS;
@@ -63,7 +63,8 @@ public final class MetricsRun {
6363
implementations.add(OtlpMetricsExportAutoConfiguration.class);
6464
implementations.add(PrometheusMetricsExportAutoConfiguration.class);
6565
implementations.add(SimpleMetricsExportAutoConfiguration.class);
66-
implementations.add(SignalFxMetricsExportAutoConfiguration.class);
66+
implementations.add(
67+
org.springframework.boot.actuate.autoconfigure.metrics.export.signalfx.SignalFxMetricsExportAutoConfiguration.class);
6768
implementations.add(StatsdMetricsExportAutoConfiguration.class);
6869
EXPORT_AUTO_CONFIGURATIONS = Collections.unmodifiableSet(implementations);
6970
}

spring-boot-project/spring-boot-docs/src/docs/antora/modules/ROOT/pages/redirect.adoc

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1134,8 +1134,6 @@
11341134
* xref:reference:actuator/metrics.adoc#actuator.metrics.export.otlp[#actuator.metrics.export.otlp]
11351135
* xref:reference:actuator/metrics.adoc#actuator.metrics.export.prometheus[#actuator.metrics.export.prometheus]
11361136
* xref:reference:actuator/metrics.adoc#actuator.metrics.export.prometheus[#production-ready-metrics-export-prometheus]
1137-
* xref:reference:actuator/metrics.adoc#actuator.metrics.export.signalfx[#actuator.metrics.export.signalfx]
1138-
* xref:reference:actuator/metrics.adoc#actuator.metrics.export.signalfx[#production-ready-metrics-export-signalfx]
11391137
* xref:reference:actuator/metrics.adoc#actuator.metrics.export.simple[#actuator.metrics.export.simple]
11401138
* xref:reference:actuator/metrics.adoc#actuator.metrics.export.simple[#production-ready-metrics-export-simple]
11411139
* xref:reference:actuator/metrics.adoc#actuator.metrics.export.stackdriver[#actuator.metrics.export.stackdriver]

spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/actuator/metrics.adoc

Lines changed: 0 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ Spring Boot Actuator provides dependency management and auto-configuration for {
1717
- xref:actuator/metrics.adoc#actuator.metrics.export.newrelic[]
1818
- xref:actuator/metrics.adoc#actuator.metrics.export.otlp[]
1919
- xref:actuator/metrics.adoc#actuator.metrics.export.prometheus[]
20-
- xref:actuator/metrics.adoc#actuator.metrics.export.signalfx[]
2120
- xref:actuator/metrics.adoc#actuator.metrics.export.simple[] (in-memory)
2221
- xref:actuator/metrics.adoc#actuator.metrics.export.stackdriver[]
2322
- xref:actuator/metrics.adoc#actuator.metrics.export.statsd[]
@@ -573,34 +572,6 @@ For advanced configuration, you can also provide your own javadoc:org.springfram
573572

574573

575574

576-
[[actuator.metrics.export.signalfx]]
577-
=== SignalFx
578-
579-
SignalFx registry periodically pushes metrics to {url-micrometer-docs-implementations}/signalFx[SignalFx].
580-
To export metrics to https://www.signalfx.com[SignalFx], you must provide your access token:
581-
582-
[configprops,yaml]
583-
----
584-
management:
585-
signalfx:
586-
metrics:
587-
export:
588-
access-token: "YOUR_ACCESS_TOKEN"
589-
----
590-
591-
You can also change the interval at which metrics are sent to SignalFx:
592-
593-
[configprops,yaml]
594-
----
595-
management:
596-
signalfx:
597-
metrics:
598-
export:
599-
step: "30s"
600-
----
601-
602-
603-
604575
[[actuator.metrics.export.simple]]
605576
=== Simple
606577

0 commit comments

Comments
 (0)