diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/otlp/OtlpMetricsProperties.java b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/otlp/OtlpMetricsProperties.java index 60021201c1..bcda23c88c 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/otlp/OtlpMetricsProperties.java +++ b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/otlp/OtlpMetricsProperties.java @@ -39,7 +39,7 @@ public class OtlpMetricsProperties extends StepRegistryProperties { /** * URI of the OTLP server. */ - private String url = "http://localhost:4318/v1/metrics"; + private String url; /** * Aggregation temporality of sums. It defines the way additive values are expressed. diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/metrics/export/otlp/OtlpMetricsPropertiesConfigAdapterTests.java b/spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/metrics/export/otlp/OtlpMetricsPropertiesConfigAdapterTests.java index bd2bba76f3..93ef9fa3f5 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/metrics/export/otlp/OtlpMetricsPropertiesConfigAdapterTests.java +++ b/spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/metrics/export/otlp/OtlpMetricsPropertiesConfigAdapterTests.java @@ -29,6 +29,8 @@ import org.springframework.boot.actuate.autoconfigure.opentelemetry.OpenTelemetr import org.springframework.mock.env.MockEnvironment; import static org.assertj.core.api.Assertions.assertThat; +import static org.mockito.BDDMockito.given; +import static org.mockito.Mockito.spy; /** * Tests for {@link OtlpMetricsPropertiesConfigAdapter}. @@ -54,6 +56,20 @@ class OtlpMetricsPropertiesConfigAdapterTests { this.connectionDetails = new PropertiesOtlpMetricsConnectionDetails(this.properties); } + @Test + void whenPropertiesUrlIsNotSetAdapterUrlReturnsDefault() { + assertThat(this.properties.getUrl()).isNull(); + assertThat(createAdapter().url()).isEqualTo("http://localhost:4318/v1/metrics"); + } + + @Test + void whenPropertiesUrlIsNotSetThanUseOtlpConfigUrlAsFallback() { + assertThat(this.properties.getUrl()).isNull(); + OtlpMetricsPropertiesConfigAdapter adapter = spy(createAdapter()); + given(adapter.get("management.otlp.metrics.export.url")).willReturn("https://my-endpoint/v1/metrics"); + assertThat(adapter.url()).isEqualTo("https://my-endpoint/v1/metrics"); + } + @Test void whenPropertiesUrlIsSetAdapterUrlReturnsIt() { this.properties.setUrl("http://another-url:4318/v1/metrics"); diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/metrics/export/otlp/OtlpMetricsPropertiesTests.java b/spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/metrics/export/otlp/OtlpMetricsPropertiesTests.java index 36f2f85af6..d3f51f044c 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/metrics/export/otlp/OtlpMetricsPropertiesTests.java +++ b/spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/metrics/export/otlp/OtlpMetricsPropertiesTests.java @@ -35,7 +35,6 @@ class OtlpMetricsPropertiesTests extends StepRegistryPropertiesTests { OtlpMetricsProperties properties = new OtlpMetricsProperties(); OtlpConfig config = OtlpConfig.DEFAULT; assertStepRegistryDefaultValues(properties, config); - assertThat(properties.getUrl()).isEqualTo(config.url()); assertThat(properties.getAggregationTemporality()).isSameAs(config.aggregationTemporality()); assertThat(properties.getHistogramFlavor()).isSameAs(config.histogramFlavor()); assertThat(properties.getMaxScale()).isEqualTo(config.maxScale());