我試圖導出在端點/metrics
處可見的所有指標爲StatsdMetricWriter
。導出彈簧啓動器指標(&Dropwizard指標)爲
我已經走到這一步,下面的配置類:
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);
}
}
其中寫道所有這一切我已經加入到Statsd的指標,但我想也發送系統/ JVM度量在/metrics
端點上可見。
我錯過了什麼?
也許[本PR(https://github.com/spring-projects/spring -boot /拉/ 3719)(待定合併)將有助於 –
。希望被合併@StéphaneNicoll!這個改變增加了設置Statsd編寫器的便利性,但是我的問題更多的是如何設置'@ ExportMetricReader' bean來導出'/ metrics'端點上可用的度量值。 –
FTR,它已合併。 – gilad