Skip to content

Commit 62ebe9c

Browse files
committed
Adapt to Wavefront SDK 2.1
Closes gh-20854
1 parent 9752cd4 commit 62ebe9c

File tree

3 files changed

+18
-16
lines changed

3 files changed

+18
-16
lines changed

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

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
import java.time.Duration;
2020

2121
import com.wavefront.sdk.common.WavefrontSender;
22-
import com.wavefront.sdk.direct.ingestion.WavefrontDirectIngestionClient.Builder;
22+
import com.wavefront.sdk.common.clients.WavefrontClient.Builder;
2323
import io.micrometer.core.instrument.Clock;
2424
import io.micrometer.wavefront.WavefrontConfig;
2525
import io.micrometer.wavefront.WavefrontMeterRegistry;
@@ -89,7 +89,6 @@ private WavefrontSender createWavefrontSender(WavefrontConfig wavefrontConfig) {
8989
PropertyMapper mapper = PropertyMapper.get().alwaysApplyingWhenNonNull();
9090
Sender sender = this.properties.getSender();
9191
mapper.from(sender.getMaxQueueSize()).to(builder::maxQueueSize);
92-
mapper.from(sender.getBatchSize()).to(builder::batchSize);
9392
mapper.from(sender.getFlushInterval()).asInt(Duration::getSeconds).to(builder::flushIntervalSeconds);
9493
mapper.from(sender.getMessageSize()).asInt(DataSize::toBytes).to(builder::messageSizeBytes);
9594
return builder.build();

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

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -99,8 +99,6 @@ public static class Sender {
9999

100100
private int maxQueueSize = 50000;
101101

102-
private int batchSize = 10000;
103-
104102
private Duration flushInterval = Duration.ofSeconds(1);
105103

106104
private DataSize messageSize = DataSize.ofBytes(Integer.MAX_VALUE);
@@ -113,14 +111,6 @@ public void setMaxQueueSize(int maxQueueSize) {
113111
this.maxQueueSize = maxQueueSize;
114112
}
115113

116-
public int getBatchSize() {
117-
return this.batchSize;
118-
}
119-
120-
public void setBatchSize(int batchSize) {
121-
this.batchSize = batchSize;
122-
}
123-
124114
public Duration getFlushInterval() {
125115
return this.flushInterval;
126116
}

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

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
import io.micrometer.core.instrument.Clock;
2121
import io.micrometer.wavefront.WavefrontConfig;
2222
import io.micrometer.wavefront.WavefrontMeterRegistry;
23-
import org.junit.jupiter.api.Disabled;
2423
import org.junit.jupiter.api.Test;
2524

2625
import org.springframework.boot.autoconfigure.AutoConfigurations;
@@ -36,6 +35,7 @@
3635
* Tests for {@link WavefrontMetricsExportAutoConfiguration}.
3736
*
3837
* @author Jon Schneider
38+
* @author Stephane Nicoll
3939
*/
4040
class WavefrontMetricsExportAutoConfigurationTests {
4141

@@ -70,23 +70,36 @@ void allowsConfigToBeCustomized() {
7070
.hasSingleBean(WavefrontSender.class).hasBean("customConfig"));
7171
}
7272

73+
@Test
74+
void defaultWavefrontSenderSettingsAreConsistent() {
75+
this.contextRunner.withUserConfiguration(BaseConfiguration.class)
76+
.withPropertyValues("management.metrics.export.wavefront.api-token=abcde").run((context) -> {
77+
WavefrontProperties properties = new WavefrontProperties();
78+
WavefrontSender sender = context.getBean(WavefrontSender.class);
79+
assertThat(sender).extracting("metricsBuffer").hasFieldOrPropertyWithValue("capacity",
80+
properties.getSender().getMaxQueueSize());
81+
assertThat(sender).hasFieldOrPropertyWithValue("batchSize", properties.getBatchSize());
82+
assertThat(sender).hasFieldOrPropertyWithValue("messageSizeBytes",
83+
(int) properties.getSender().getMessageSize().toBytes());
84+
});
85+
}
86+
7387
@Test
7488
void configureWavefrontSender() {
7589
this.contextRunner.withUserConfiguration(BaseConfiguration.class)
7690
.withPropertyValues("management.metrics.export.wavefront.api-token=abcde",
91+
"management.metrics.export.wavefront.batch-size=50",
7792
"management.metrics.export.wavefront.sender.max-queue-size=100",
78-
"management.metrics.export.wavefront.sender.batch-size=200",
7993
"management.metrics.export.wavefront.sender.message-size=1KB")
8094
.run((context) -> {
8195
WavefrontSender sender = context.getBean(WavefrontSender.class);
96+
assertThat(sender).hasFieldOrPropertyWithValue("batchSize", 50);
8297
assertThat(sender).extracting("metricsBuffer").hasFieldOrPropertyWithValue("capacity", 100);
83-
assertThat(sender).hasFieldOrPropertyWithValue("batchSize", 200);
8498
assertThat(sender).hasFieldOrPropertyWithValue("messageSizeBytes", 1024);
8599
});
86100
}
87101

88102
@Test
89-
@Disabled("see https://github.com/micrometer-metrics/micrometer/issues/1964")
90103
void allowsWavefrontSenderToBeCustomized() {
91104
this.contextRunner.withUserConfiguration(CustomSenderConfiguration.class)
92105
.run((context) -> assertThat(context).hasSingleBean(Clock.class)

0 commit comments

Comments
 (0)