X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=policy-agent%2Fsrc%2Fmain%2Fjava%2Forg%2Foransc%2Fpolicyagent%2Fclients%2FAsyncRestClient.java;h=f0b2ce339ff44daa588d7faa0f7d8bdb324bde24;hb=refs%2Fchanges%2F45%2F3445%2F3;hp=5110718da54eeee55714c57abbdfb10affabb1ee;hpb=2bfc144d136e8895aa5462cc331841a5d8107683;p=nonrtric.git diff --git a/policy-agent/src/main/java/org/oransc/policyagent/clients/AsyncRestClient.java b/policy-agent/src/main/java/org/oransc/policyagent/clients/AsyncRestClient.java index 5110718d..f0b2ce33 100644 --- a/policy-agent/src/main/java/org/oransc/policyagent/clients/AsyncRestClient.java +++ b/policy-agent/src/main/java/org/oransc/policyagent/clients/AsyncRestClient.java @@ -34,6 +34,7 @@ import org.springframework.http.client.reactive.ReactorClientHttpConnector; import org.springframework.lang.Nullable; import org.springframework.web.reactive.function.client.WebClient; import org.springframework.web.reactive.function.client.WebClient.RequestHeadersSpec; +import org.springframework.web.reactive.function.client.WebClientResponseException; import reactor.core.publisher.Mono; import reactor.netty.http.client.HttpClient; @@ -137,10 +138,21 @@ public class AsyncRestClient { private Mono> retrieve(RequestHeadersSpec request) { return request.retrieve() // - .toEntity(String.class); + .toEntity(String.class) // + .doOnError(this::onHttpError); } - Mono toBody(ResponseEntity entity) { + private void onHttpError(Throwable t) { + if (t instanceof WebClientResponseException) { + WebClientResponseException exception = (WebClientResponseException) t; + logger.debug("HTTP error status = '{}', body '{}'", exception.getStatusCode(), + exception.getResponseBodyAsString()); + } else { + logger.debug("HTTP error: {}", t.getMessage()); + } + } + + private Mono toBody(ResponseEntity entity) { if (entity.getBody() == null) { return Mono.just(""); } else {