From 2f564e67944238fb0d9680d9eb9a948549f574af Mon Sep 17 00:00:00 2001 From: Jon Schneider Date: Tue, 21 Apr 2020 14:11:57 -0400 Subject: [PATCH] Improve property name in thrown Micrometer ValidationException --- .../metrics/ValidationFailureAnalyzer.java | 2 +- .../appoptics/AppOpticsPropertiesConfigAdapter.java | 5 +++++ .../export/datadog/DatadogPropertiesConfigAdapter.java | 5 +++++ .../dynatrace/DynatracePropertiesConfigAdapter.java | 5 +++++ .../export/elastic/ElasticPropertiesConfigAdapter.java | 5 +++++ .../export/ganglia/GangliaPropertiesConfigAdapter.java | 5 +++++ .../graphite/GraphitePropertiesConfigAdapter.java | 5 +++++ .../export/humio/HumioPropertiesConfigAdapter.java | 5 +++++ .../export/influx/InfluxPropertiesConfigAdapter.java | 5 +++++ .../metrics/export/jmx/JmxPropertiesConfigAdapter.java | 5 +++++ .../export/kairos/KairosPropertiesConfigAdapter.java | 5 +++++ .../newrelic/NewRelicPropertiesConfigAdapter.java | 5 +++++ .../prometheus/PrometheusPropertiesConfigAdapter.java | 5 +++++ .../signalfx/SignalFxPropertiesConfigAdapter.java | 5 +++++ .../export/simple/SimplePropertiesConfigAdapter.java | 5 +++++ .../StackdriverPropertiesConfigAdapter.java | 5 +++++ .../export/statsd/StatsdPropertiesConfigAdapter.java | 5 +++++ .../wavefront/WavefrontPropertiesConfigAdapter.java | 5 +++++ .../metrics/ValidationFailureAnalyzerTests.java | 10 +++++++--- 19 files changed, 93 insertions(+), 4 deletions(-) diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/ValidationFailureAnalyzer.java b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/ValidationFailureAnalyzer.java index fa9e41bd02ec..c10afeef70d7 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/ValidationFailureAnalyzer.java +++ b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/ValidationFailureAnalyzer.java @@ -34,7 +34,7 @@ class ValidationFailureAnalyzer extends AbstractFailureAnalyzer failure : cause.getValidation().failures()) { - description.append(String.format("%n - management.metrics.export.%s was '%s' but it %s", + description.append(String.format("%n - %s was '%s' but it %s", failure.getProperty(), failure.getValue(), failure.getMessage())); } return new FailureAnalysis(description.toString(), diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/appoptics/AppOpticsPropertiesConfigAdapter.java b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/appoptics/AppOpticsPropertiesConfigAdapter.java index 7a959fb7bc4d..5f7077e58d7a 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/appoptics/AppOpticsPropertiesConfigAdapter.java +++ b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/appoptics/AppOpticsPropertiesConfigAdapter.java @@ -32,6 +32,11 @@ class AppOpticsPropertiesConfigAdapter extends StepRegistryPropertiesConfigAdapt super(properties); } + @Override + public String prefix() { + return "management.metrics.export.appoptics"; + } + @Override public String uri() { return get(AppOpticsProperties::getUri, AppOpticsConfig.super::uri); diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/datadog/DatadogPropertiesConfigAdapter.java b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/datadog/DatadogPropertiesConfigAdapter.java index db417992cb07..a4a30c652ce3 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/datadog/DatadogPropertiesConfigAdapter.java +++ b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/datadog/DatadogPropertiesConfigAdapter.java @@ -33,6 +33,11 @@ class DatadogPropertiesConfigAdapter extends StepRegistryPropertiesConfigAdapter super(properties); } + @Override + public String prefix() { + return "management.metrics.export.datadog"; + } + @Override public String apiKey() { return get(DatadogProperties::getApiKey, DatadogConfig.super::apiKey); diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/dynatrace/DynatracePropertiesConfigAdapter.java b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/dynatrace/DynatracePropertiesConfigAdapter.java index 4a3a2f57242a..bb8830874075 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/dynatrace/DynatracePropertiesConfigAdapter.java +++ b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/dynatrace/DynatracePropertiesConfigAdapter.java @@ -32,6 +32,11 @@ class DynatracePropertiesConfigAdapter extends StepRegistryPropertiesConfigAdapt super(properties); } + @Override + public String prefix() { + return "management.metrics.export.dynatrace"; + } + @Override public String apiToken() { return get(DynatraceProperties::getApiToken, DynatraceConfig.super::apiToken); diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/elastic/ElasticPropertiesConfigAdapter.java b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/elastic/ElasticPropertiesConfigAdapter.java index 06a507b506f3..ba5a7f3a5ef5 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/elastic/ElasticPropertiesConfigAdapter.java +++ b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/elastic/ElasticPropertiesConfigAdapter.java @@ -32,6 +32,11 @@ class ElasticPropertiesConfigAdapter extends StepRegistryPropertiesConfigAdapter super(properties); } + @Override + public String prefix() { + return "management.metrics.export.elastic"; + } + @Override public String host() { return get(ElasticProperties::getHost, ElasticConfig.super::host); diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/ganglia/GangliaPropertiesConfigAdapter.java b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/ganglia/GangliaPropertiesConfigAdapter.java index 4ce050bd9127..9f38e60c73e8 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/ganglia/GangliaPropertiesConfigAdapter.java +++ b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/ganglia/GangliaPropertiesConfigAdapter.java @@ -36,6 +36,11 @@ class GangliaPropertiesConfigAdapter extends PropertiesConfigAdapter super(properties); } + @Override + public String prefix() { + return "management.metrics.export.jmx"; + } + @Override public String get(String key) { return null; diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/kairos/KairosPropertiesConfigAdapter.java b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/kairos/KairosPropertiesConfigAdapter.java index 0a946f13c7fa..71a94fd80bb5 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/kairos/KairosPropertiesConfigAdapter.java +++ b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/kairos/KairosPropertiesConfigAdapter.java @@ -32,6 +32,11 @@ class KairosPropertiesConfigAdapter extends StepRegistryPropertiesConfigAdapter< super(properties); } + @Override + public String prefix() { + return "management.metrics.export.kairos"; + } + @Override public String uri() { return get(KairosProperties::getUri, KairosConfig.super::uri); diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/newrelic/NewRelicPropertiesConfigAdapter.java b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/newrelic/NewRelicPropertiesConfigAdapter.java index b57f9b9f9e07..60e0a336259e 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/newrelic/NewRelicPropertiesConfigAdapter.java +++ b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/newrelic/NewRelicPropertiesConfigAdapter.java @@ -35,6 +35,11 @@ public NewRelicPropertiesConfigAdapter(NewRelicProperties properties) { super(properties); } + @Override + public String prefix() { + return "management.metrics.export.newrelic"; + } + @Override public boolean meterNameEventTypeEnabled() { return get(NewRelicProperties::isMeterNameEventTypeEnabled, NewRelicConfig.super::meterNameEventTypeEnabled); diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/prometheus/PrometheusPropertiesConfigAdapter.java b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/prometheus/PrometheusPropertiesConfigAdapter.java index d95fab896f9f..f44f7668919a 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/prometheus/PrometheusPropertiesConfigAdapter.java +++ b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/prometheus/PrometheusPropertiesConfigAdapter.java @@ -36,6 +36,11 @@ class PrometheusPropertiesConfigAdapter extends PropertiesConfigAdapter configuration) { } @Configuration(proxyBeanMethods = false) + @Import(NewRelicProperties.class) static class MissingAccountIdAndApiKeyConfiguration { - @Bean - NewRelicMeterRegistry meterRegistry() { - return new NewRelicMeterRegistry((key) -> null, Clock.SYSTEM); + NewRelicMeterRegistry meterRegistry(NewRelicProperties newRelicProperties) { + return new NewRelicMeterRegistry(new NewRelicPropertiesConfigAdapter(newRelicProperties), Clock.SYSTEM); } }