Implement DatadogConfig in DatadogConfiguration

This commit is contained in:
Chris Eager 2021-06-30 16:49:04 -05:00 committed by Chris Eager
parent 7395489bac
commit e52b8c8423
2 changed files with 19 additions and 31 deletions

View File

@ -35,7 +35,6 @@ import io.micrometer.core.instrument.Metrics;
import io.micrometer.core.instrument.Tags;
import io.micrometer.core.instrument.config.MeterFilter;
import io.micrometer.core.instrument.distribution.DistributionStatisticConfig;
import io.micrometer.datadog.DatadogConfig;
import io.micrometer.datadog.DatadogMeterRegistry;
import io.micrometer.wavefront.WavefrontConfig;
import io.micrometer.wavefront.WavefrontMeterRegistry;
@ -282,32 +281,7 @@ public class WhisperServerService extends Application<WhisperServerConfiguration
});
{
final DatadogMeterRegistry datadogMeterRegistry = new DatadogMeterRegistry(new DatadogConfig() {
@Override
public String get(final String key) {
return null;
}
@Override
public String apiKey() {
return config.getDatadogConfiguration().getApiKey();
}
@Override
public Duration step() {
return config.getDatadogConfiguration().getStep();
}
@Override
public int batchSize() {
return config.getDatadogConfiguration().getBatchSize();
}
@Override
public String hostTag() {
return "host";
}
}, Clock.SYSTEM);
final DatadogMeterRegistry datadogMeterRegistry = new DatadogMeterRegistry(config.getDatadogConfiguration(), Clock.SYSTEM);
datadogMeterRegistry.config().commonTags(
Tags.of(

View File

@ -6,12 +6,13 @@
package org.whispersystems.textsecuregcm.configuration;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.micrometer.datadog.DatadogConfig;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.time.Duration;
public class DatadogConfiguration {
public class DatadogConfiguration implements DatadogConfig {
@JsonProperty
@NotBlank
@ -29,11 +30,13 @@ public class DatadogConfiguration {
@Min(1)
private int batchSize = 5_000;
public String getApiKey() {
@Override
public String apiKey() {
return apiKey;
}
public Duration getStep() {
@Override
public Duration step() {
return step;
}
@ -41,7 +44,18 @@ public class DatadogConfiguration {
return environment;
}
public int getBatchSize() {
@Override
public int batchSize() {
return batchSize;
}
@Override
public String hostTag() {
return "host";
}
@Override
public String get(final String key) {
return null;
}
}