Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in / Register
Toggle navigation
S
spring-boot
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
DEMO
spring-boot
Commits
cc3d7648
Commit
cc3d7648
authored
Feb 09, 2018
by
Andy Wilkinson
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Auto-configure Micrometer's Clock in a single place
Closes gh-11977
parent
2c403835
Changes
11
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
32 additions
and
54 deletions
+32
-54
MetricsAutoConfiguration.java
...tuate/autoconfigure/metrics/MetricsAutoConfiguration.java
+7
-0
AtlasMetricsExportAutoConfiguration.java
...ics/export/atlas/AtlasMetricsExportAutoConfiguration.java
+0
-6
DatadogMetricsExportAutoConfiguration.java
...export/datadog/DatadogMetricsExportAutoConfiguration.java
+0
-6
GangliaMetricsExportAutoConfiguration.java
...export/ganglia/GangliaMetricsExportAutoConfiguration.java
+0
-6
GraphiteMetricsExportAutoConfiguration.java
...port/graphite/GraphiteMetricsExportAutoConfiguration.java
+0
-6
InfluxMetricsExportAutoConfiguration.java
...s/export/influx/InfluxMetricsExportAutoConfiguration.java
+0
-6
JmxMetricsExportAutoConfiguration.java
...metrics/export/jmx/JmxMetricsExportAutoConfiguration.java
+0
-6
PrometheusMetricsExportAutoConfiguration.java
.../prometheus/PrometheusMetricsExportAutoConfiguration.java
+0
-6
SimpleMetricsExportAutoConfiguration.java
...s/export/simple/SimpleMetricsExportAutoConfiguration.java
+0
-6
StatsdMetricsExportAutoConfiguration.java
...s/export/statsd/StatsdMetricsExportAutoConfiguration.java
+0
-6
MetricsAutoConfigurationTests.java
.../autoconfigure/metrics/MetricsAutoConfigurationTests.java
+25
-0
No files found.
spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/MetricsAutoConfiguration.java
View file @
cc3d7648
...
...
@@ -17,6 +17,7 @@
package
org
.
springframework
.
boot
.
actuate
.
autoconfigure
.
metrics
;
import
io.micrometer.core.annotation.Timed
;
import
io.micrometer.core.instrument.Clock
;
import
io.micrometer.core.instrument.binder.jvm.JvmGcMetrics
;
import
io.micrometer.core.instrument.binder.jvm.JvmMemoryMetrics
;
import
io.micrometer.core.instrument.binder.jvm.JvmThreadMetrics
;
...
...
@@ -50,6 +51,12 @@ import org.springframework.integration.support.management.IntegrationManagementC
@EnableConfigurationProperties
(
MetricsProperties
.
class
)
public
class
MetricsAutoConfiguration
{
@Bean
@ConditionalOnMissingBean
public
Clock
micrometerClock
()
{
return
Clock
.
SYSTEM
;
}
@Bean
public
static
CompositeMeterRegistryPostProcessor
compositeMeterRegistryPostProcessor
()
{
return
new
CompositeMeterRegistryPostProcessor
();
...
...
spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/atlas/AtlasMetricsExportAutoConfiguration.java
View file @
cc3d7648
...
...
@@ -44,12 +44,6 @@ import org.springframework.context.annotation.Configuration;
@EnableConfigurationProperties
(
AtlasProperties
.
class
)
public
class
AtlasMetricsExportAutoConfiguration
{
@Bean
@ConditionalOnMissingBean
public
Clock
micrometerClock
()
{
return
Clock
.
SYSTEM
;
}
@Bean
@ConditionalOnMissingBean
(
AtlasConfig
.
class
)
public
AtlasConfig
atlasConfig
(
AtlasProperties
atlasProperties
)
{
...
...
spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/datadog/DatadogMetricsExportAutoConfiguration.java
View file @
cc3d7648
...
...
@@ -45,12 +45,6 @@ import org.springframework.context.annotation.Configuration;
@EnableConfigurationProperties
(
DatadogProperties
.
class
)
public
class
DatadogMetricsExportAutoConfiguration
{
@Bean
@ConditionalOnMissingBean
public
Clock
micrometerClock
()
{
return
Clock
.
SYSTEM
;
}
@Bean
@ConditionalOnMissingBean
public
DatadogConfig
datadogConfig
(
DatadogProperties
datadogProperties
)
{
...
...
spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/ganglia/GangliaMetricsExportAutoConfiguration.java
View file @
cc3d7648
...
...
@@ -44,12 +44,6 @@ import org.springframework.context.annotation.Configuration;
@EnableConfigurationProperties
(
GangliaProperties
.
class
)
public
class
GangliaMetricsExportAutoConfiguration
{
@Bean
@ConditionalOnMissingBean
public
Clock
micrometerClock
()
{
return
Clock
.
SYSTEM
;
}
@Bean
@ConditionalOnMissingBean
public
GangliaConfig
gangliaConfig
(
GangliaProperties
gangliaProperties
)
{
...
...
spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/graphite/GraphiteMetricsExportAutoConfiguration.java
View file @
cc3d7648
...
...
@@ -44,12 +44,6 @@ import org.springframework.context.annotation.Configuration;
@EnableConfigurationProperties
(
GraphiteProperties
.
class
)
public
class
GraphiteMetricsExportAutoConfiguration
{
@Bean
@ConditionalOnMissingBean
public
Clock
micrometerClock
()
{
return
Clock
.
SYSTEM
;
}
@Bean
@ConditionalOnMissingBean
public
GraphiteConfig
graphiteConfig
(
GraphiteProperties
graphiteProperties
)
{
...
...
spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/influx/InfluxMetricsExportAutoConfiguration.java
View file @
cc3d7648
...
...
@@ -43,12 +43,6 @@ import org.springframework.context.annotation.Configuration;
@EnableConfigurationProperties
(
InfluxProperties
.
class
)
public
class
InfluxMetricsExportAutoConfiguration
{
@Bean
@ConditionalOnMissingBean
public
Clock
micrometerClock
()
{
return
Clock
.
SYSTEM
;
}
@Bean
@ConditionalOnMissingBean
(
InfluxConfig
.
class
)
public
InfluxConfig
influxConfig
(
InfluxProperties
influxProperties
)
{
...
...
spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/jmx/JmxMetricsExportAutoConfiguration.java
View file @
cc3d7648
...
...
@@ -44,12 +44,6 @@ import org.springframework.context.annotation.Configuration;
@EnableConfigurationProperties
(
JmxProperties
.
class
)
public
class
JmxMetricsExportAutoConfiguration
{
@Bean
@ConditionalOnMissingBean
public
Clock
micrometerClock
()
{
return
Clock
.
SYSTEM
;
}
@Bean
@ConditionalOnMissingBean
public
JmxConfig
jmxConfig
(
JmxProperties
jmxProperties
)
{
...
...
spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/prometheus/PrometheusMetricsExportAutoConfiguration.java
View file @
cc3d7648
...
...
@@ -46,12 +46,6 @@ import org.springframework.context.annotation.Configuration;
@EnableConfigurationProperties
(
PrometheusProperties
.
class
)
public
class
PrometheusMetricsExportAutoConfiguration
{
@Bean
@ConditionalOnMissingBean
public
Clock
micrometerClock
()
{
return
Clock
.
SYSTEM
;
}
@Bean
@ConditionalOnMissingBean
public
PrometheusConfig
prometheusConfig
(
PrometheusProperties
prometheusProperties
)
{
...
...
spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/simple/SimpleMetricsExportAutoConfiguration.java
View file @
cc3d7648
...
...
@@ -46,12 +46,6 @@ import org.springframework.context.annotation.Configuration;
@ConditionalOnMissingBean
(
MeterRegistry
.
class
)
public
class
SimpleMetricsExportAutoConfiguration
{
@Bean
@ConditionalOnMissingBean
public
Clock
micrometerClock
()
{
return
Clock
.
SYSTEM
;
}
@Bean
@ConditionalOnMissingBean
(
MeterRegistry
.
class
)
public
SimpleMeterRegistry
simpleMeterRegistry
(
SimpleConfig
config
,
Clock
clock
)
{
...
...
spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/statsd/StatsdMetricsExportAutoConfiguration.java
View file @
cc3d7648
...
...
@@ -44,12 +44,6 @@ import org.springframework.context.annotation.Configuration;
@EnableConfigurationProperties
(
StatsdProperties
.
class
)
public
class
StatsdMetricsExportAutoConfiguration
{
@Bean
@ConditionalOnMissingBean
public
Clock
micrometerClock
()
{
return
Clock
.
SYSTEM
;
}
@Bean
@ConditionalOnMissingBean
(
StatsdConfig
.
class
)
public
StatsdConfig
statsdConfig
(
StatsdProperties
statsdProperties
)
{
...
...
spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/metrics/MetricsAutoConfigurationTests.java
View file @
cc3d7648
...
...
@@ -20,6 +20,7 @@ import java.util.UUID;
import
javax.sql.DataSource
;
import
io.micrometer.core.instrument.Clock
;
import
io.micrometer.core.instrument.MeterRegistry
;
import
io.micrometer.core.instrument.MockClock
;
import
io.micrometer.core.instrument.composite.CompositeMeterRegistry
;
...
...
@@ -180,6 +181,20 @@ public class MetricsAutoConfigurationTests {
});
}
@Test
public
void
autoConfiguresAClock
()
{
this
.
contextRunner
.
with
(
MetricsRun
.
limitedTo
())
.
run
((
context
)
->
assertThat
(
context
).
hasSingleBean
(
Clock
.
class
));
}
@Test
public
void
allowsCustomClockToBeConfigured
()
{
this
.
contextRunner
.
with
(
MetricsRun
.
limitedTo
())
.
withUserConfiguration
(
CustomClockConfiguration
.
class
)
.
run
((
context
)
->
assertThat
(
context
).
hasSingleBean
(
Clock
.
class
)
.
hasBean
(
"customClock"
));
}
@Configuration
static
class
PrimarySimpleMeterRegistryConfiguration
{
...
...
@@ -211,4 +226,14 @@ public class MetricsAutoConfigurationTests {
}
@Configuration
static
class
CustomClockConfiguration
{
@Bean
public
Clock
customClock
()
{
return
Clock
.
SYSTEM
;
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment