了解Prometheus JVM指标

4uqofj5v  于 6个月前  发布在  其他
关注(0)|答案(1)|浏览(74)

我对跟踪JVM中的两个指标很感兴趣-每分钟的GC数和每分钟在GC中花费的时间。我在 Jmeter 板上有可用的指标jvm_gc_collection_seconds.countjvm_gc_collection_seconds.sum,但我对它们的含义有点困惑。
第一个指标jvm_gc_collection_seconds.count似乎与测量时间有关,但仔细阅读它,我相信它是从时间开始(应用程序启动时)调用GC的次数。
1.是这样吗?
1.如果是,为什么度量名称中会有“秒”一词?

  1. jvm_gc_collection_seconds.count/1 minute是否会给予每分钟的GC调用次数?
    我认为第二个度量jvm_gc_collection_seconds.sum是从时间开始执行GC活动所花费的总时间(以秒为单位)。
    1.是这样吗?
  2. jvm_gc_collection_seconds.sum/1 minute是否会给予在1分钟的时间窗口内执行GC活动所花费的时间(以秒为单位)?
9q78igpj

9q78igpj1#

jvm_gc_collection_seconds是一个汇总度量。
基本度量名称为<basename>的概要在擦除期间显示多个时间序列:

  • 观测事件的流 *φ-分位数 *(0 ≤ φ ≤ 1),暴露为<basename>{quantile="<φ>"}
  • 所有观测值的总和,表示为<basename>_sum
  • 已观察到的事件计数,公开为<basename>_count

因此,jvm_gc_collection_seconds_count的值是应用程序启动后发生的GC事件的总数,而jvm_gc_collection_seconds_sum的值是所有这些事件所用的秒数。
要获得每分钟的GC调用次数,可以使用increase(jvm_gc_collection_seconds_count [1m]),同样,要获得所用时间,可以使用increase(jvm_gc_collection_seconds_sum [1m])
此外,您可能会发现Brian Brazil提供的一些有用的技巧,这些技巧与this post中有关垃圾收集的JVM指标有关。

相关问题