Ошибка разблокировки Prometheus file_sd_config yml

#yaml #prometheus

#yaml #prometheus

Вопрос:

Ошибка получения

 level=error ts=2020-08-23T17:24:34.036Z caller=file.go:323 component="discovery manager scrape" discovery=file msg="Error reading file" path=/etc/prometheus/prometheus.yml err="yaml: unmarshal errors:n  line 1: cannot unmarshal !!map into []*targetgroup.Group"
  

при попытке загрузить конфигурацию yml file_sd.

Prometheus yml является

 global:
  scrape_interval:     15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
  evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.

alerting:
  alertmanagers:
  - static_configs:
    - targets:

rule_files:

scrape_configs:
 - job_name: file
   file_sd_configs:
    - files:
       - '*.yml'
  

файл_sd_config является

 ---
- targets:
  - x.x.x.x:9100
  - x.x.x.x:9100
  - x.x.x.x:9100
  - x.x.x.x:9100
  labels:
    job: node
- targets:
  - x.x.x.x:9090
  labels:
    job: prometheus
  

(реальный ip запутан’ yml был преобразован из рабочего файла json_sd_config.

Комментарии:

1. Можете ли вы попробовать x.x.x.x: 9100 . Я думаю, что между значением , :, key должны быть пробелы

2. После целей следует простой список. Строка x.x.x.x:номер порта. Заключение элементов списка в кавычки приводит к той же ошибке

Ответ №1:

Проблема в prometheus.yml. Если указан файл json, то подстановочный знак будет работать. Мне пришлось добавить полное имя файла yml, чтобы он заработал

 global:
  scrape_interval:     15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
  evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.

alerting:
  alertmanagers:
  - static_configs:
    - targets:

rule_files:

scrape_configs:
 - job_name: file
   file_sd_configs:
    - files:
       - 'clients.yml'
  

Похоже на ошибку prometheus