我正在使用spring-boot.1.3.0
,它提供了在内存中存储自定义metrics
的功能,如下所示:
@Service
public class MyService {
private CounterService counterService;
private GaugeService gaucheService;
@Autowired
public MyService(CounterService counterService) {
this.counterService = counterService;
}
public void exampleMethod() {
this.counterService.increment("services.system.myservice.invoked");
}
}
问题:如何以编程方式从CounterService
和GaugeService
中读取计数值?
@Autowired
private BufferMetricReader metrics;
int count = metrics.findOne("my.metrics.key").getValue().intValue();
@ membersound的答案有效,但我认为它更好用
@Autowired
private MetricReader metricReader;
代替
@Autowired
private BufferMetricReader metrics;