2017-05-06 1 views
6

스프링 부트 MetricsWriter을 사용하여 스프링 부트 애플리케이션에서 선택한 데이터 소스 (예 : -Jmx/Graphite)로 데이터를 쓰거나 내보낼 수 있습니다. JmxReporter/GraphiteReporter을 사용할 수 있지만, 스프링의 추상화 Writer/Exporter은 나중에 데이터 소스 변경에 중요한 역할을 할 수 있습니다.Jmx 또는 Graphite에 Dropwizard를 사용하여 Spring Boot Actuator Metrics를 내 보냅니다.

내 REST 엔드 포인트는

@Timed(absolute=true, name="invokeEndpoint") 
public ResponseEntity<Object> callSomeApi() { 
    ... 
} 

내 구성 클래스는 다음과 같습니다 Dropwizard 주석과 주석이 : 엔드 포인트 호출을 통해 JMX에서 수집을 위해 내가 어떤 통계가 표시되지

@Configuration 
public class SpringBootMetrics { 

    @Bean 
    @ExportMetricReader 
    public MetricReader metricReader() { 
     return new MetricRegistryMetricReader(metricRegistry()); 
    } 

    public MetricRegistry metricRegistry() { 
     final MetricRegistry metricRegistry = new MetricRegistry(); 
     return metricRegistry; 
    } 

    @Bean 
    @ExportMetricWriter 
    MetricWriter metricWriter(MBeanExporter exporter) { 
     return new JmxMetricWriter(exporter); 
    } 
} 

내 jconsole. 내가 뭘 놓치고 있니?

답변

2

이 경우 유일한 누락 된 부분은 예를 들어 같은, 당신의 봄 구성에 org.springframework.boot.actuate.endpoint.MetricsEndpointMetricReader을 추가 할 것 같다 :

@Bean 
    MetricsEndpointMetricReader metricsEndpointMetricReader(MetricsEndpoint metricsEndpoint) { 
     return new MetricsEndpointMetricReader(metricsEndpoint); 
    } 
관련 문제