Skip to content

Commit 485b8f4

Browse files
authored
use duration parser of config properties for consistency (#10512)
1 parent d73304b commit 485b8f4

File tree

2 files changed

+8
-35
lines changed

2 files changed

+8
-35
lines changed

instrumentation/spring/spring-boot-autoconfigure/src/main/java/io/opentelemetry/instrumentation/spring/autoconfigure/MetricExportProperties.java

-25
This file was deleted.

instrumentation/spring/spring-boot-autoconfigure/src/main/java/io/opentelemetry/instrumentation/spring/autoconfigure/OpenTelemetryAutoConfiguration.java

+8-10
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
import io.opentelemetry.sdk.trace.export.BatchSpanProcessor;
3434
import io.opentelemetry.sdk.trace.export.SpanExporter;
3535
import io.opentelemetry.sdk.trace.samplers.Sampler;
36+
import java.time.Duration;
3637
import java.util.Collections;
3738
import java.util.List;
3839
import org.springframework.beans.factory.ObjectProvider;
@@ -56,11 +57,7 @@
5657
* <p>Updates the sampler probability for the configured {@link TracerProvider}.
5758
*/
5859
@Configuration
59-
@EnableConfigurationProperties({
60-
MetricExportProperties.class,
61-
SamplerProperties.class,
62-
OtlpExporterProperties.class
63-
})
60+
@EnableConfigurationProperties({SamplerProperties.class, OtlpExporterProperties.class})
6461
public class OpenTelemetryAutoConfiguration {
6562

6663
public OpenTelemetryAutoConfiguration() {}
@@ -142,25 +139,26 @@ public SdkLoggerProvider sdkLoggerProvider(
142139
@Bean(destroyMethod = "") // SDK components are shutdown from the OpenTelemetry instance
143140
@ConditionalOnMissingBean
144141
public SdkMeterProvider sdkMeterProvider(
145-
MetricExportProperties properties,
142+
ConfigProperties configProperties,
146143
ObjectProvider<List<MetricExporter>> metricExportersProvider,
147144
Resource otelResource) {
148145

149146
SdkMeterProviderBuilder meterProviderBuilder = SdkMeterProvider.builder();
150147

151148
metricExportersProvider.getIfAvailable(Collections::emptyList).stream()
152-
.map(metricExporter -> createPeriodicMetricReader(properties, metricExporter))
149+
.map(metricExporter -> createPeriodicMetricReader(configProperties, metricExporter))
153150
.forEach(meterProviderBuilder::registerMetricReader);
154151

155152
return meterProviderBuilder.setResource(otelResource).build();
156153
}
157154

158155
private static PeriodicMetricReader createPeriodicMetricReader(
159-
MetricExportProperties properties, MetricExporter metricExporter) {
156+
ConfigProperties properties, MetricExporter metricExporter) {
160157
PeriodicMetricReaderBuilder metricReaderBuilder =
161158
PeriodicMetricReader.builder(metricExporter);
162-
if (properties.getInterval() != null) {
163-
metricReaderBuilder.setInterval(properties.getInterval());
159+
Duration interval = properties.getDuration("otel.metric.export.interval");
160+
if (interval != null) {
161+
metricReaderBuilder.setInterval(interval);
164162
}
165163
return metricReaderBuilder.build();
166164
}

0 commit comments

Comments
 (0)