diff --git a/core/build.gradle b/core/build.gradle index 36d1db37e4..a0b5a09b78 100644 --- a/core/build.gradle +++ b/core/build.gradle @@ -151,8 +151,7 @@ dependencies { "io.dropwizard.metrics:metrics-servlets:$metricsVersion", "io.dropwizard.metrics:metrics-jvm:$metricsVersion", "io.dropwizard.metrics:metrics-jmx:$metricsVersion", - "io.dropwizard.metrics:metrics-logback:$metricsVersion", - 'com.readytalk:metrics3-statsd:4.2.0' + "io.dropwizard.metrics:metrics-logback:$metricsVersion" ) geotools( "org.geotools:gt-epsg-hsql:$geotoolsVersion", diff --git a/core/src/main/java/org/mapfish/print/metrics/StatsDReporterInit.java b/core/src/main/java/org/mapfish/print/metrics/StatsDReporterInit.java deleted file mode 100644 index bfad4c2adc..0000000000 --- a/core/src/main/java/org/mapfish/print/metrics/StatsDReporterInit.java +++ /dev/null @@ -1,89 +0,0 @@ -package org.mapfish.print.metrics; - -import com.codahale.metrics.MetricRegistry; -import com.readytalk.metrics.StatsDReporter; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; - -import java.net.InetAddress; -import java.net.URI; -import java.net.URISyntaxException; -import java.net.UnknownHostException; -import java.util.concurrent.TimeUnit; -import javax.annotation.PostConstruct; -import javax.annotation.PreDestroy; - -/** - * Will start a StatsD reporter if configured. Using those environment variables or Java system properties: - - * STATSD_ADDRESS: the address:port of the statsd daemon (if not set, the feature is disabled) - - * STATSD_PREFIX: the prefix to set (defaults to mapfish-print). Can use %h to insert the hostname. - - * STATSD_PERIOD: the reporting period in seconds (defaults to 10) - */ -public class StatsDReporterInit { - private static final String ADDRESS = "STATSD_ADDRESS"; - private static final String PREFIX = "STATSD_PREFIX"; - private static final String PERIOD = "STATSD_PERIOD"; - private static final Logger LOGGER = LoggerFactory.getLogger(StatsDReporterInit.class); - - @Autowired - private MetricRegistry metricRegistry; - - private StatsDReporter reporter = null; - - private static String getHostname() { - String hostname = System.getenv("HOSTNAME"); // should work on Unix - if (hostname == null) { - hostname = System.getenv("COMPUTERNAME"); // should work on Windows - } - if (hostname == null) { - try { - // last resort - hostname = InetAddress.getLocalHost().getHostName(); - } catch (UnknownHostException e) { - hostname = "unknown"; // fallback - } - } - return hostname.toLowerCase(); - } - - private String getConfig(final String name, final String def) { - final String result = System.getenv(name); - if (result == null) { - return System.getProperty(name, def); - } - return result; - } - - /** - * Start the StatsD reporter, if configured. - * - * @throws URISyntaxException - */ - @PostConstruct - public final void init() throws URISyntaxException { - final String address = getConfig(ADDRESS, null); - if (address != null) { - final URI uri = new URI("udp://" + address); - final String prefix = getConfig(PREFIX, "mapfish-print").replace("%h", getHostname()); - final int period = Integer.parseInt(getConfig(PERIOD, "10")); - LOGGER.info("Starting a StatsD reporter targeting {} with prefix {} and period {}s", - uri, prefix, period); - this.reporter = StatsDReporter.forRegistry(this.metricRegistry) - .prefixedWith(prefix) - .build(uri.getHost(), uri.getPort()); - this.reporter.start(period, TimeUnit.SECONDS); - } - } - - /** - * Stop the StatsD reporter, if configured. - */ - @PreDestroy - public final void shutdown() { - if (this.reporter != null) { - LOGGER.info("Stopping the StatsD reporter"); - this.reporter.stop(); - } - } -} diff --git a/core/src/main/resources/mapfish-spring-application-context.xml b/core/src/main/resources/mapfish-spring-application-context.xml index ba63f64e54..7b69183cb7 100644 --- a/core/src/main/resources/mapfish-spring-application-context.xml +++ b/core/src/main/resources/mapfish-spring-application-context.xml @@ -66,7 +66,6 @@ -