在2台主机上安装了一个自定义导出程序,每个导出程序可以监视三个环境
我使用relabel_configs来确保每个环境使用合适的主机
但下面的部分导致了两个不同的作业名称(myJob_1和myJob_2(
- job_name: myJob_1
metrics_path: /probe
static_configs:
- targets: [ tld , tle, tlf ]
relabel_configs:
- source_labels: [__address__]
target_label: __param_target
- source_labels: [__param_target]
target_label: instance
- target_label: __address__
replacement: host1:8112
- job_name: myJob_2
metrics_path: /probe
static_configs:
- targets: [ tod , toe, tof]
relabel_configs:
- source_labels: [__address__]
target_label: __param_target
- source_labels: [__param_target]
target_label: instance
- target_label: __address__
replacement: host2:8112
是否有可能将不同的目标合并为一个作业?我不知道如何配置relabel_config部分来实现它。
- job_name: myJob
metrics_path: /probe
static_configs:
- targets: [ tld , tle, tlf ]
labels:
host: host1:8112
- targets: [ tod , toe, tof ]
labels:
host: host2:8112
relabel_configs:
- source_labels: [__address__]
target_label: __param_target
- source_labels: [__param_target]
target_label: instance
- target_label: __address__
replacement: ?????????????
(旧版普罗米修斯2.37.0(
我将感谢的任何反馈
尝试使用以下配置:
- job_name: myJob
metrics_path: /probe
static_configs:
- targets: [ tld , tle, tlf ]
labels:
host: host1:8112
- targets: [ tod , toe, tof ]
labels:
host: host2:8112
relabel_configs:
- source_labels: [__address__]
target_label: __param_target
- source_labels: [__param_target]
target_label: instance
- target_label: __address__
source_labels: [host]
它将标签host
放入标签__address__
中,因此Prometheus或vmagent根据每个static_config抓取host
标签中定义的地址。
请参阅这些文档中有关__address__
伪标签的更多详细信息。