Prometheus配置metric relabel提取path标签值新增name标签问题
Prometheus relabel 规则提取标签值失效修复
场景说明
现有监控指标样例:
some_metric{path="test/name/bar/foo"}
需要从path标签值中提取bar字段,赋值给新增的name标签,最终输出指标格式为:
some_metric{path="test/name/bar/foo", name="bar"}
初始错误配置
最初在prometheus.yml中编写的relabel配置未达到预期效果,配置内容如下:
relabel_configs: - source_labels: [path] regex: "/test/name/(*.)/*." replacement: "$1" target_label: "name"
修复方法
按如下方式调整配置即可生效:
- 修正正则表达式:去掉正则开头多余的前导斜杠,修正捕获组语法,将
regex字段值改为test/name/(.*)/.* - 移除
replacement配置项:Prometheus relabel 规则的默认替换值就是$1,无需单独显式配置
调整后可正常运行的配置如下:
relabel_configs: - source_labels: [path] regex: "test/name/(.*)/.*" target_label: "name"
内容的提问来源于stack exchange,提问作者Renan Prata
相关产品推荐
相关产品推荐

