Spring & Micrometer:如何在运行时将仪表添加到 MeterRegistry?

问题描述 投票:0回答:1

我需要将调度程序中的仪表添加到 MeterRegistry。我注册了新的仪表,它们出现在 Prometheus 输出中,但值函数没有被调用。它会导致 prometheus 中添加的指标出现 NaN 值。

我尝试使用 MeterBinder 添加这些仪表,它工作正常,但由于这些指标的性质,我需要在运行时执行此操作。

简而言之,我的流程如下所示:

  1. 每 N 分钟从数据库中检索所有现有实体
  2. 删除已删除实体的指标
  3. 为新实体添加仪表
  4. 在gauge的value函数中去redis,获取状态并返回值

因此,我不能在启动时添加它们。

java spring prometheus micrometer
1个回答
0
投票

答案:如何使用 Spring Boot 和 Micrometer 创建自定义仪表?

当我使用 MeterBinder 从第一个解决方案复制代码时,我犯了一个错误并丢失了 StrongReference(true) 行。

© www.soinside.com 2019 - 2024. All rights reserved.