在普罗米修斯中重新标记
Relabelling in prometheus
我试图在仅针对以下匹配项复制 Kafka 的现有指标后重新标记
Kafka_log_size{分区=“1”,主题=“ab_bc_cd_12345_ef_001”,}10
我希望输出为:
Kafka_log_size{分区=“1”,主题=“ab_bc_cd_12345_ef_001”,}10
Kafka_log_size_uniq{分区=“1”,uniq=“12345”,}10
阅读多篇文章,似乎可以通过重新标记来实现。但不确定如何开始请指教。谢谢
您有两个选项可以在 Prometheus 中重新标记您的指标:
- 在摄取时使用 metric_relabel_configs(在 Prometheus 配置中)
- 在请求时使用 label_replace
在这两种情况下,您都需要一个正则表达式来匹配 topic
标签的内容并提取您需要的内容。
在配置中重新标记
在您为 Kafka 抓取的作业中,您必须匹配要替换的指标名称和 use relabeling config:
metric_relabel_configs:
- source_labels: [topic]
regex: '[a-z_]+_([0-9]+)_.*'
action: replace
target_label: uniq
replacement:
然后添加删除标签的规则
- regex: 'topic'
action: droplabel
请求中重新标记
新标签是使用标签替换生成的:
label_replace(Kafka_log_size, "uniq", "", "topic", "[a-z_]+_([0-9]+)_.*")
然后,应用 aggregation operator 删除不需要的标签:
max(label_replace(Kafka_log_size, "uniq", "", "topic", "[a-z_]+_([0-9]+)_.*")) without(topic)
我试图在仅针对以下匹配项复制 Kafka 的现有指标后重新标记
Kafka_log_size{分区=“1”,主题=“ab_bc_cd_12345_ef_001”,}10
我希望输出为: Kafka_log_size{分区=“1”,主题=“ab_bc_cd_12345_ef_001”,}10 Kafka_log_size_uniq{分区=“1”,uniq=“12345”,}10
阅读多篇文章,似乎可以通过重新标记来实现。但不确定如何开始请指教。谢谢
您有两个选项可以在 Prometheus 中重新标记您的指标:
- 在摄取时使用 metric_relabel_configs(在 Prometheus 配置中)
- 在请求时使用 label_replace
在这两种情况下,您都需要一个正则表达式来匹配 topic
标签的内容并提取您需要的内容。
在配置中重新标记
在您为 Kafka 抓取的作业中,您必须匹配要替换的指标名称和 use relabeling config:
metric_relabel_configs:
- source_labels: [topic]
regex: '[a-z_]+_([0-9]+)_.*'
action: replace
target_label: uniq
replacement:
然后添加删除标签的规则
- regex: 'topic'
action: droplabel
请求中重新标记
新标签是使用标签替换生成的:
label_replace(Kafka_log_size, "uniq", "", "topic", "[a-z_]+_([0-9]+)_.*")
然后,应用 aggregation operator 删除不需要的标签:
max(label_replace(Kafka_log_size, "uniq", "", "topic", "[a-z_]+_([0-9]+)_.*")) without(topic)