谁能解释我用千分尺_count
注释暴露的_sum
和@Timed
度量标准之间有什么区别。
在这里,有两个度量值示例,它们是方法上的@Timed
注释帖子的结果。
GET_CARD_LIMITS_BY_LIMIT_TYPE_seconds_count{class="ro.orange.productsbff.infrastructure.adapter.cms.integration.CmsClient",method="getCardLimitsByType",} 9.0
GET_CARD_LIMITS_BY_LIMIT_TYPE_seconds_sum{class="ro.orange.productsbff.infrastructure.adapter.cms.integration.CmsClient",method="getCardLimitsByType",} 1.838999262
谢谢!
答案 0 :(得分:1)
count
是计时器进行的总测量。 sum
是该时间已进行的所有测量的累积持续时间。因此,通过将总和除以计数,您可以看到平均时间:
GET_CARD_LIMITS_BY_LIMIT_TYPE_seconds_sum /
GET_CARD_LIMITS_BY_LIMIT_TYPE_seconds_count
但是随着时间的流逝,这种平均值的作用会减弱,因为该平均值可能会随着值的增长而隐藏峰值。
由于这两个数字只会增加(说明重新启动),因此Prometheus可以利用该知识,并且可以看到该计时器的平均1分钟延迟,如下所示:
increase(GET_CARD_LIMITS_BY_LIMIT_TYPE_seconds_sum[1m]) /
increase(GET_CARD_LIMITS_BY_LIMIT_TYPE_seconds_count[1m])