Browse Source

TbHttpClient: Add cause to metadata in cause of buffer overloaded exception

pull/11500/head
Volodymyr Babak 2 years ago
parent
commit
02dcf142df
  1. 5
      rule-engine/rule-engine-components/src/main/java/org/thingsboard/rule/engine/rest/TbHttpClient.java

5
rule-engine/rule-engine-components/src/main/java/org/thingsboard/rule/engine/rest/TbHttpClient.java

@ -132,7 +132,7 @@ public class TbHttpClient {
this.webClient = WebClient.builder()
.clientConnector(new ReactorClientHttpConnector(httpClient))
.defaultHeader(HttpHeaders.CONNECTION, "close") //In previous realization this header was present! (Added for hotfix "Connection reset")
.codecs(clientCodecConfigurer -> clientCodecConfigurer.defaultCodecs().maxInMemorySize(config.getMaxInMemoryBufferSizeInKb() * 1024))
.codecs(configurer -> configurer.defaultCodecs().maxInMemorySize(config.getMaxInMemoryBufferSizeInKb() * 1024))
.build();
} catch (SSLException e) {
throw new TbNodeException(e);
@ -286,6 +286,9 @@ public class TbHttpClient {
metaData.putValue(STATUS, restClientResponseException.getStatusText());
metaData.putValue(STATUS_CODE, restClientResponseException.getStatusCode().value() + "");
metaData.putValue(ERROR_BODY, restClientResponseException.getResponseBodyAsString());
if (restClientResponseException.getStatusCode().is2xxSuccessful()) {
metaData.putValue(ERROR, metaData.getValue(ERROR) + ". Cause: " +restClientResponseException.getCause().getMessage());
}
}
return TbMsg.transformMsgMetadata(origMsg, metaData);
}

Loading…
Cancel
Save