当前位置: 首页 > 知识库问答 >
问题:

在Spring Boot中将指标推送到Prometheus Push网关

蒋典
2023-03-14

我想通过Spring Boot应用程序中的Pushgateway将指标(例如HTTP请求的处理时间或当前堆大小)推送到Prometheus。

我很挣扎,因为有很多文档,要么来自Spring Metrics,要么来自Prometheus,但它们都没有解决我的具体问题。

最简单的方法是在RestController类上使用定时注释,如下所述:http://projects.spring.io/spring-metrics/然而,我看不到,我可以在哪里为pushgateway配置URL,并问自己,定时注释是否只是将度量导出到应该从中提取度量的prometheusendpoint。

然而,普罗米修斯指南告诉我使用simpleclient_pushgateway库:https://github.com/prometheus/client_java#exporting-to-a-pushgateway

最后,还有另一个名为simpleclient\u spring\u boot的simpleclient,这是将普罗米修斯集成到spring boot中的第三种方法。

你能告诉我,我怎样才能完成

A) 从首选的基于注释的HTTP请求方法中推送度量

b)每x秒JVM指标的一些方法

C) 到可配置的(在应用程序.yml文件中)pushgateway

非常感谢你

共有1个答案

衡翰藻
2023-03-14

这是处理事情的错误方式,push网关不适用于堆大小或请求时序(https://prometheus.io/docs/practices/pushing/)等每个实例的指标。

您要做的是使用simpleclient\u spring\u boot来公开Prometheus将直接刮取的endpoint。

 类似资料:
  • 我试图在Heroku上推动我的Spring Boot应用程序,我得到了一个错误:未能用Maven构建应用程序,即未能执行目标org.apache.Maven.plugins:maven-compiler-plugin:3.8.1:compile(default-compile)on project BlogApplication:致命错误编译:无效的目标版本:11。 日志: pom.xml

  • 我有一些项目,与GCM一起发送网络推送(https://curiosity-driven.org/push-notifications),使用从浏览器/用户收集的令牌/endpoint。 但在Firebase中,我们还需要一些p256dh和身份验证密钥来发送通知。有没有办法从现有(旧)GCM令牌/endpoint获取这些密钥?

  • 问题内容: 我知道我们可以通过定期轮询更改来做到这一点。这可以通过AJAX(例如与一起使用)来实现。 但是我想知道还有其他方法可以做到这一点吗?其他成本更低或更有效的方法?出色的聊天客户端遵循什么逻辑?一旦您开始键入,另一端就会知道您正在键入。 我们在stackoverflow上遵循什么机制来更新upvote计数或显示已进行编辑等操作,而无需刷新页面? 问题答案: 当要使客户端和服务器保持实时(近

  • 在上一节我们已经介绍了使用 Notification API 如何创建推送并展示给用户,但是当浏览器没有打开,Service Worker 处于休眠状态时,如何将通知推送给用户呢?Native App 很早就实现了离线通知,用户在没有打开应用的情况下,也能够接收到推送的内容并且在通知栏展现出来。现在 Web App 使用 Push API 也可以实现离线接收消息。 Push API 和 Notif

  • 问题内容: 我已经创建了自己的docker文件(该文件运行一个显示“ helloworld”的shell脚本)。图像是“ hellodocker”,标签是“ mytag”,我现在拥有: 如何将Docker映像推送到dockerhub?我用。这给出了“无此类ID”错误。我想念什么?提前致谢。 问题答案: 您要么在构建时就将其标记为标签,例如 或创建绑定到同一图像的新标签,即

  • 我还不太了解dockerhub。我得到了以下案例: 我为中心标记了几张图片 docker标签myImageA myuser/myrepo: 1 docker标签myImageB myuser/myrepo: 1 docker标签myImageC myuser/myrepo: 1 然后我用docker push myuser/myrepo推送它们 现在,当删除所有本地图像并再次拉入自己的docker