Skip to content

Having AspectJ and Micrometer on the classpath is not a strong enough signal to enable support for Micrometer observation annotations #39128

Closed
@bclozel

Description

@bclozel

As of #37626, Spring Boot 3.2 auto-configures AspectJ handlers to support observation annotations like @Timed and @Counted with MetricsAspectsAutoConfiguration. Spring Boot 3.3 will expand that for tracing annotations in MicrometerTracingAutoConfiguration.

Right now those auto-configurations are conditional on the presence of Micrometer and AspectJ, but we've found that those aspects are quite broadly applied and can significant startup time difference. While this is a fine feature to support, we should restrict a bit its application to ensure that it's only applied when developers choose to. The Aspectj dependency can come from many use cases and is not a good indicator for applications opting-in for this feature.

We should add a management.observations.annotations.enabled configuration property and introduce it with a default false value. While this changes behavior, we're still early in the 3.2.x generation and this is a impact big enough that we're considering this a bug. We'll make this noteworthy in the release notes.

Metadata

Metadata

Assignees

Labels

status: noteworthyA noteworthy issue to call out in the release notestheme: observabilityIssues related to observabilitytype: bugA general bug

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions