如何让 spring boot cloud/actuator 支持 prometheus Exemplars?

Posted

技术标签:

【中文标题】如何让 spring boot cloud/actuator 支持 prometheus Exemplars?【英文标题】:How to get spring boot cloud/actuator to support prometheus Exemplars? 【发布时间】:2021-09-11 11:57:32 【问题描述】:

Exemplars 支持本质上将 trace-id 添加到正在抓取的指标中。我找到了一个关于如何使用 GoLang [1] 的教程,但无法弄清楚如何使用 Spring Boot 库/功能来做到这一点。我知道 Prometheus Java Client 支持它,如 [2] 中所述,但不确定如何让它与 Springboot 一起使用。

    https://vbehar.medium.com/using-prometheus-exemplars-to-jump-from-metrics-to-traces-in-grafana-249e721d4192 https://github.com/prometheus/client_java/pull/615

【问题讨论】:

【参考方案1】:

我不能 100% 确定我的问题是正确的:我假设您在谈论 /actuator/prometheus 端点。

Micrometer 提供了 Spring 中对指标的支持,它还支持 Prometheus,并且 Spring Boot“只是”为它设置了一个执行器端点。

所以真正的问题是:千分尺是否支持示例?现在它没有,到目前为止我们还没有人要求它(this issue 有点联系)。 所以如果你想要这个功能,请在 GitHub 上打开一个issue(Enhancement request)。

更新:我为此打开了一个问题:https://github.com/micrometer-metrics/micrometer/issues/2672,请随时 +1 或加入。

在 Micrometer 中添加示例支持并不是故事的结束,我们还需要添加对 Spring Cloud Sleuth 的支持并解决一些其他潜在问题。

在实现之前,我猜你最好的选择是使用 prometheus 客户端。

【讨论】:

以上是关于如何让 spring boot cloud/actuator 支持 prometheus Exemplars?的主要内容,如果未能解决你的问题,请参考以下文章

如何让 Spring Boot 自动重新连接到 PostgreSQL?

如何让 Spring Boot 应用程序在 tomcat 失败时退出

如何让 Spring Boot Actuator LdapHealthIndicator 与 Spring Security 的 Ldap 一起运行?

如何让Javamelody使用不同的端口(Spring Boot+暴露的两个HTTP端口)

如何让 Linkedin OAuth 在 Spring Boot 中工作

如何让 spring boot cloud/actuator 支持 prometheus Exemplars?