Spring PushGateway отправляет метрики без тега экземпляра
Вот мой конфиг:
management.metrics.export.prometheus=true
management.metrics.export.prometheus.pushgateway.enabled=true
management.metrics.export.prometheus.pushgateway.push-rate=1m
management.metrics.export.prometheus.pushgateway.base-url=<IP>:9091
management.metrics.export.prometheus.pushgateway.job=myjob
Глядя на <IP>:9091/metrics
конечная точка PushGateway, я вижу следующие теги:
{instance="",job="myjob"}
В идеале я бы хотел, чтобы этот "экземпляр" был IP-адресом и портом работающей службы.
Стоит отметить, что я использовал honor_labels: true
в Promethoues conf.
Как я могу установить (если возможно, автоматически) тег экземпляра?
Спасибо
1 ответ
Решение
Следующее - установка его как ключ-значение в карте группирующих ключей - должно помочь:
management.metrics.export.prometheus.pushgateway.grouping-key.instance=${hostname:localhost}:${server.port}
Вам не обязательно устанавливать свойство "job", поскольку оно получено из spring.application.name
а затем запасной вариант. Смотрите здесь.