|
9 | 9 | import io.micrometer.core.instrument.MeterRegistry;
|
10 | 10 | import io.opentelemetry.javaagent.instrumentation.micrometer.v1_5.MicrometerSingletons;
|
11 | 11 | import org.springframework.boot.actuate.autoconfigure.metrics.CompositeMeterRegistryAutoConfiguration;
|
| 12 | +import org.springframework.boot.actuate.autoconfigure.metrics.MetricsAutoConfiguration; |
12 | 13 | import org.springframework.boot.actuate.autoconfigure.metrics.export.simple.SimpleMetricsExportAutoConfiguration;
|
13 | 14 | import org.springframework.boot.autoconfigure.AutoConfigureAfter;
|
14 | 15 | import org.springframework.boot.autoconfigure.AutoConfigureBefore;
|
|
18 | 19 | import org.springframework.context.annotation.Configuration;
|
19 | 20 |
|
20 | 21 | @Configuration
|
| 22 | +// see |
| 23 | +// https://github.com/spring-projects/spring-boot/blob/main/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/prometheus/PrometheusMetricsExportAutoConfiguration.java |
| 24 | +// for an example of how configure a MeterRegistry properly |
21 | 25 | // CompositeMeterRegistryAutoConfiguration configures the "final" composite registry
|
22 |
| -@AutoConfigureBefore(CompositeMeterRegistryAutoConfiguration.class) |
23 |
| -// configure after the SimpleMeterRegistry has initialized; it is normally the last MeterRegistry |
24 |
| -// implementation to be configured, as it's used as a fallback |
25 |
| -// the OTel registry should be added in addition to that fallback and not replace it |
26 |
| -@AutoConfigureAfter(SimpleMetricsExportAutoConfiguration.class) |
| 26 | +@AutoConfigureBefore({ |
| 27 | + CompositeMeterRegistryAutoConfiguration.class, |
| 28 | + SimpleMetricsExportAutoConfiguration.class |
| 29 | +}) |
| 30 | +@AutoConfigureAfter(MetricsAutoConfiguration.class) |
27 | 31 | @ConditionalOnBean(Clock.class)
|
28 | 32 | @ConditionalOnClass(MeterRegistry.class)
|
29 | 33 | public class OpenTelemetryMeterRegistryAutoConfiguration {
|
|
0 commit comments