From a7149e374012e9db593e1727f7658d7b0bef9682 Mon Sep 17 00:00:00 2001 From: Athou Date: Wed, 4 Sep 2013 10:32:37 +0200 Subject: [PATCH] don't start a new reporter every time the registry is injected --- .../backend/metrics/MetricRegistryProducer.java | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/commafeed/backend/metrics/MetricRegistryProducer.java b/src/main/java/com/commafeed/backend/metrics/MetricRegistryProducer.java index 0a3142a8..408a426c 100644 --- a/src/main/java/com/commafeed/backend/metrics/MetricRegistryProducer.java +++ b/src/main/java/com/commafeed/backend/metrics/MetricRegistryProducer.java @@ -1,21 +1,30 @@ package com.commafeed.backend.metrics; +import javax.annotation.PostConstruct; import javax.enterprise.context.ApplicationScoped; import javax.enterprise.inject.Produces; +import lombok.extern.slf4j.Slf4j; + import com.codahale.metrics.JmxReporter; import com.codahale.metrics.MetricRegistry; @ApplicationScoped +@Slf4j public class MetricRegistryProducer { - private final MetricRegistry registry = new MetricRegistry(); + private MetricRegistry registry; + + @PostConstruct + private void init() { + log.info("initializing metrics registry"); + registry = new MetricRegistry(); + JmxReporter.forRegistry(registry).build().start(); + log.info("metrics registry initialized"); + } @Produces public MetricRegistry produceMetricsRegistry() { - final JmxReporter reporter = JmxReporter.forRegistry(registry).build(); - reporter.start(); return registry; } - }