Весенняя паутина и егеря - PullRequest
0 голосов
/ 30 апреля 2020

Я использую Jager для отслеживания моего весеннего загрузочного веб-сервиса. Но поскольку у нас есть веб-клиент (асинхронные) вызовы в нисходящих системах, jaeger не может его отследить. Я пытался идти по весеннему маршруту, но когда я вижу следы, они просто отображаются как «asyn c» в пользовательском интерфейсе jaeger и никаких других деталей. Мне было интересно, как я могу получить дополнительные сведения, такие как URL, на который был сделан вызов asyn c.

Вызов веб-клиента -

public Mono<SomeRestResponse> makeWebClientCall(
            SomeConfigDetails someConfigDetails, String accountId, HttpHeaders headers) {
           String url = domainBankApi + someConfigDetails.getRestUri();
            return this.webClient
                    .get()
                    .uri(someConfigDetails.getRestURI(), accountId)
                    .headers(httpsHeaders -> httpsHeaders.putAll(headers))
                    .retrieve()
                    .onStatus(
                            HttpStatus::isError,
                            clientResponse -> {
                                if (clientResponse.statusCode() != HttpStatus.NOT_FOUND) {
                                    log.error(
                                            String.format(
                                                    "WebClient Error: %s, URI: %s",
                                                    clientResponse.statusCode(), url));
                                }
                                return Mono.empty();
                            })
                    .bodyToMono(SomeRestResponse.class)
                    .timeout(Duration.ofMillis(Long.valueOf(someConfigDetails.getRestTimeoutMS())))
                    .onErrorResume(
                            e -> {
                                log.error(
                                        String.format(
                                                "WebClient Error: %s, URI: %s", e.toString(), url),
                                        e);
                                return Mono.empty();
                            });
            }

Jaeger - введите описание изображения здесь

...