Ich versuche, alle Metriken, die am Endpunkt /metrics
zu einem StatsdMetricWriter
sichtbar sind, zu exportieren.Spring Boot Actuator Metriken (& Dropwizard Metriken) zu Statsd exportieren
ich die folgende Konfigurationsklasse haben bisher:
package com.tonyghita.metricsdriven.service.config;
import com.codahale.metrics.MetricRegistry;
import com.ryantenney.metrics.spring.config.annotation.EnableMetrics;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.actuate.autoconfigure.ExportMetricReader;
import org.springframework.boot.actuate.autoconfigure.ExportMetricWriter;
import org.springframework.boot.actuate.metrics.reader.MetricReader;
import org.springframework.boot.actuate.metrics.reader.MetricRegistryMetricReader;
import org.springframework.boot.actuate.metrics.statsd.StatsdMetricWriter;
import org.springframework.boot.actuate.metrics.writer.MetricWriter;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
@EnableMetrics(proxyTargetClass = true)
public class MetricsConfig {
private static final Logger LOGGER = LoggerFactory.getLogger(MetricsConfig.class);
@Value("${statsd.host:localhost}")
private String host = "localhost";
@Value("${statsd.port:8125}")
private int port;
@Autowired
private MetricRegistry metricRegistry;
@Bean
@ExportMetricReader
public MetricReader metricReader() {
return new MetricRegistryMetricReader(metricRegistry);
}
@Bean
@ExportMetricWriter
public MetricWriter metricWriter() {
LOGGER.info("Configuring StatsdMetricWriter to export to {}:{}", host, port);
return new StatsdMetricWriter(host, port);
}
}
Welche alle Kennzahlen schreibt, die ich Statsd hinzugefügt haben, aber ich möchte auch die System/JVM-Metriken senden, sind auf dem /metrics
Endpunkt sichtbar.
Was fehlt mir?
Vielleicht [diese PR] (https://github.com/spring-projects/spring -boot/pull/3719) (ausstehende Zusammenführung) würde helfen –
Hoffen, dass das @ StéphaneNicoll verschmolzen wird! Diese Änderung bietet mehr Komfort beim Einrichten des Statsd-Writers, aber meine Frage hängt eher davon ab, wie eine '@ ExportMetricReader'-Bean eingerichtet wird, die die am Endpunkt '/ metrics' verfügbaren Metriken exportiert. –
FTR, es ist verschmolzen. – gilad