#java #spring-boot #micrometer #spring-micrometer
#java #весенняя загрузка #микрометр #пружина-микрометр
Вопрос:
Я использую MeterReigstry для отправки метрик для опроса Prometheus. Однако, когда я добавляю динамические теги, я получаю следующее исключение:
java.lang.IllegalArgumentException: Prometheus requires that all meters with the same name have the same set of tag keys. There is already an existing meter named 'execution_time_seconds' containing tag keys [a, e, b, c, d]. The meter you are attempting to register has keys [a, b, c, d, f].
Что является причиной этого? Как это можно решить? Я использую
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-spring-legacy</artifactId>
<version>1.3.2</version>
</dependency>
Ответ №1:
Я считаю, что это ограничение от базового клиента prometheus. Все измерения одной метрики должны иметь одинаковый набор тегов.
https://github.com/micrometer-metrics/micrometer/issues/877#issuecomment-425102772
Решением было бы гарантировать, что все измерения этой метрики содержат один и тот же набор тегов. Если это не вариант, вы можете рассмотреть возможность использования другого серверной части metrics.