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
8f3c4dbc
Commit
8f3c4dbc
authored
Feb 04, 2019
by
Raheela
Committed by
Andy Wilkinson
Feb 12, 2019
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Make auto-config of RestTemplate metrics back off with no builder bean
See gh-15842
parent
48e78118
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
18 additions
and
1 deletion
+18
-1
HttpClientMetricsAutoConfiguration.java
...etrics/web/client/HttpClientMetricsAutoConfiguration.java
+2
-1
RestTemplateMetricsConfiguration.java
.../metrics/web/client/RestTemplateMetricsConfiguration.java
+4
-0
RestTemplateMetricsConfigurationTests.java
...ics/web/client/RestTemplateMetricsConfigurationTests.java
+12
-0
No files found.
spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/web/client/HttpClientMetricsAutoConfiguration.java
View file @
8f3c4dbc
...
@@ -27,6 +27,7 @@ import org.springframework.boot.autoconfigure.AutoConfigureAfter;
...
@@ -27,6 +27,7 @@ import org.springframework.boot.autoconfigure.AutoConfigureAfter;
import
org.springframework.boot.autoconfigure.EnableAutoConfiguration
;
import
org.springframework.boot.autoconfigure.EnableAutoConfiguration
;
import
org.springframework.boot.autoconfigure.condition.ConditionalOnBean
;
import
org.springframework.boot.autoconfigure.condition.ConditionalOnBean
;
import
org.springframework.boot.autoconfigure.condition.ConditionalOnClass
;
import
org.springframework.boot.autoconfigure.condition.ConditionalOnClass
;
import
org.springframework.boot.autoconfigure.web.client.RestTemplateAutoConfiguration
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.context.annotation.Import
;
import
org.springframework.context.annotation.Import
;
...
@@ -42,7 +43,7 @@ import org.springframework.core.annotation.Order;
...
@@ -42,7 +43,7 @@ import org.springframework.core.annotation.Order;
*/
*/
@Configuration
@Configuration
@AutoConfigureAfter
({
MetricsAutoConfiguration
.
class
,
@AutoConfigureAfter
({
MetricsAutoConfiguration
.
class
,
SimpleMetricsExportAutoConfiguration
.
class
})
SimpleMetricsExportAutoConfiguration
.
class
,
RestTemplateAutoConfiguration
.
class
})
@ConditionalOnClass
(
MeterRegistry
.
class
)
@ConditionalOnClass
(
MeterRegistry
.
class
)
@ConditionalOnBean
(
MeterRegistry
.
class
)
@ConditionalOnBean
(
MeterRegistry
.
class
)
@Import
({
RestTemplateMetricsConfiguration
.
class
,
WebClientMetricsConfiguration
.
class
})
@Import
({
RestTemplateMetricsConfiguration
.
class
,
WebClientMetricsConfiguration
.
class
})
...
...
spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/web/client/RestTemplateMetricsConfiguration.java
View file @
8f3c4dbc
...
@@ -22,8 +22,10 @@ import org.springframework.boot.actuate.autoconfigure.metrics.MetricsProperties;
...
@@ -22,8 +22,10 @@ import org.springframework.boot.actuate.autoconfigure.metrics.MetricsProperties;
import
org.springframework.boot.actuate.metrics.web.client.DefaultRestTemplateExchangeTagsProvider
;
import
org.springframework.boot.actuate.metrics.web.client.DefaultRestTemplateExchangeTagsProvider
;
import
org.springframework.boot.actuate.metrics.web.client.MetricsRestTemplateCustomizer
;
import
org.springframework.boot.actuate.metrics.web.client.MetricsRestTemplateCustomizer
;
import
org.springframework.boot.actuate.metrics.web.client.RestTemplateExchangeTagsProvider
;
import
org.springframework.boot.actuate.metrics.web.client.RestTemplateExchangeTagsProvider
;
import
org.springframework.boot.autoconfigure.condition.ConditionalOnBean
;
import
org.springframework.boot.autoconfigure.condition.ConditionalOnClass
;
import
org.springframework.boot.autoconfigure.condition.ConditionalOnClass
;
import
org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean
;
import
org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean
;
import
org.springframework.boot.web.client.RestTemplateBuilder
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.web.client.RestTemplate
;
import
org.springframework.web.client.RestTemplate
;
...
@@ -33,9 +35,11 @@ import org.springframework.web.client.RestTemplate;
...
@@ -33,9 +35,11 @@ import org.springframework.web.client.RestTemplate;
*
*
* @author Jon Schneider
* @author Jon Schneider
* @author Phillip Webb
* @author Phillip Webb
* @author raheela.aslam
*/
*/
@Configuration
@Configuration
@ConditionalOnClass
(
RestTemplate
.
class
)
@ConditionalOnClass
(
RestTemplate
.
class
)
@ConditionalOnBean
(
RestTemplateBuilder
.
class
)
class
RestTemplateMetricsConfiguration
{
class
RestTemplateMetricsConfiguration
{
private
final
MetricsProperties
properties
;
private
final
MetricsProperties
properties
;
...
...
spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/metrics/web/client/RestTemplateMetricsConfigurationTests.java
View file @
8f3c4dbc
...
@@ -21,6 +21,7 @@ import org.junit.Rule;
...
@@ -21,6 +21,7 @@ import org.junit.Rule;
import
org.junit.Test
;
import
org.junit.Test
;
import
org.springframework.boot.actuate.autoconfigure.metrics.test.MetricsRun
;
import
org.springframework.boot.actuate.autoconfigure.metrics.test.MetricsRun
;
import
org.springframework.boot.actuate.metrics.web.client.DefaultRestTemplateExchangeTagsProvider
;
import
org.springframework.boot.actuate.metrics.web.client.MetricsRestTemplateCustomizer
;
import
org.springframework.boot.actuate.metrics.web.client.MetricsRestTemplateCustomizer
;
import
org.springframework.boot.autoconfigure.AutoConfigurations
;
import
org.springframework.boot.autoconfigure.AutoConfigurations
;
import
org.springframework.boot.autoconfigure.web.client.RestTemplateAutoConfiguration
;
import
org.springframework.boot.autoconfigure.web.client.RestTemplateAutoConfiguration
;
...
@@ -41,6 +42,7 @@ import static org.springframework.test.web.client.response.MockRestResponseCreat
...
@@ -41,6 +42,7 @@ import static org.springframework.test.web.client.response.MockRestResponseCreat
*
*
* @author Stephane Nicoll
* @author Stephane Nicoll
* @author Jon Schneider
* @author Jon Schneider
* @author raheela.aslam
*/
*/
public
class
RestTemplateMetricsConfigurationTests
{
public
class
RestTemplateMetricsConfigurationTests
{
...
@@ -131,4 +133,14 @@ public class RestTemplateMetricsConfigurationTests {
...
@@ -131,4 +133,14 @@ public class RestTemplateMetricsConfigurationTests {
return
restTemplate
;
return
restTemplate
;
}
}
@Test
public
void
backsOffWhenRestTemplateBuilderIsMissing
()
{
new
ApplicationContextRunner
().
with
(
MetricsRun
.
simple
())
.
withConfiguration
(
AutoConfigurations
.
of
(
HttpClientMetricsAutoConfiguration
.
class
))
.
run
((
context
)
->
assertThat
(
context
)
.
doesNotHaveBean
(
DefaultRestTemplateExchangeTagsProvider
.
class
)
.
doesNotHaveBean
(
MetricsRestTemplateCustomizer
.
class
));
}
}
}
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