1

下面是一个示例:刮擦间隔设置为 30 秒。应用程序在一个抓取周期中生成以下时间序列:

  1. 名称:Counter_1,值:2,时间戳 1590285009
  2. 名称:Counter_1,值:4,时间戳 1590285019(第一个后 10 秒)
  3. 名称:Counter_1,值:0,时间戳1590285029(第二个后10秒)

在这种情况下会刮掉什么时间序列?所有三个,还是将时间戳设置为抓取时间戳的最新一个?

4

2 回答 2

2

它将在抓取时存储可用数据,并带有抓取时间戳。因此,这取决于在步骤 1-3 之间何时发生刮擦。听起来您的意思是它仅在所有这些之后才适用,因此将存储带有刮擦时间时间戳的#3。例如,如果刮擦发生在步骤 1 和 2 之间,则将存储来自 #1 的指标。

通常,当指标“导出”时,它们可用于抓取,它们没有时间戳。客户端没有“历史”概念(只有服务器有),只有最新的可供读取。它是一个映射到数值的键值向量(如果你自己抓取它,你可以看到格式,例如curl http://localhost:9100/metrics典型的node_exporter)。服务器定期抓取目标并存储当时可用的内容及其抓取时间戳。

于 2020-05-24T08:38:02.897 回答
0

Prometheus 附加到样本的时间戳是 GET 发送的时间

于 2020-08-16T05:27:45.323 回答