Метрики Spring Boot http.client.requests не работают для реактивных приложений WebClient - PullRequest
0 голосов
/ 13 января 2020

У меня есть микросервисы с начальной загрузкой 2.2.2, которые интегрируются с другими сервисами, используя WebClient (rective). Согласно документации Spring, привод должен возвращать метрики «http.client.requests» по умолчанию, так как таймер включен по умолчанию. Но это не работает для меня. Я могу получить метрики http.server.requests ".

Мой WebClient - это компонент, настроенный и собранный с помощью WebClient.builder (), как описано здесь: https://docs.spring.io/spring-boot/docs/current/reference/html/production-ready-features.html#production -ready-metrics-http -clients

1 Ответ

1 голос
/ 19 февраля 2020

Используйте предварительно настроенный Spring Boot WebClient.Builder вместо WebClient.builder(), чтобы иметь экземпляр WebClient.

Подробнее вы можете найти здесь .

Как в дальнейшем вы можете иметь bean-компонент WebClient.

@Configuration
public class ClientConfiguration {

    @Bean
    public WebClient webClient(WebClient.Builder webClientBuilder) {
        return webClientBuilder
                .baseUrl("https://example.org")
                .build();
    }
}

WebClient.Builder - это автоконфигурация, означающая, что инжектированная точка выше получит вновь клонированный экземпляр компоновщика.

Здесь является источником WebClientAutoConfiguration

...