我在Prometheus中有一个联邦工作,该工作从多台计算机上收集指标(请求编号)。
问题是这些度量标准带有各种各样的标签组合(例如IP地址,容器元数据等),因此我添加了一条记录规则,该规则对所有传入的度量标准求和并将其保存在新的仅包含我需要的标签的指标。结果,我只有〜10个标签组合,而不是200k。
问题:是否可以删除原始指标,但不能删除记录规则中的指标?
可能的解决方案:
--storage.tsdb.retention.time
,但这将删除所有内容(原始指标和计算指标)
POST to api/v1/admin/tsdb/delete_series
,但我在寻找更优雅的东西。另外,如果我删除整个系列,那么还没有时间计算的录音规则会发生什么?
答案 0 :(得分:1)
AFAIK无法删除单个不再需要的时间序列,而无法在单个Prometheus实例中做您想做的事情。BTW,/api/v1/admin/tsdb/series
apparently accepts start
和{ {1}}个参数,例如只删除原始时间序列的旧样本。
另一种选择是让一个Prometheus实例以非常短的保留时间进行抓取和聚合(就像您现在所做的那样)。还有一个保留时间很长的第二个Prometheus实例,将第一个实例刮到聚合结果(以及您想要保留的任何其他指标)上。这称为"federation"。