我正在尝试配置我的Otel收集器,使其只从具有注释prometheus.io/scrape=true的荚中提取度量,但是度量标准正在从将注释设置为prometheus.io/scrape=false的pod中刮取。我很难理解下面的配置有什么问题。OTEL收集器日志中没有任何信息(设置为调试)。
receivers:
prometheus:
config:
scrape_configs:
- job_name: 'otel-collector-k8s-pods'
scrape_interval: 30s
scrape_timeout: 2s
kubernetes_sd_configs:
- role: pod
tls_config:
insecure_skip_verify: true
relabel_configs:
- source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scrape]
action: keep
regex: true
- source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scheme]
action: replace
target_label: __scheme__
regex: (https?)
- source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_path]
action: replace
target_label: __metrics_path__
regex: (.+)
- source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port]
action: replace
target_label: __address__
regex: (.+)(?::\d+);(\d+)
replacement: $1:$2
- action: labelmap
regex: __meta_kubernetes_pod_label_(.+)
- source_labels: [__meta_kubernetes_namespace]
action: replace
target_label: namespace
- source_labels: [__meta_kubernetes_host_name]
action: replace
target_label: kubernetes_pod_name发布于 2022-09-11 21:21:54
我已经设置了一个简单的测试,一个用注释prometheus.io/scrape: 'true'运行,另一个用prometheus.io/scrape: 'false'运行
指标只从刮擦设置为真的荚中读取。

当我为第二个pod设置刮擦时,度量开始出现,这意味着注释起作用了。

我用的是更简单的配置。也许在重新命名的过程中,有些东西在你的配置中被弄乱了。
试着加入一个又一个的秘密,看看谁是罪魁祸首。下面是工作配置:
prometheus:
config:
scrape_configs:
- job_name: opentelemetry-collector
scrape_interval: 10s
static_configs:
- targets:
- ${MY_POD_IP}:8888
- job_name: k8s
kubernetes_sd_configs:
- role: pod
relabel_configs:
- source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scrape]
regex: "true"
action: keep

P.S.使用Opentelem遥测-收集器-0.30.0舵图
https://stackoverflow.com/questions/73650376
复制相似问题