我有一个指标 istio_requests_total
我想删除 istio_requests_total
中的所有数据,这些数据具有特定的标签值,例如
istio_requests_total {reporter="source"}
我尝试过指标重新标记配置,但它们适用于所有指标,而不仅仅是istio_requests_total
metric_relabel_configs:
- source_labels: [reporter]
regex: '^source$'
action: drop
最佳答案
以下重新标记配置必须删除与 istio_requests_total{reporter="source"}
series selector 匹配的指标:
metric_relabel_configs:
- source_labels: [__name__, reporter]
regex: 'istio_requests_total;source'
action: drop
此重新标记规则针对每个抓取的指标按以下方式工作:
- 它将指标名称与
reporter
标签值连接起来。它使用;
分隔符进行连接。如果需要,可以通过重新标记配置中的separator
选项更改默认分隔符。 - 它将第 1 步的结果与提供的
正则表达式
进行匹配。正则表达式会自动锚定到匹配字符串的开头和结尾,因此无需在regex
中指定^
和$
anchor >. - 如果
正则表达式
与步骤 1 的结果匹配,则删除该指标。否则它不会被丢弃。
附注我从事类似 Prometheus 的监控解决方案 - VictoriaMetrics,它提供 some improvements关于普罗米修斯重新标记。这些改进可以简化一些重新标记任务,如下所示。例如,以下VictoriaMetrics特定的重新标记规则与上面的规则等效,但看起来更清晰:
metric_relabel_configs:
- if: 'istio_requests_total{reporter="source"}'
action: drop
关于prometheus - relabel_configs - 删除具有特定标签值的特定指标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73373169/