在Prometheus中添加标签可以采用Relabel Config的方式,通过在配置文件中编写relabel_config模块来定义要给哪些目标添加标签,该模块可以实现筛选、替换、修剪、添加等不同的转换操作。 下面是一个添加标签的例子,该例子将添加标签"env: staging"来表示指标来自于测试环境:
scrape_configs:
- job_name: 'example'
static_configs:
- targets:
- example.com
metric_relabel_configs:
- source_labels: [__address__]
regex: example\.com
replacement: $1
target_label: instance
#添加新的标签
- source_labels: []
regex: ''
target_label: env
replacement: 'staging'
source_labels: []
意味着这个re_label不会有任何来源的标签。regex: ''
指定一个空的正则表达式,以允许target_label接收固定字符串"staging"。replacement
接收该值并将其放入target_label"env"中的目标实例上。regex: example\.com
将源实例标签__address__=example.com
的值保存为$1。replacement: $1
将更新的目标实例的标签instance 将原始源名称保留在目标标签instance中,以便能够更好地区分不同的目标。
最后,重新加载Prometheus配置或重启Prometheus,以确保Prometheus已经加载了新的配置文件。