From 77d4448c0e0b1a99c2653d48ac0e5cf29f237045 Mon Sep 17 00:00:00 2001 From: "dawid.kublik@vimn.com" Date: Mon, 11 Dec 2017 22:39:23 +0100 Subject: [PATCH] Avoid duplicate Metrics HTTP interceptor registration Closes gh-11315 --- .../web/client/MetricsRestTemplateCustomizer.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/metrics/web/client/MetricsRestTemplateCustomizer.java b/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/metrics/web/client/MetricsRestTemplateCustomizer.java index 74831e9011..40af5d04e1 100644 --- a/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/metrics/web/client/MetricsRestTemplateCustomizer.java +++ b/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/metrics/web/client/MetricsRestTemplateCustomizer.java @@ -59,10 +59,13 @@ public class MetricsRestTemplateCustomizer implements RestTemplateCustomizer { UriTemplateHandler templateHandler = restTemplate.getUriTemplateHandler(); templateHandler = this.interceptor.createUriTemplateHandler(templateHandler); restTemplate.setUriTemplateHandler(templateHandler); + List existingInterceptors = restTemplate.getInterceptors(); + if (!existingInterceptors.contains(this.interceptor)) { List interceptors = new ArrayList<>(); - interceptors.add(this.interceptor); - interceptors.addAll(restTemplate.getInterceptors()); - restTemplate.setInterceptors(interceptors); + interceptors.add(this.interceptor); + interceptors.addAll(existingInterceptors); + restTemplate.setInterceptors(interceptors); + } } }