当我有更长期的数据可用时,为什么我的 prometheus 仪表板仅显示 2 周的数据?

当我有更长期的数据可用时,为什么我的 prometheus 仪表板仅显示 2 周的数据?

我已经使用 Thanos 配置了 Prometheus。我正在使用节点导出器已满仪表板用于查看来自节点导出器的数据。无论我选择什么时间范围(例如now-20d),仪表板仅显示 2 周的数据:

在此处输入图片描述

如果我转到“探索”用户界面并输入查询(例如node_memory_MemFree_bytes{instance="172.31.64.1:9100", job="node"},与上一张图片中显示的数据匹配),使用相同的数据源和时间范围,我显然可以获得更早的数据:

在此处输入图片描述

什么原因导致仪表板无法显示过去两周以外的数据?

答案1

Prometheus 默认保留时间为 15 天。

https://prometheus.io/docs/prometheus/latest/storage/#operational-aspects

Prometheus 有几个用于配置本地存储的标志。最重要的是:
...
--storage.tsdb.retention.time:何时删除旧数据。默认为 15d。如果此标志设置为非默认值,则覆盖 storage.tsdb.retention。

还可以根据大小配置保留:

--storage.tsdb.retention.size:要保留的存储块的最大字节数。最旧的数据将首先被删除。默认为 0 或禁用。支持的单位:B、KB、MB、GB、TB、PB、EB。例如:“512MB”...

您可以通过转到http://<IP_address_of_instance>:9090/status并查找“存储保留”行来查看正在运行的 Prometheus 实例上的当前保留设置。

相关内容