Skip to content

Commit 31db1d8

Browse files
committed
Merge branch '3.1.x'
Closes gh-36430
2 parents 62c9936 + 7195d87 commit 31db1d8

File tree

2 files changed

+11
-1
lines changed

2 files changed

+11
-1
lines changed

spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/prometheus/PrometheusMetricsExportAutoConfiguration.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ public CollectorRegistry collectorRegistry() {
9090
}
9191

9292
@Bean
93-
@ConditionalOnMissingBean
93+
@ConditionalOnMissingBean(ExemplarSampler.class)
9494
@ConditionalOnBean(SpanContextSupplier.class)
9595
public DefaultExemplarSampler exemplarSampler(SpanContextSupplier spanContextSupplier) {
9696
return new DefaultExemplarSampler(spanContextSupplier);

spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/metrics/export/prometheus/PrometheusMetricsExportAutoConfigurationTests.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@
4545
import org.springframework.test.util.ReflectionTestUtils;
4646

4747
import static org.assertj.core.api.Assertions.assertThat;
48+
import static org.mockito.Mockito.mock;
4849

4950
/**
5051
* Tests for {@link PrometheusMetricsExportAutoConfiguration}.
@@ -125,6 +126,15 @@ void autoConfiguresExemplarSamplerIfSpanContextSupplierIsPresent() {
125126
.hasSingleBean(PrometheusMeterRegistry.class));
126127
}
127128

129+
@Test
130+
void allowsCustomExemplarSamplerToBeUsed() {
131+
this.contextRunner.withUserConfiguration(ExemplarsConfiguration.class)
132+
.withBean("customExemplarSampler", ExemplarSampler.class, () -> mock(ExemplarSampler.class))
133+
.run((context) -> assertThat(context).hasSingleBean(ExemplarSampler.class)
134+
.getBean(ExemplarSampler.class)
135+
.isSameAs(context.getBean("customExemplarSampler")));
136+
}
137+
128138
@Test
129139
void exemplarSamplerIsNotAutoConfiguredIfSpanContextSupplierIsMissing() {
130140
this.contextRunner.withUserConfiguration(BaseConfiguration.class)

0 commit comments

Comments
 (0)