首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在一个端点上合并Spring Boot执行器和千分尺数据

在一个端点上合并Spring Boot执行器和千分尺数据
EN

Stack Overflow用户
提问于 2018-06-01 07:25:14
回答 2查看 802关注 0票数 0

我有许多应用程序正在使用SpringBoot执行器向/metrics端点发布指标。

我还有其他一些应用程序也在使用测微仪将指标发布到/prometheus端点。

最后,我有一个云提供商,它只允许我从单个端点提取指标。他们有许多预先准备好的Grafana仪表板,但大多数都是针对执行器变量名称的。有些是针对微米变量名的。

测微仪输出相同的数据,但它使用与执行器不同的名称,例如"jvm_memory“而不是"mem”。

我真的很想找到一种方法来合并这两个数据源,以便它们将数据转储到单个端点,并且我的所有Grafana仪表板都可以与所有应用程序一起工作。

但是我不知道该怎么做才是最好的。有没有一种方法可以告诉Micrometer使用/metrics作为数据源,以便任何时候轮询它都会包含这些内容?

我们非常感谢您的任何想法。

EN

回答 2

Stack Overflow用户

发布于 2018-07-19 21:55:34

最好的解决方案可能取决于仪表板的复杂性。您可以配置一组仪表,以不同的名称报告值,然后只使用千分尺刮擦端点。例如:

代码语言:javascript
复制
@Bean
public MeterBinder mapToOldNames() {
    return r -> {
        r.gauge("mem", Tags.empty(), r, r2 -> r2.find("jvm.memory.used").gauges()
                .stream().mapToDouble(Gauge::value).sum());
    };
}

请注意,在本例中,我们如何转换以微米为单位的内存规(相对于堆/非堆内存的不同方面),并将它们汇总到一个规中,以与旧方法匹配。

票数 0
EN

Stack Overflow用户

发布于 2018-08-01 00:56:07

对于Spring Boot1.5,你可以做一些类似普罗米修斯`simpleclient_spring_boot的does

您可以从执行器度量上下文中收集PublicMetrics,并将它们公开/注册为千分尺MeterRegistry中的仪表/计数器。这一术语将在您的Prometheus擦除端点下公开这些执行器指标。

我假设你会过滤掉非功能性指标,它们是微米指标的副本。因此,我能想到的唯一一件事就是功能/业务指标实际接管。但如果您有机会将代码实际更改为微米,我会说这是更好的方法。

我还没有试过这个,只是记得我见过这个概念。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50634144

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档