Chu*_*k94 11 spring grafana prometheus micrometer
我尝试从普罗米修斯获取这些测量值:
increase(http_server_requests_seconds_count{uri="myURI"}[10s])
increase(http_server_requests_seconds_count{uri="myURI"}[30s])
rate(http_server_requests_seconds_count{uri="myURI"}[10s])
rate(http_server_requests_seconds_count{uri="myURI"}[30s])
然后我运行一个 python 脚本,其中创建了 5 个线程,每个线程都访问此 myURI 端点:
我在 Grafana 上看到的是:
我收到了这些值:
我预计会收到这些(但没有):
有人可以用我的例子解释这个函数背后的公式以及实现我期望的指标/值的方法吗?
val*_*ala 11
Prometheus按以下方式计算increase(m[d])
时间戳:t
m
(t-d .. t]
t-d
t
increase()
m
。请注意,Prometheus 不会考虑该(t-d ... t]
时间范围之前的最后一个原始样本与该时间范围内的第一个原始样本之间的差异。在某些情况下,这可能会导致低于预期的结果。(t-d .. t]
。这可能会导致意想不到的结果。例如,整数计数器的小数结果。详情请参阅本期。Prometheus 计算rate(m[d])
为increase(m[d]) / d
,因此rate()
有时结果也可能出乎意料。Prometheus 开发人员已经意识到这些问题并将最终修复它们 - 请参阅这些设计文档。
同时,您可以使用 VictoriaMetrics - 这是我正在开发的类似 Prometheus 的监控解决方案。它提供了increase()和rate()函数,这些函数没有上述问题。
归档时间: |
|
查看次数: |
16376 次 |
最近记录: |