Prometheus 区别 jvm_gc_collection_seconds_sum 和 jvm_gc_pause_seconds

Posted

技术标签:

【中文标题】Prometheus 区别 jvm_gc_collection_seconds_sum 和 jvm_gc_pause_seconds【英文标题】:Prometheus Difference jvm_gc_collection_seconds_sum and jvm_gc_pause_seconds 【发布时间】:2021-05-15 01:29:43 【问题描述】:

我发现这篇文章在 Prometheus/Grafana 中查询 GC Throughput 如下:

min by(job)(100 - (sum by (job, instance)(increase(jvm_gc_collection_seconds_sum[1m])) * 100 / sum by (job, instance) (increase(process_cpu_seconds_total[1m]))))

作者采用除其他jvm_gc_collection_seconds_sum之外的指标来计算GC吞吐量。当我查看我的 Spring Boot Prometheus 端点时,我没有找到这个指标,而是找到了 jvm_gc_pause_seconds。声明如下:

 #HELP jvm_gc_pause_seconds Time spent in GC pause

这两个指标有区别吗?

非常感谢!

【问题讨论】:

【参考方案1】:
jvm_gc_collection_seconds_sum

是 Prometheus 客户端指标。现在 Prometheus 客户端不再为 Spring Boot 2 开发。

jvm_gc_pause_seconds or jvm_gc_pause_seconds_sum

是在 Spring Boot 中使用的 Micrometer 客户端指标。

【讨论】:

但是指标的意思是一样的吗? 是的。名称只是在框架中硬编码,可能会有所不同,例如,jvm_memory_bytes_max 用于 prometheus,jvm_memory_max_bytes 用于 micrometer 等

以上是关于Prometheus 区别 jvm_gc_collection_seconds_sum 和 jvm_gc_pause_seconds的主要内容,如果未能解决你的问题,请参考以下文章

prometheus的irate和rate区别

Prometheus 区别 jvm_gc_collection_seconds_sum 和 jvm_gc_pause_seconds

Prometheus在kubernetes集群的搭建教程

Prometheus采集抓取间隔时间15秒与1秒的区别 scrape_interval

prometheus目录

用例:InfluxDB 与 Prometheus [关闭]