千分尺@Timed 注释
Posted
技术标签:
【中文标题】千分尺@Timed 注释【英文标题】:Micrometer @Timed annotation 【发布时间】:2019-08-26 03:11:02 【问题描述】:谁能解释一下_count
和_sum
由千分尺@Timed
注释公开的指标之间的区别。
这里有两个指标值示例,它们是在方法上发布 @Timed
注释的结果。
GET_CARD_LIMITS_BY_LIMIT_TYPE_seconds_countclass="ro.orange.productsbff.infrastructure.adapter.cms.integration.CmsClient",method="getCardLimitsByType", 9.0
GET_CARD_LIMITS_BY_LIMIT_TYPE_seconds_sumclass="ro.orange.productsbff.infrastructure.adapter.cms.integration.CmsClient",method="getCardLimitsByType", 1.838999262
谢谢!
【问题讨论】:
【参考方案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])
【讨论】:
以上是关于千分尺@Timed 注释的主要内容,如果未能解决你的问题,请参考以下文章
Codahale Metrics:在纯 Java 中使用 @Timed 指标注释
有没有办法将 Micrometer @Timed 注释捕获到 Prometheus 指标存储/注册表中? [复制]