如何使/ metrics endpoint显示指标排序?

时间:2016-03-09 17:44:26

标签: spring-boot spring-boot-actuator codahale-metrics

我有一个Spring Boot 1.3.1项目。使用执行器,所以我也有/ metrics端点。

我使用codahale为我的某些方法添加度量标准,完整的java classname是度量标准的名称。一切都好。

但是那里的指标显示未分类,它非常不合适,所有排序都会好得多(给定指标的最大值,最小值,百分位数等将在一个块中,而不是像现在一样在整个地方)。

有人知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:2)

我终于找到了解决这个问题的方法。 我添加了一个新的Endpoint,它调用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时,结果按键排序。