我有一个Spring Boot 1.3.1项目。使用执行器,所以我也有/ metrics端点。
我正在使用codahale为我的某些方法添加一个指标,完整的Java类名是该指标的名称。没关系。
但是那里的指标显示未排序,这是非常不足的,将所有排序都好得多(给定指标的最大值,最小值,百分位等将在一个块中,而不是现在的所有位置)。
有人知道如何解决这个问题吗?
最佳答案
我终于找到了解决这个问题的方法。
我添加了一个新的端点,该端点调用MetricsEndpoint并对结果进行排序。
@Component
public class CustomMetricsEndpoint extends AbstractEndpoint<Map<String, Object>> {
private MetricsEndpoint metricsEndpoint;
@Autowired
public CustomMetricsEndpoint(MetricsEndpoint metricsEndpoint) {
super("custommetrics");
this.metricsEndpoint = metricsEndpoint;
}
public Map<String, Object> invoke() {
SortedMap<String, Object> metricsMap =
new TreeMap<String, Object>(this.metricsEndpoint.invoke());
return metricsMap;
}
}
现在,当我调用/ custommetrics时,结果将按键排序。