Я пытаюсь интегрировать микрометр в приложение Spring, созданное с использованием Jersey REST. Я использую Spring Boot 1.5.
Когда у меня есть чистые API-интерфейсы Spring REST (с использованием веб-аннотаций Spring), результаты prometheus отображаются, как показано ниже
http_server_requests_seconds_count{exception="None",method="GET",status="200",uri="/v2/api/greeting/{name}",} 18.0
http_server_requests_seconds_sum{exception="None",method="GET",status="200",uri="/v2/api/greeting/{name}",} 0.39309228
Но для API, созданных с использованием Джерси, метрики Prometheus не являются шаблонными.
http_server_requests_seconds_count{exception="None",method="GET",status="200",uri="/v1/api/greeting/Jersey_1",} 1.0
http_server_requests_seconds_sum{exception="None",method="GET",status="200",uri="/v1/api/greeting/Jersey_1",} 0.043685372
http_server_requests_seconds_count{exception="None",method="GET",status="200",uri="/v1/api/greeting/Jersey_2",} 1.0
http_server_requests_seconds_sum{exception="None",method="GET",status="200",uri="/v1/api/greeting/Jersey_2",} 0.006280183
http_server_requests_seconds_count{exception="None",method="GET",status="200",uri="/v1/api/greeting/Jersey_3",} 1.0
http_server_requests_seconds_sum{exception="None",method="GET",status="200",uri="/v1/api/greeting/Jersey_3",} 0.006258448
http_server_requests_seconds_count{exception="None",method="GET",status="200",uri="/v1/api/greeting/Jersey_4",} 1.0
http_server_requests_seconds_sum{exception="None",method="GET",status="200",uri="/v1/api/greeting/Jersey_4",} 0.006635791
http_server_requests_seconds_count{exception="None",method="GET",status="200",uri="/v1/api/greeting/Jersey_5",} 1.0
http_server_requests_seconds_sum{exception="None",method="GET",status="200",uri="/v1/api/greeting/Jersey_5",} 0.006313993
Похоже, есть открытая проблема с микрометром, указанным на https://github.com/micrometer-metrics/micrometer/issues/486, который вызывает эту проблему с джерси. Средство указано на странице https://github.com/micrometer-metrics/micrometer/issues/486#issuecomment-372446968. Когда я добавляю spring.jersey.type = filter, ни один из API-интерфейсов актуатора не работает. Ни одна из конечных точек прометея не работает.
Я не хочу, чтобы URL-адреса без шаблона появлялись в конечной точке Prometheus. Поскольку мой API может иметь бесконечно много комбинаций (много имен в приведенных выше примерах), он будет создавать большие данные метрик, и, в свою очередь, сервер prometheus будет иметь тонны метрик.
Любая помощь здесь приветствуется.