Назад | Перейти на главную страницу

Продвижение мета-тегов задач Nomad через consul в Prometheus

Мы используем Nomad для планирования задач, которые затем регистрируются в Consul, откуда они принимаются парсером Prometheus.

service.hcl:

job "myjob" {

group "mygroup" {
    count = "1"

    task "mytask" {
    driver = "docker"

    config {
        image = "registry/stuff:someVersion"
        port_map {
        http = 8080
        }
    }

    resources {
        memory = 1024
        network {
        mbits = 100
        port "http" {}
        }
    }

    meta {
        version = "0.0.1"
    }

    service {
        tags = ["monitoring", "tagone", "tagtwo"]
        port = "http"
        name = "${JOB}"
        check {
        type     = "http"
        port     = "http"
        path     = "/health"
        interval = "20s"
        timeout  = "3s"
        }
    }
    }
}
}                   

prometheus.yml:

scrape_configs:
- job_name: 'java_apps'
    consul_sd_configs:
    - server: "1.2.3.4:8500"
        scheme: "http"
    relabel_configs:
    - source_labels: ['__meta_consul_tags']
        regex: '(.*),monitoring,(.*)'
        action: keep
    - source_labels: ['__meta_consul_service']
        target_label: service
    metrics_path: /prometheus

Теперь мой вопрос: есть ли способ распространить значение meta ключи от service.hcl файл в Прометей? Согласно [документации Прометея |https://prometheus.io/docs/prometheus/latest/configuration/configuration/#],

Следующие мета-метки доступны для целей во время перемаркировки: ... __meta_consul_metadata_: каждое значение ключа метаданных цели

У меня двоякий вопрос: * Что именно считается метаданными для цели? * Как я могу размножить version ключ от meta строфа к Прометею для использования в качестве ярлыка?