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
d50e5814
Commit
d50e5814
authored
Apr 09, 2021
by
Stephane Nicoll
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Start building against Micrometer 1.7.0-RC1 snapshots
See gh-25934
parent
555a3a79
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
39 additions
and
41 deletions
+39
-41
MongoMetricsAutoConfiguration.java
...onfigure/metrics/mongo/MongoMetricsAutoConfiguration.java
+12
-12
MongoMetricsAutoConfigurationTests.java
...ure/metrics/mongo/MongoMetricsAutoConfigurationTests.java
+18
-20
build.gradle
spring-boot-project/spring-boot-dependencies/build.gradle
+1
-1
production-ready-features.adoc
...oot-docs/src/docs/asciidoc/production-ready-features.adoc
+2
-2
SampleCommandTagsProviderConfiguration.java
...metrics/mongo/SampleCommandTagsProviderConfiguration.java
+3
-3
SampleConnectionPoolTagsProviderConfiguration.java
.../mongo/SampleConnectionPoolTagsProviderConfiguration.java
+3
-3
No files found.
spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/mongo/MongoMetricsAutoConfiguration.java
View file @
d50e5814
...
...
@@ -18,12 +18,12 @@ package org.springframework.boot.actuate.autoconfigure.metrics.mongo;
import
com.mongodb.MongoClientSettings
;
import
io.micrometer.core.instrument.MeterRegistry
;
import
io.micrometer.core.instrument.binder.mongodb.DefaultMongoMetricsCommandTagsProvider
;
import
io.micrometer.core.instrument.binder.mongodb.DefaultMongoMetricsConnectionPoolTagsProvider
;
import
io.micrometer.core.instrument.binder.mongodb.DefaultMongoCommandTagsProvider
;
import
io.micrometer.core.instrument.binder.mongodb.DefaultMongoConnectionPoolTagsProvider
;
import
io.micrometer.core.instrument.binder.mongodb.MongoCommandTagsProvider
;
import
io.micrometer.core.instrument.binder.mongodb.MongoConnectionPoolTagsProvider
;
import
io.micrometer.core.instrument.binder.mongodb.MongoMetricsCommandListener
;
import
io.micrometer.core.instrument.binder.mongodb.MongoMetricsCommandTagsProvider
;
import
io.micrometer.core.instrument.binder.mongodb.MongoMetricsConnectionPoolListener
;
import
io.micrometer.core.instrument.binder.mongodb.MongoMetricsConnectionPoolTagsProvider
;
import
org.springframework.boot.actuate.autoconfigure.metrics.CompositeMeterRegistryAutoConfiguration
;
import
org.springframework.boot.actuate.autoconfigure.metrics.MetricsAutoConfiguration
;
...
...
@@ -61,14 +61,14 @@ public class MongoMetricsAutoConfiguration {
@Bean
@ConditionalOnMissingBean
MongoMetricsCommandListener
mongoMetricsCommandListener
(
MeterRegistry
meterRegistry
,
Mongo
MetricsCommandTagsProvider
mongoMetrics
CommandTagsProvider
)
{
return
new
MongoMetricsCommandListener
(
meterRegistry
,
mongo
Metrics
CommandTagsProvider
);
Mongo
CommandTagsProvider
mongo
CommandTagsProvider
)
{
return
new
MongoMetricsCommandListener
(
meterRegistry
,
mongoCommandTagsProvider
);
}
@Bean
@ConditionalOnMissingBean
Mongo
MetricsCommandTagsProvider
mongoMetrics
CommandTagsProvider
()
{
return
new
DefaultMongo
Metrics
CommandTagsProvider
();
Mongo
CommandTagsProvider
mongo
CommandTagsProvider
()
{
return
new
DefaultMongoCommandTagsProvider
();
}
@Bean
...
...
@@ -87,14 +87,14 @@ public class MongoMetricsAutoConfiguration {
@Bean
@ConditionalOnMissingBean
MongoMetricsConnectionPoolListener
mongoMetricsConnectionPoolListener
(
MeterRegistry
meterRegistry
,
Mongo
MetricsConnectionPoolTagsProvider
mongoMetrics
ConnectionPoolTagsProvider
)
{
return
new
MongoMetricsConnectionPoolListener
(
meterRegistry
,
mongo
Metrics
ConnectionPoolTagsProvider
);
Mongo
ConnectionPoolTagsProvider
mongo
ConnectionPoolTagsProvider
)
{
return
new
MongoMetricsConnectionPoolListener
(
meterRegistry
,
mongoConnectionPoolTagsProvider
);
}
@Bean
@ConditionalOnMissingBean
Mongo
Metrics
ConnectionPoolTagsProvider
mongoMetricsConnectionPoolTagsProvider
()
{
return
new
DefaultMongo
Metrics
ConnectionPoolTagsProvider
();
MongoConnectionPoolTagsProvider
mongoMetricsConnectionPoolTagsProvider
()
{
return
new
DefaultMongoConnectionPoolTagsProvider
();
}
@Bean
...
...
spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/metrics/mongo/MongoMetricsAutoConfigurationTests.java
View file @
d50e5814
...
...
@@ -22,12 +22,12 @@ import com.mongodb.MongoClientSettings;
import
com.mongodb.client.MongoClient
;
import
com.mongodb.connection.ConnectionPoolSettings
;
import
com.mongodb.event.ConnectionPoolListener
;
import
io.micrometer.core.instrument.binder.mongodb.DefaultMongoMetricsCommandTagsProvider
;
import
io.micrometer.core.instrument.binder.mongodb.DefaultMongoMetricsConnectionPoolTagsProvider
;
import
io.micrometer.core.instrument.binder.mongodb.DefaultMongoCommandTagsProvider
;
import
io.micrometer.core.instrument.binder.mongodb.DefaultMongoConnectionPoolTagsProvider
;
import
io.micrometer.core.instrument.binder.mongodb.MongoCommandTagsProvider
;
import
io.micrometer.core.instrument.binder.mongodb.MongoConnectionPoolTagsProvider
;
import
io.micrometer.core.instrument.binder.mongodb.MongoMetricsCommandListener
;
import
io.micrometer.core.instrument.binder.mongodb.MongoMetricsCommandTagsProvider
;
import
io.micrometer.core.instrument.binder.mongodb.MongoMetricsConnectionPoolListener
;
import
io.micrometer.core.instrument.binder.mongodb.MongoMetricsConnectionPoolTagsProvider
;
import
org.junit.jupiter.api.Test
;
import
org.springframework.boot.actuate.autoconfigure.metrics.test.MetricsRun
;
...
...
@@ -60,8 +60,8 @@ class MongoMetricsAutoConfigurationTests {
assertThat
(
getActualMongoClientSettingsUsedToConstructClient
(
context
)).
isNotNull
()
.
extracting
(
MongoClientSettings:
:
getCommandListeners
).
asList
()
.
containsExactly
(
context
.
getBean
(
MongoMetricsCommandListener
.
class
));
assertThat
(
getMongo
Metrics
CommandTagsProviderUsedToConstructListener
(
context
))
.
isInstanceOf
(
DefaultMongo
Metrics
CommandTagsProvider
.
class
);
assertThat
(
getMongoCommandTagsProviderUsedToConstructListener
(
context
))
.
isInstanceOf
(
DefaultMongoCommandTagsProvider
.
class
);
});
}
...
...
@@ -72,8 +72,8 @@ class MongoMetricsAutoConfigurationTests {
assertThat
(
context
).
hasSingleBean
(
MongoMetricsConnectionPoolListener
.
class
);
assertThat
(
getConnectionPoolListenersFromClient
(
context
))
.
containsExactly
(
context
.
getBean
(
MongoMetricsConnectionPoolListener
.
class
));
assertThat
(
getMongo
Metrics
ConnectionPoolTagsProviderUsedToConstructListener
(
context
))
.
isInstanceOf
(
DefaultMongo
Metrics
ConnectionPoolTagsProvider
.
class
);
assertThat
(
getMongoConnectionPoolTagsProviderUsedToConstructListener
(
context
))
.
isInstanceOf
(
DefaultMongoConnectionPoolTagsProvider
.
class
);
});
}
...
...
@@ -91,24 +91,22 @@ class MongoMetricsAutoConfigurationTests {
@Test
void
whenThereIsACustomMetricsCommandTagsProviderItIsUsed
()
{
final
Mongo
MetricsCommandTagsProvider
customTagsProvider
=
mock
(
MongoMetrics
CommandTagsProvider
.
class
);
final
Mongo
CommandTagsProvider
customTagsProvider
=
mock
(
Mongo
CommandTagsProvider
.
class
);
this
.
contextRunner
.
with
(
MetricsRun
.
simple
())
.
withConfiguration
(
AutoConfigurations
.
of
(
MongoAutoConfiguration
.
class
))
.
withBean
(
"customMongoMetricsCommandTagsProvider"
,
MongoMetricsCommandTagsProvider
.
class
,
()
->
customTagsProvider
)
.
run
((
context
)
->
assertThat
(
getMongoMetricsCommandTagsProviderUsedToConstructListener
(
context
))
.
withBean
(
"customMongoCommandTagsProvider"
,
MongoCommandTagsProvider
.
class
,
()
->
customTagsProvider
)
.
run
((
context
)
->
assertThat
(
getMongoCommandTagsProviderUsedToConstructListener
(
context
))
.
isSameAs
(
customTagsProvider
));
}
@Test
void
whenThereIsACustomMetricsConnectionPoolTagsProviderItIsUsed
()
{
final
MongoMetricsConnectionPoolTagsProvider
customTagsProvider
=
mock
(
MongoMetricsConnectionPoolTagsProvider
.
class
);
final
MongoConnectionPoolTagsProvider
customTagsProvider
=
mock
(
MongoConnectionPoolTagsProvider
.
class
);
this
.
contextRunner
.
with
(
MetricsRun
.
simple
())
.
withConfiguration
(
AutoConfigurations
.
of
(
MongoAutoConfiguration
.
class
))
.
withBean
(
"customMongo
MetricsConnectionPoolTagsProvider"
,
MongoMetrics
ConnectionPoolTagsProvider
.
class
,
.
withBean
(
"customMongo
ConnectionPoolTagsProvider"
,
Mongo
ConnectionPoolTagsProvider
.
class
,
()
->
customTagsProvider
)
.
run
((
context
)
->
assertThat
(
getMongo
Metrics
ConnectionPoolTagsProviderUsedToConstructListener
(
context
))
.
run
((
context
)
->
assertThat
(
getMongoConnectionPoolTagsProviderUsedToConstructListener
(
context
))
.
isSameAs
(
customTagsProvider
));
}
...
...
@@ -185,16 +183,16 @@ class MongoMetricsAutoConfigurationTests {
return
listeners
;
}
private
Mongo
MetricsCommandTagsProvider
getMongoMetrics
CommandTagsProviderUsedToConstructListener
(
private
Mongo
CommandTagsProvider
getMongo
CommandTagsProviderUsedToConstructListener
(
final
AssertableApplicationContext
context
)
{
MongoMetricsCommandListener
listener
=
context
.
getBean
(
MongoMetricsCommandListener
.
class
);
return
(
Mongo
Metrics
CommandTagsProvider
)
ReflectionTestUtils
.
getField
(
listener
,
"tagsProvider"
);
return
(
MongoCommandTagsProvider
)
ReflectionTestUtils
.
getField
(
listener
,
"tagsProvider"
);
}
private
Mongo
MetricsConnectionPoolTagsProvider
getMongoMetrics
ConnectionPoolTagsProviderUsedToConstructListener
(
private
Mongo
ConnectionPoolTagsProvider
getMongo
ConnectionPoolTagsProviderUsedToConstructListener
(
final
AssertableApplicationContext
context
)
{
MongoMetricsConnectionPoolListener
listener
=
context
.
getBean
(
MongoMetricsConnectionPoolListener
.
class
);
return
(
Mongo
Metrics
ConnectionPoolTagsProvider
)
ReflectionTestUtils
.
getField
(
listener
,
"tagsProvider"
);
return
(
MongoConnectionPoolTagsProvider
)
ReflectionTestUtils
.
getField
(
listener
,
"tagsProvider"
);
}
}
spring-boot-project/spring-boot-dependencies/build.gradle
View file @
d50e5814
...
...
@@ -1178,7 +1178,7 @@ bom {
]
}
}
library
(
"Micrometer"
,
"1.7.0-
M1
"
)
{
library
(
"Micrometer"
,
"1.7.0-
SNAPSHOT
"
)
{
group
(
"io.micrometer"
)
{
modules
=
[
"micrometer-registry-stackdriver"
{
...
...
spring-boot-project/spring-boot-docs/src/docs/asciidoc/production-ready-features.adoc
View file @
d50e5814
...
...
@@ -2429,7 +2429,7 @@ Each metric is tagged with the following information by default:
| Outcome of the command - one of (`SUCCESS`, `FAILED`)
|===
To replace the default metric tags, define a `Mongo
Metrics
CommandTagsProvider` bean, as shown in the following example:
To replace the default metric tags, define a `MongoCommandTagsProvider` bean, as shown in the following example:
[source,java,indent=0]
----
...
...
@@ -2467,7 +2467,7 @@ Each metric is tagged with the following information by default:
| Address of the server the connection pool corresponds to
|===
To replace the default metric tags, define a `Mongo
Metrics
ConnectionPoolTagsProvider` bean, as shown in the following example:
To replace the default metric tags, define a `MongoConnectionPoolTagsProvider` bean, as shown in the following example:
[source,java,indent=0]
----
...
...
spring-boot-project/spring-boot-docs/src/main/java/org/springframework/boot/docs/productionreadyfeatures/metrics/mongo/SampleCommandTagsProviderConfiguration.java
View file @
d50e5814
...
...
@@ -18,7 +18,7 @@ package org.springframework.boot.docs.productionreadyfeatures.metrics.mongo;
import
com.mongodb.event.CommandEvent
;
import
io.micrometer.core.instrument.Tag
;
import
io.micrometer.core.instrument.binder.mongodb.Mongo
Metrics
CommandTagsProvider
;
import
io.micrometer.core.instrument.binder.mongodb.MongoCommandTagsProvider
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
...
...
@@ -27,14 +27,14 @@ import org.springframework.context.annotation.Configuration;
public
class
SampleCommandTagsProviderConfiguration
{
@Bean
Mongo
Metrics
CommandTagsProvider
customCommandTagsProvider
()
{
MongoCommandTagsProvider
customCommandTagsProvider
()
{
return
new
CustomCommandTagsProvider
();
}
}
// @chomp:file
class
CustomCommandTagsProvider
implements
Mongo
Metrics
CommandTagsProvider
{
class
CustomCommandTagsProvider
implements
MongoCommandTagsProvider
{
@Override
public
Iterable
<
Tag
>
commandTags
(
CommandEvent
commandEvent
)
{
...
...
spring-boot-project/spring-boot-docs/src/main/java/org/springframework/boot/docs/productionreadyfeatures/metrics/mongo/SampleConnectionPoolTagsProviderConfiguration.java
View file @
d50e5814
...
...
@@ -19,7 +19,7 @@ package org.springframework.boot.docs.productionreadyfeatures.metrics.mongo;
// tag::code[]
import
com.mongodb.event.ConnectionPoolCreatedEvent
;
import
io.micrometer.core.instrument.Tag
;
import
io.micrometer.core.instrument.binder.mongodb.Mongo
Metrics
ConnectionPoolTagsProvider
;
import
io.micrometer.core.instrument.binder.mongodb.MongoConnectionPoolTagsProvider
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
...
...
@@ -28,14 +28,14 @@ import org.springframework.context.annotation.Configuration;
public
class
SampleConnectionPoolTagsProviderConfiguration
{
@Bean
Mongo
Metrics
ConnectionPoolTagsProvider
customConnectionPoolTagsProvider
()
{
MongoConnectionPoolTagsProvider
customConnectionPoolTagsProvider
()
{
return
new
CustomConnectionPoolTagsProvider
();
}
}
// end::code[]
class
CustomConnectionPoolTagsProvider
implements
Mongo
Metrics
ConnectionPoolTagsProvider
{
class
CustomConnectionPoolTagsProvider
implements
MongoConnectionPoolTagsProvider
{
@Override
public
Iterable
<
Tag
>
connectionPoolTags
(
ConnectionPoolCreatedEvent
event
)
{
...
...
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