diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/MeterBindersConfiguration.java b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/MeterBindersConfiguration.java index fe548bf0b71..a354df61cfc 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/MeterBindersConfiguration.java +++ b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/MeterBindersConfiguration.java @@ -17,7 +17,9 @@ package org.springframework.boot.actuate.autoconfigure.metrics; import io.micrometer.core.instrument.binder.MeterBinder; +import io.micrometer.core.instrument.binder.jvm.JvmGcMetrics; import io.micrometer.core.instrument.binder.jvm.JvmMemoryMetrics; +import io.micrometer.core.instrument.binder.jvm.JvmThreadMetrics; import io.micrometer.core.instrument.binder.logging.LogbackMetrics; import io.micrometer.core.instrument.binder.system.ProcessorMetrics; import io.micrometer.core.instrument.binder.system.UptimeMetrics; @@ -37,12 +39,26 @@ import org.springframework.context.annotation.Configuration; class MeterBindersConfiguration { @Bean - @ConditionalOnProperty(value = "management.metrics.binders.jvmmemory.enabled", matchIfMissing = true) + @ConditionalOnProperty(value = "spring.metrics.binders.jvm.enabled", matchIfMissing = true) + @ConditionalOnMissingBean(JvmGcMetrics.class) + public JvmGcMetrics jvmGcMetrics() { + return new JvmGcMetrics(); + } + + @Bean + @ConditionalOnProperty(value = "management.metrics.binders.jvm.enabled", matchIfMissing = true) @ConditionalOnMissingBean(JvmMemoryMetrics.class) public JvmMemoryMetrics jvmMemoryMetrics() { return new JvmMemoryMetrics(); } + @Bean + @ConditionalOnProperty(value = "spring.metrics.binders.jvm.enabled", matchIfMissing = true) + @ConditionalOnMissingBean(JvmThreadMetrics.class) + public JvmThreadMetrics jvmThreadMetrics() { + return new JvmThreadMetrics(); + } + @Bean @ConditionalOnMissingBean(LogbackMetrics.class) @ConditionalOnProperty(value = "management.metrics.binders.logback.enabled", matchIfMissing = true) diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/resources/META-INF/additional-spring-configuration-metadata.json b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/resources/META-INF/additional-spring-configuration-metadata.json index ffbdb11b741..6fcabdd9148 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/resources/META-INF/additional-spring-configuration-metadata.json +++ b/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/resources/META-INF/additional-spring-configuration-metadata.json @@ -192,9 +192,9 @@ "defaultValue": true }, { - "name": "management.metrics.binders.jvmmemory.enabled", + "name": "management.metrics.binders.jvm.enabled", "type": "java.lang.Boolean", - "description": "Whether to enable JVM memory metrics.", + "description": "Whether to enable JVM metrics.", "defaultValue": true }, { diff --git a/spring-boot-project/spring-boot-docs/src/main/asciidoc/appendix-application-properties.adoc b/spring-boot-project/spring-boot-docs/src/main/asciidoc/appendix-application-properties.adoc index 7dfe72d523e..529ea993c0c 100644 --- a/spring-boot-project/spring-boot-docs/src/main/asciidoc/appendix-application-properties.adoc +++ b/spring-boot-project/spring-boot-docs/src/main/asciidoc/appendix-application-properties.adoc @@ -1248,7 +1248,7 @@ content into your application. Rather, pick only the properties that you need. management.jolokia.path=/jolokia # Path at which Jolokia is available. # METRICS - management.metrics.binders.jvmmemory.enabled=true # Whether to enable JVM memory metrics. + management.metrics.binders.jvm.enabled=true # Whether to enable JVM metrics. management.metrics.binders.logback.enabled=true # Whether to enable Logback metrics. management.metrics.binders.processor.enabled=true # Whether to enable processor metrics. management.metrics.binders.uptime.enabled=true # Whether to enable uptime metrics.