From 51dfd528bd6de6ecb0d3d2c1a35fe0c0e3fd463c Mon Sep 17 00:00:00 2001 From: Johnny Lim Date: Fri, 24 Jan 2020 00:25:25 +0900 Subject: [PATCH 1/2] Close TomcatMetrics on shutdown for cleanup See micrometer-metrics/micrometer#1424 See gh-19880 --- .../metrics/web/tomcat/TomcatMetricsBinder.java | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/metrics/web/tomcat/TomcatMetricsBinder.java b/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/metrics/web/tomcat/TomcatMetricsBinder.java index 689c41cdca4..6a8a2bea6fc 100644 --- a/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/metrics/web/tomcat/TomcatMetricsBinder.java +++ b/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/metrics/web/tomcat/TomcatMetricsBinder.java @@ -25,6 +25,7 @@ import org.apache.catalina.Container; import org.apache.catalina.Context; import org.apache.catalina.Manager; +import org.springframework.beans.factory.DisposableBean; import org.springframework.boot.context.event.ApplicationStartedEvent; import org.springframework.boot.web.context.WebServerApplicationContext; import org.springframework.boot.web.embedded.tomcat.TomcatWebServer; @@ -38,12 +39,14 @@ import org.springframework.context.ApplicationListener; * @author Andy Wilkinson * @since 2.1.0 */ -public class TomcatMetricsBinder implements ApplicationListener { +public class TomcatMetricsBinder implements ApplicationListener, DisposableBean { private final MeterRegistry meterRegistry; private final Iterable tags; + private volatile TomcatMetrics tomcatMetrics; + public TomcatMetricsBinder(MeterRegistry meterRegistry) { this(meterRegistry, Collections.emptyList()); } @@ -57,7 +60,8 @@ public class TomcatMetricsBinder implements ApplicationListener Date: Fri, 24 Jan 2020 14:07:53 +0100 Subject: [PATCH 2/2] Polish "Close TomcatMetrics on shutdown for cleanup" See gh-19880 --- .../boot/actuate/metrics/web/tomcat/TomcatMetricsBinder.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/metrics/web/tomcat/TomcatMetricsBinder.java b/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/metrics/web/tomcat/TomcatMetricsBinder.java index 6a8a2bea6fc..688692ff79c 100644 --- a/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/metrics/web/tomcat/TomcatMetricsBinder.java +++ b/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/metrics/web/tomcat/TomcatMetricsBinder.java @@ -1,5 +1,5 @@ /* - * Copyright 2012-2019 the original author or authors. + * Copyright 2012-2020 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License.