У нас есть несколько экземпляров Prometheus, работающих в центрах обработки данных (я буду называть их экземплярами DC Prometheus), и один дополнительный экземпляр Prometheus (назовем его «основным» в следующем тексте), где мы собираем метрики из экземпляров DC Prometheus с помощью используя функцию федерации.
Главный Prometheus извлекает значения {job = 'prometheus'} из себя, но также и из экземпляров DC Prometheus (каждое извлечение с localhost: 9090).
Проблема в том, что Main prometheus жалуется на вышедшие из строя образцы:
ПРЕДУПРЕЖДЕНИЕ [1585] Ошибка при загрузке образцов с нарушением порядка numDropped = 369 source = target.go: 475 target = dc1-prometheus: 443
Я обнаружил, что это из-за включения {job="prometheus"}
в параметр 'match []'.
Я пытаюсь решить эту проблему путем переназначения ярлыка, но когда я пытаюсь использовать один DC Prometheus и постоянную замену, я не могу заставить его работать (я все еще получаю ошибку образцов вне порядка), и я не Даже не знаю, что использовать в качестве замены при использовании нескольких мишеней.
- job_name: 'federate'
scrape_interval: 15s
honor_labels: true
metrics_path: '/prometheus/federate'
scheme: 'https'
params:
'match[]':
- '{job="some-jobs-here..."}'
- '{job="prometheus"}'
relabel_configs:
- source_labels: ['instance']
target_label: 'instance'
regex: 'localhost:9090'
replacement: '??' # I've tried with 'dc1-prometheus:9090' and single target only.. no luck
target_groups:
- targets:
- 'dc1-prometheus'
- 'dc2-prometheus'
- 'dc3-prometheus'
Мой вопрос в том, как использовать relabel_configs, чтобы избавиться от ошибки не по порядку. Я везде использую Прометей 0.17.