Skip to content

Commit a762219

Browse files
committed
Move cache metrics auto-configuration into spring-boot-cache
1 parent f13eae3 commit a762219

File tree

10 files changed

+24
-31
lines changed

10 files changed

+24
-31
lines changed

spring-boot-project/spring-boot-actuator-autoconfigure-all/build.gradle

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ dependencies {
2929

3030
optional(project(":spring-boot-project:spring-boot-activemq"))
3131
optional(project(":spring-boot-project:spring-boot-artemis"))
32-
optional(project(":spring-boot-project:spring-boot-cache"))
3332
optional(project(":spring-boot-project:spring-boot-couchbase"))
3433
optional(project(":spring-boot-project:spring-boot-data-cassandra"))
3534
optional(project(":spring-boot-project:spring-boot-data-jpa"))
@@ -105,7 +104,6 @@ dependencies {
105104
optional("io.undertow:undertow-servlet")
106105
optional("jakarta.persistence:jakarta.persistence-api")
107106
optional("jakarta.servlet:jakarta.servlet-api")
108-
optional("javax.cache:cache-api")
109107
optional("org.apache.activemq:activemq-broker")
110108
optional("org.apache.activemq:activemq-client")
111109
optional("org.apache.commons:commons-dbcp2")
@@ -116,8 +114,6 @@ dependencies {
116114
optional("org.apache.tomcat.embed:tomcat-embed-el")
117115
optional("org.apache.tomcat:tomcat-jdbc")
118116
optional("org.aspectj:aspectjweaver")
119-
optional("org.cache2k:cache2k-micrometer")
120-
optional("org.cache2k:cache2k-spring")
121117
optional("org.eclipse.jetty:jetty-server") {
122118
exclude group: "org.eclipse.jetty.toolchain", module: "jetty-jakarta-servlet-api"
123119
}
@@ -165,7 +161,6 @@ dependencies {
165161
testImplementation("org.apache.activemq:artemis-jakarta-server")
166162
testImplementation("org.apache.logging.log4j:log4j-to-slf4j")
167163
testImplementation("org.aspectj:aspectjrt")
168-
testImplementation("org.cache2k:cache2k-api")
169164
testImplementation("org.eclipse.jetty.ee10:jetty-ee10-webapp")
170165
testImplementation("org.eclipse.jetty.http2:jetty-http2-server")
171166
testImplementation("org.glassfish.jersey.ext:jersey-spring6")
@@ -179,7 +174,6 @@ dependencies {
179174

180175
testRuntimeOnly("jakarta.management.j2ee:jakarta.management.j2ee-api")
181176
testRuntimeOnly("jakarta.transaction:jakarta.transaction-api")
182-
testRuntimeOnly("org.cache2k:cache2k-core")
183177
testRuntimeOnly("org.opensaml:opensaml-core:4.0.1")
184178
testRuntimeOnly("org.opensaml:opensaml-saml-api:4.0.1")
185179
testRuntimeOnly("org.opensaml:opensaml-saml-impl:4.0.1")

spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ org.springframework.boot.actuate.autoconfigure.logging.OpenTelemetryLoggingAutoC
2222
org.springframework.boot.actuate.autoconfigure.logging.otlp.OtlpLoggingAutoConfiguration
2323
org.springframework.boot.actuate.autoconfigure.management.HeapDumpWebEndpointAutoConfiguration
2424
org.springframework.boot.actuate.autoconfigure.management.ThreadDumpEndpointAutoConfiguration
25-
org.springframework.boot.actuate.autoconfigure.metrics.cache.CacheMetricsAutoConfiguration
2625
org.springframework.boot.actuate.autoconfigure.metrics.data.RepositoryMetricsAutoConfiguration
2726
org.springframework.boot.actuate.autoconfigure.metrics.export.appoptics.AppOpticsMetricsExportAutoConfiguration
2827
org.springframework.boot.actuate.autoconfigure.metrics.export.atlas.AtlasMetricsExportAutoConfiguration

spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/metrics/test/MetricsIntegrationTests.java

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,6 @@
4141
import org.springframework.boot.actuate.autoconfigure.observation.web.reactive.WebFluxObservationAutoConfiguration;
4242
import org.springframework.boot.actuate.autoconfigure.observation.web.servlet.WebMvcObservationAutoConfiguration;
4343
import org.springframework.boot.autoconfigure.ImportAutoConfiguration;
44-
import org.springframework.boot.cache.actuate.metrics.autoconfigure.CacheMetricsAutoConfiguration;
4544
import org.springframework.boot.http.converter.autoconfigure.HttpMessageConvertersAutoConfiguration;
4645
import org.springframework.boot.jackson.autoconfigure.JacksonAutoConfiguration;
4746
import org.springframework.boot.metrics.autoconfigure.MetricsAutoConfiguration;
@@ -145,13 +144,13 @@ void metricsFilterRegisteredForAsyncDispatches() {
145144
@Configuration(proxyBeanMethods = false)
146145
@ImportAutoConfiguration({ MetricsAutoConfiguration.class, ObservationAutoConfiguration.class,
147146
JvmMetricsAutoConfiguration.class, LogbackMetricsAutoConfiguration.class,
148-
SystemMetricsAutoConfiguration.class, CacheMetricsAutoConfiguration.class,
149-
DataSourcePoolMetricsAutoConfiguration.class, HibernateMetricsAutoConfiguration.class,
150-
HttpClientObservationsAutoConfiguration.class, WebFluxObservationAutoConfiguration.class,
151-
WebMvcObservationAutoConfiguration.class, JacksonAutoConfiguration.class,
152-
HttpMessageConvertersAutoConfiguration.class, RestTemplateAutoConfiguration.class,
153-
WebMvcAutoConfiguration.class, DispatcherServletAutoConfiguration.class,
154-
TomcatServletWebServerAutoConfiguration.class, TomcatServletWebServerAutoConfiguration.class })
147+
SystemMetricsAutoConfiguration.class, DataSourcePoolMetricsAutoConfiguration.class,
148+
HibernateMetricsAutoConfiguration.class, HttpClientObservationsAutoConfiguration.class,
149+
WebFluxObservationAutoConfiguration.class, WebMvcObservationAutoConfiguration.class,
150+
JacksonAutoConfiguration.class, HttpMessageConvertersAutoConfiguration.class,
151+
RestTemplateAutoConfiguration.class, WebMvcAutoConfiguration.class,
152+
DispatcherServletAutoConfiguration.class, TomcatServletWebServerAutoConfiguration.class,
153+
TomcatServletWebServerAutoConfiguration.class })
155154
@Import(PersonController.class)
156155
static class MetricsApp {
157156

spring-boot-project/spring-boot-cache/build.gradle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ dependencies {
1818
optional(project(":spring-boot-project:spring-boot-data-redis"))
1919
optional(project(":spring-boot-project:spring-boot-hazelcast"))
2020
optional(project(":spring-boot-project:spring-boot-jpa"))
21+
optional(project(":spring-boot-project:spring-boot-metrics"))
2122
optional("com.hazelcast:hazelcast-spring")
2223
optional("io.micrometer:micrometer-core")
2324
optional("javax.cache:cache-api")

spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/cache/CacheMeterBinderProvidersConfiguration.java renamed to spring-boot-project/spring-boot-cache/src/main/java/org/springframework/boot/cache/actuate/metrics/autoconfigure/CacheMeterBinderProvidersConfiguration.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
* limitations under the License.
1515
*/
1616

17-
package org.springframework.boot.actuate.autoconfigure.metrics.cache;
17+
package org.springframework.boot.cache.actuate.metrics.autoconfigure;
1818

1919
import com.hazelcast.core.Hazelcast;
2020
import com.hazelcast.spring.cache.HazelcastCache;

spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/cache/CacheMetricsAutoConfiguration.java renamed to spring-boot-project/spring-boot-cache/src/main/java/org/springframework/boot/cache/actuate/metrics/autoconfigure/CacheMetricsAutoConfiguration.java

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,15 @@
1414
* limitations under the License.
1515
*/
1616

17-
package org.springframework.boot.actuate.autoconfigure.metrics.cache;
17+
package org.springframework.boot.cache.actuate.metrics.autoconfigure;
18+
19+
import io.micrometer.core.instrument.MeterRegistry;
1820

1921
import org.springframework.boot.autoconfigure.AutoConfiguration;
2022
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
2123
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
2224
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
23-
import org.springframework.boot.cache.actuate.metrics.CacheMetricsRegistrar;
24-
import org.springframework.boot.metrics.autoconfigure.CompositeMeterRegistryAutoConfiguration;
25-
import org.springframework.boot.metrics.autoconfigure.MetricsAutoConfiguration;
25+
import org.springframework.boot.cache.autoconfigure.CacheAutoConfiguration;
2626
import org.springframework.cache.Cache;
2727
import org.springframework.cache.CacheManager;
2828
import org.springframework.context.annotation.Import;
@@ -32,12 +32,12 @@
3232
* {@link Cache caches}.
3333
*
3434
* @author Stephane Nicoll
35-
* @since 2.0.0
35+
* @since 4.0.0
3636
*/
37-
@AutoConfiguration(after = { MetricsAutoConfiguration.class, CompositeMeterRegistryAutoConfiguration.class },
38-
afterName = "org.springframework.boot.cache.autoconfigure.CacheAutoConfiguration")
37+
@AutoConfiguration(after = { CacheAutoConfiguration.class },
38+
afterName = "org.springframework.boot.metrics.autoconfigure.CompositeMeterRegistryAutoConfiguration")
3939
@ConditionalOnBean(CacheManager.class)
40-
@ConditionalOnClass(CacheMetricsRegistrar.class)
40+
@ConditionalOnClass(MeterRegistry.class)
4141
@Import({ CacheMeterBinderProvidersConfiguration.class, CacheMetricsRegistrarConfiguration.class })
4242
public class CacheMetricsAutoConfiguration {
4343

spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/cache/CacheMetricsRegistrarConfiguration.java renamed to spring-boot-project/spring-boot-cache/src/main/java/org/springframework/boot/cache/actuate/metrics/autoconfigure/CacheMetricsRegistrarConfiguration.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
* limitations under the License.
1515
*/
1616

17-
package org.springframework.boot.actuate.autoconfigure.metrics.cache;
17+
package org.springframework.boot.cache.actuate.metrics.autoconfigure;
1818

1919
import java.util.Collection;
2020
import java.util.Map;

spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/cache/package-info.java renamed to spring-boot-project/spring-boot-cache/src/main/java/org/springframework/boot/cache/actuate/metrics/autoconfigure/package-info.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,4 +17,4 @@
1717
/**
1818
* Auto-configuration for cache metrics.
1919
*/
20-
package org.springframework.boot.actuate.autoconfigure.metrics.cache;
20+
package org.springframework.boot.cache.actuate.metrics.autoconfigure;
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
org.springframework.boot.cache.actuate.endpoint.autoconfigure.CachesEndpointAutoConfiguration
2+
org.springframework.boot.cache.actuate.metrics.autoconfigure.CacheMetricsAutoConfiguration
23
org.springframework.boot.cache.autoconfigure.CacheAutoConfiguration

spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/metrics/cache/CacheMetricsAutoConfigurationTests.java renamed to spring-boot-project/spring-boot-cache/src/test/java/org/springframework/boot/actuate/autoconfigure/metrics/cache/CacheMetricsAutoConfigurationTests.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,13 +21,12 @@
2121

2222
import com.github.benmanes.caffeine.cache.CaffeineSpec;
2323
import io.micrometer.core.instrument.MeterRegistry;
24+
import io.micrometer.core.instrument.simple.SimpleMeterRegistry;
2425
import org.junit.jupiter.api.Test;
2526

26-
import org.springframework.boot.actuate.autoconfigure.metrics.test.MetricsRun;
2727
import org.springframework.boot.autoconfigure.AutoConfigurations;
28-
import org.springframework.boot.autoconfigure.logging.ConditionEvaluationReportLoggingListener;
28+
import org.springframework.boot.cache.actuate.metrics.autoconfigure.CacheMetricsAutoConfiguration;
2929
import org.springframework.boot.cache.autoconfigure.CacheAutoConfiguration;
30-
import org.springframework.boot.logging.LogLevel;
3130
import org.springframework.boot.test.context.runner.ApplicationContextRunner;
3231
import org.springframework.cache.CacheManager;
3332
import org.springframework.cache.annotation.CachingConfigurer;
@@ -46,14 +45,14 @@
4645
*/
4746
class CacheMetricsAutoConfigurationTests {
4847

49-
private final ApplicationContextRunner contextRunner = new ApplicationContextRunner().with(MetricsRun.simple())
48+
private final ApplicationContextRunner contextRunner = new ApplicationContextRunner()
49+
.withBean(SimpleMeterRegistry.class)
5050
.withUserConfiguration(CachingConfiguration.class)
5151
.withConfiguration(AutoConfigurations.of(CacheAutoConfiguration.class, CacheMetricsAutoConfiguration.class));
5252

5353
@Test
5454
void autoConfiguredCache2kIsInstrumented() {
5555
this.contextRunner.withPropertyValues("spring.cache.type=cache2k", "spring.cache.cache-names=cache1,cache2")
56-
.withInitializer(ConditionEvaluationReportLoggingListener.forLogLevel(LogLevel.INFO))
5756
.run((context) -> {
5857
MeterRegistry registry = context.getBean(MeterRegistry.class);
5958
registry.get("cache.gets").tags("name", "cache1").tags("cache.manager", "cacheManager").meter();

0 commit comments

Comments
 (0)