Prometheus中最大值是多少scrape_interval

What is the maximum scrape_interval in Prometheus

我使用 Prometheus 来衡量业务指标,例如:

# HELP items_waiting_total Total number of items in a queue
# TYPE items_waiting_total gauge
items_waiting_total 149

我想长期保留此数据(保留 5 年)并且我不需要 scrape_interval 中的高频。所以我设置了scrape_interval: "900s".

当我在 Prometheus 中用 60s 分辨率查看图表时,它显示了拍打,但事实并非如此。

问题是,Prometheus 中最大(推荐)是多少scrape_interval?

不建议超过 2 分钟。这是因为默认情况下过时时间为 5 分钟(这是造成差距的原因),并且您希望允许失败的抓取。

如果您想忽略间隙,可以使用一些 aggregation_over_time 函数从 Prometheus 获取数据。

max_over_time(items_waiting_total[900s])

这对于收集器频繁收集 DATA 成本高昂的情况很有用。

默认情况下,Prometheus 会在每个原始样本存储到数据库后最多填充 5 分钟的空白。请参阅 these docs for details. If you need to fill bigger gaps between raw samples, then the last_over_time 函数可以提供帮助。只需在方括号中指定最大间隙持续时间即可填补间隙。例如,以下查询将填补 items_waiting_total 时间序列最多 900 秒的空白:

last_over_time(itmes_waiting_total[900s])