diff --git a/hystrix-contrib/hystrix-servo-metrics-publisher/src/main/java/com/netflix/hystrix/contrib/servopublisher/HystrixServoMetricsPublisher.java b/hystrix-contrib/hystrix-servo-metrics-publisher/src/main/java/com/netflix/hystrix/contrib/servopublisher/HystrixServoMetricsPublisher.java index 7d81d391c..d5c74f8c1 100644 --- a/hystrix-contrib/hystrix-servo-metrics-publisher/src/main/java/com/netflix/hystrix/contrib/servopublisher/HystrixServoMetricsPublisher.java +++ b/hystrix-contrib/hystrix-servo-metrics-publisher/src/main/java/com/netflix/hystrix/contrib/servopublisher/HystrixServoMetricsPublisher.java @@ -34,12 +34,24 @@ */ public class HystrixServoMetricsPublisher extends HystrixMetricsPublisher { - private static HystrixServoMetricsPublisher INSTANCE = new HystrixServoMetricsPublisher(); + private static HystrixServoMetricsPublisher INSTANCE = null; public static HystrixServoMetricsPublisher getInstance() { + if (INSTANCE == null) { + HystrixServoMetricsPublisher temp = createInstance(); + INSTANCE = temp; + } return INSTANCE; } + private static synchronized HystrixServoMetricsPublisher createInstance() { + if (INSTANCE == null) { + return new HystrixServoMetricsPublisher(); + } else { + return INSTANCE; + } + } + private HystrixServoMetricsPublisher() { }