如果我们不在 Prometheus 中为灭霸解释任何 external_labels 怎么办
Posted
技术标签:
【中文标题】如果我们不在 Prometheus 中为灭霸解释任何 external_labels 怎么办【英文标题】:what if we don't explain any external_labels in Prometheus for Thanos 【发布时间】:2021-01-19 01:08:05 【问题描述】:我想知道如果我们在灭霸的 Prometheus 配置文件中不解释任何 external_labels
,会发生什么?
例如,我有 2 个 Prometheuse,它们正在抓取同一个端点,所以它们的 external_labels 是这样的:
普罗米修斯1:
global:
external_labels:
replica: 1
普罗米修斯2:
global:
external_labels:
replica: 2
此时我们知道对象存储中会保存2种metrics,replica=1标签和replica=2标签的metrics。 如果我从配置文件中删除 external_labels,对象存储中会保存多少个指标?
【问题讨论】:
【参考方案1】:我找到了答案。 基于这个doc,
每个 Prometheus 实例都必须有一组全局唯一的 识别标签。
如果你没有为你的 Prometheus 声明一个,TSDB 块将不会被上传到你的对象存储中,你会从 sidecar 收到这个错误:
level=warn ts=2020-10-03T17:00:14.826489487Z caller=sidecar.go:274 err="upload 01EKQPFYHW6R8TB48N07NSCH8P: empty external labels are not allowed for Thanos block." uploaded=0
【讨论】:
以上是关于如果我们不在 Prometheus 中为灭霸解释任何 external_labels 怎么办的主要内容,如果未能解决你的问题,请参考以下文章
Grafana 过滤 Thanos 商店标签|格拉法纳普罗姆修斯灭霸