promtheus对metrics修改label

在Prometheus监控中,为了使metrics更具语义性,通常需要在exporter获取metrics时添加或修改label。通过file_sd_configs可以方便地在静态配置中操作,但在kubernetes_sd_configs场景下,labels属性无法直接应用。此时,可以利用metric_relabel_configs进行metrics的label重命名和添加,例如将container_name转换为container,同时保留原有label,从而明确metrics的环境和IDC信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

很多exporter的metrics的label不完整或语义不详,造成在prometheus显示的时候难以明白其metrics的具体含义。因此有必要在获取metrics的时候对metrics增加一些label,表明该metrics的具体含义。
例如:

kube_pod_container_resource_requests_cpu_cores{container="autoscaler",env="dev",idc="ali",instance="xx.xx.xx.xx:30101",job="kube-state-metrics",namespace="kube-system",node="k8s-master01-demo.ali.xxx.io",pod="dns-autoscaler-7f666fb487-v2c28"}

在该metrics中增加了env和idc两个label,指明该metric来自环境以及idc。
但上述添加label,prometheus配置文件中的target只能通过file_sd_configs中添加。
在正对k8s集群监控中,一般采用kubernetes_sd_configs对k8s集群做服务发现,这个时候在file_sd_configs起作用的labels属性就不能起作用。
在这种情况下,使用metric_relabel_configs:

metric_relabel_configs:
      - source_labels: [container_name]
        target_label: container
        action: replace
      - source_labels: [pod_name]
        target_label: pod
        action: replace

metric_relabel_configs使metrics中已有的label重新命名,保留原有的label,并将新的label添加到metrics中。
在上面例子中:
source_labels:为metri

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值