Merge pull request #44320 from izeye

* pr/44320:
  Polish "Remove deprecated micrometer.observations.annotations.enabled"
  Remove deprecated micrometer.observations.annotations.enabled

Closes gh-44320
This commit is contained in:
Stéphane Nicoll
2025-02-18 11:25:34 +01:00
5 changed files with 4 additions and 76 deletions

View File

@@ -23,16 +23,13 @@ import io.micrometer.core.instrument.MeterRegistry;
import org.aspectj.weaver.Advice;
import org.springframework.beans.factory.ObjectProvider;
import org.springframework.boot.actuate.autoconfigure.metrics.MetricsAspectsAutoConfiguration.ObservationAnnotationsEnabledCondition;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.condition.AnyNestedCondition;
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnBooleanProperty;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Conditional;
/**
* {@link EnableAutoConfiguration Auto-configuration} for Micrometer-based metrics
@@ -43,7 +40,7 @@ import org.springframework.context.annotation.Conditional;
*/
@AutoConfiguration(after = { MetricsAutoConfiguration.class, CompositeMeterRegistryAutoConfiguration.class })
@ConditionalOnClass({ MeterRegistry.class, Advice.class })
@Conditional(ObservationAnnotationsEnabledCondition.class)
@ConditionalOnBooleanProperty("management.observations.annotations.enabled")
@ConditionalOnBean(MeterRegistry.class)
public class MetricsAspectsAutoConfiguration {
@@ -62,22 +59,4 @@ public class MetricsAspectsAutoConfiguration {
return timedAspect;
}
static final class ObservationAnnotationsEnabledCondition extends AnyNestedCondition {
ObservationAnnotationsEnabledCondition() {
super(ConfigurationPhase.PARSE_CONFIGURATION);
}
@ConditionalOnBooleanProperty("micrometer.observations.annotations.enabled")
static class MicrometerObservationsEnabledCondition {
}
@ConditionalOnBooleanProperty("management.observations.annotations.enabled")
static class ManagementObservationsEnabledCondition {
}
}
}

View File

@@ -33,13 +33,11 @@ import org.aspectj.weaver.Advice;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.condition.AnyNestedCondition;
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnBooleanProperty;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Conditional;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.Ordered;
import org.springframework.core.annotation.Order;
@@ -104,7 +102,7 @@ public class MicrometerTracingAutoConfiguration {
@Configuration(proxyBeanMethods = false)
@ConditionalOnClass(Advice.class)
@Conditional(ObservationAnnotationsEnabledCondition.class)
@ConditionalOnBooleanProperty("management.observations.annotations.enabled")
static class SpanAspectConfiguration {
@Bean
@@ -152,22 +150,4 @@ public class MicrometerTracingAutoConfiguration {
}
static final class ObservationAnnotationsEnabledCondition extends AnyNestedCondition {
ObservationAnnotationsEnabledCondition() {
super(ConfigurationPhase.PARSE_CONFIGURATION);
}
@ConditionalOnBooleanProperty("micrometer.observations.annotations.enabled")
static class MicrometerObservationsEnabledCondition {
}
@ConditionalOnBooleanProperty("management.observations.annotations.enabled")
static class ManagementObservationsEnabledCondition {
}
}
}

View File

@@ -2247,14 +2247,6 @@
"name": "management.zipkin.tracing.export.enabled",
"type": "java.lang.Boolean",
"description": "Whether auto-configuration of tracing is enabled to export Zipkin traces."
},
{
"name": "micrometer.observations.annotations.enabled",
"type": "java.lang.Boolean",
"deprecation": {
"level": "error",
"replacement": "management.observations.annotations.enabled"
}
}
],
"hints": [

View File

@@ -1,5 +1,5 @@
/*
* Copyright 2012-2024 the original author or authors.
* Copyright 2012-2025 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -54,17 +54,6 @@ class MetricsAspectsAutoConfigurationTests {
});
}
@Test
void shouldConfigureAspectsWithLegacyProperty() {
new ApplicationContextRunner().with(MetricsRun.simple())
.withConfiguration(AutoConfigurations.of(MetricsAspectsAutoConfiguration.class))
.withPropertyValues("micrometer.observations.annotations.enabled=true")
.run((context) -> {
assertThat(context).hasSingleBean(CountedAspect.class);
assertThat(context).hasSingleBean(TimedAspect.class);
});
}
@Test
void shouldConfigureAspects() {
this.contextRunner.run((context) -> {

View File

@@ -1,5 +1,5 @@
/*
* Copyright 2012-2024 the original author or authors.
* Copyright 2012-2025 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -145,18 +145,6 @@ class MicrometerTracingAutoConfigurationTests {
});
}
@Test
void shouldSupplyAspectBeansIfLegacyPropertyIsEnabled() {
new ApplicationContextRunner().withPropertyValues("micrometer.observations.annotations.enabled=true")
.withConfiguration(AutoConfigurations.of(MicrometerTracingAutoConfiguration.class))
.withUserConfiguration(TracerConfiguration.class, PropagatorConfiguration.class)
.run((context) -> {
assertThat(context).hasSingleBean(DefaultNewSpanParser.class);
assertThat(context).hasSingleBean(ImperativeMethodInvocationProcessor.class);
assertThat(context).hasSingleBean(SpanAspect.class);
});
}
@Test
void shouldNotSupplyBeansIfAspectjIsMissing() {
this.contextRunner.withUserConfiguration(TracerConfiguration.class)