如何在 Spring Boot Actuator Prometheus 指标中包含时间戳
Posted
技术标签:
【中文标题】如何在 Spring Boot Actuator Prometheus 指标中包含时间戳【英文标题】:How to include timestamps in Spring Boot Actuator Prometheus metrics 【发布时间】:2021-11-30 23:45:45 【问题描述】:我正在使用 Spring Boot 2.5.4 和带有 Micrometer 和 Prometheus 支持的 Actuator。
当我打开 /actuator/prometheus
端点时,我会看到如下指标:
# HELP jvm_threads_live_threads The current number of live threads including both daemon and non-daemon threads
# TYPE jvm_threads_live_threads gauge
jvm_threads_live_threads 28.0
请注意,该指标没有附加时间戳。但是,根据OpenMetrics / Prometheus spec,可以在指标输出中添加时间戳。
我的问题:如何告诉 Spring Boot Actuator 生成时间戳并将其添加到它创建的指标中?我还没有找到任何关于它的文档。谢谢!
参考文献
我的pom.xml
依赖项如下所示:
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-core</artifactId>
</dependency>
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-registry-prometheus</artifactId>
</dependency>
我的application.yaml
是这样的:
# Application name. Shows up in metrics etc.
spring:
application:
name: "some_app_name"
# Expose application on port 8080
server:
port: $SERVER_PORT:8080
# Expose all Actuator endpoints (don't do this in production!)
management:
endpoints:
web:
exposure:
include:
- "*"
【问题讨论】:
【参考方案1】:千分尺doesn't support this at the moment。团队建议将 Prometheus Java 客户端直接用于时间戳对您很重要的指标。
【讨论】:
以上是关于如何在 Spring Boot Actuator Prometheus 指标中包含时间戳的主要内容,如果未能解决你的问题,请参考以下文章
如何启用Spring Boot Actuator的所有Endpoints
如何启用Spring Boot Actuator的所有Endpoints
Spring Boot Actuator 的“httptrace”端点在 Spring Boot 2.2.0 中不再存在