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

如何获得千分尺普罗米修斯度量为通量工作?

姬存
2023-03-14

对于Spring Framework 5.0.1.ReleaseSpring Boot 2.0.0.M6我们希望使用千分尺应用程序监控,因此包括:

compile('org.springframework.boot:spring-boot-starter-actuator')
compile('io.micrometer:micrometer-registry-prometheus')

并创建一个具有以下restendpoint的控制器:

@RestController
@Timed
public class MyController {

    @Autowired
    private MyService service;

    @RequestMapping(value = "/test", method = RequestMethod.GET)
    public void test() {
        try {
            Thread.sleep(2000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }

    @RequestMapping(value = "/test/flux", method = RequestMethod.GET, produces = "application/stream+json")
    public Flux<MyItem> getMyItems(@RequestParam Map<String, String> params) {
        return this.service.getMyItems(params);
    }
}

因此,我们得到了/testendpoint,它只等待两秒钟,我们得到了/test/fluxendpoint,它返回了ITME的列表。

Bot请求工作。唯一的区别是,对于/testendpoint,我得到的是prometheus度量,而对于/test/fluxendpoint,我没有得到任何度量:

http_server_requests_duration_seconds_count{exception="None",method="GET",status="200",uri="/get/test",} 1.0
http_server_requests_duration_seconds_sum{exception="None",method="GET",status="200",uri="/get/test",} 2.002811046
http_server_requests_duration_seconds_max{exception="None",method="GET",status="200",uri="/get/test",} 0.0

对于返回fluxflux仍不受支持的请求,是否必须配置其他内容才能使其工作?

共有1个答案

贺善
2023-03-14

WebFluxendpoint的自动配置包含在Boot2 RC2中!

 类似资料:
  • 响应于“/acturet/prometheus”的DistributionSummary可用的度量仅是度量的Sum、Max和Count。 我想显示在选定的时间量内API调用所用的平均时间。用于EX:API在过去5分钟内所用的平均时间。

  • 我可以在http://localhost:8080/hello/q/metrics看到这个指标。现在我想把这个度量标准推到普罗米修斯,但我还没有找到任何指南,说明如何在普罗米修斯注册/集成这些度量标准。理想情况下,我想把它们推到石墨上,但这不受支持。所以我想知道如何推动这些指标,这样我就可以在格拉法纳可视化它们。

  • 我试图在Spring Boot 2.0.0 .版本中使用Micrometer.io生成普罗米修斯指标 当我试图将列表的大小公开为Gauge时,它一直显示NaN。在留档中,它说; 你有责任对你用量规测量的状态对象保持强烈的引用。 我已经尝试了一些不同的方法,但我不能解决这个问题。这是我的代码和一些试验。 有人能帮忙解决这个问题吗?任何帮助都将不胜感激。

  • 我正在构建一个Spring Boot应用程序,并计划使用进行Prometheus的数据刮取。看来主要的办法是用千分尺。但是,我看到还有另一个库,这就是Spring Metrics。

  • 我想测量处理某些数据需要多长时间:我的应用程序以固定速率从给定源读取该数据。在每个圆圈之前,我存储。我读取数据,将单个时间戳添加到每个条目中。数据被存储,转换,就在我通过WebSockets发送它之前,我想测量和初始时间戳之间的持续时间。 我试过了 但是可视化这一点只允许我使用<code>processingDuration_seconds_count、<code>_max和<code>_ sum

  • 我的各种docker容器导出prometheus度量,但是我们的prometheus安装只需要从一个endpoint提取所有度量。不幸的是,这是无法改变的。因此,我需要在一个点上聚合所有度量,从普罗米修斯安装可以刮取度量。 此外,如果这个程序或脚本能够提供关于如何处理由不同endpoint导出的相同度量的额外逻辑,那就太好了。例如,如果我只是将不同的度量站点连接在一起,Prometheus在解释度