Log full exception when we are missing errors 75/96975/1
authorRobert Varga <robert.varga@pantheon.tech>
Tue, 20 Jul 2021 11:09:07 +0000 (13:09 +0200)
committerRobert Varga <robert.varga@pantheon.tech>
Wed, 21 Jul 2021 12:42:09 +0000 (14:42 +0200)
Our current logging does not identify the source of the offending
exception. Make sure we log the entire input exception, so that
offenders may be fixed up.

JIRA: NETCONF-789
Change-Id: I30a24a615ce221a838e1ad95f6b11263e2d6f8f5
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit 8dc035c90ba706efceb66ced5fa51408b4c494f9)

restconf/restconf-nb-rfc8040/src/main/java/org/opendaylight/restconf/nb/rfc8040/jersey/providers/errors/RestconfDocumentedExceptionMapper.java

index 2f525b81f7841377975c022cb71692cabe251b36..8dfafd78b2c39b4305a582304c5a1ec198b29aba 100644 (file)
@@ -96,10 +96,9 @@ public final class RestconfDocumentedExceptionMapper implements ExceptionMapper<
         if (responseStatus != Response.Status.FORBIDDEN
                 && responseStatus.getFamily() == Response.Status.Family.CLIENT_ERROR
                 && exception.getErrors().isEmpty()) {
-            // there should be at least one error entry for 4xx errors except 409 according to the RFC 8040
-            // - creation of WARN log that something went wrong way on the server side
-            LOG.warn("Input exception has a family of 4xx but doesn't contain any descriptive errors: {}",
-                    exception.getMessage());
+            // There should be at least one error entry for 4xx errors except 409 according to RFC8040, but we do not
+            // have it. Issue a warning with the call trace so we can fix whoever was the originator.
+            LOG.warn("Input exception has a family of 4xx but does not contain any descriptive errors", exception);
         }
 
         final ContainerNode errorsContainer = buildErrorsContainer(exception);
@@ -384,4 +383,4 @@ public final class RestconfDocumentedExceptionMapper implements ExceptionMapper<
     void setHttpHeaders(final HttpHeaders httpHeaders) {
         this.headers = httpHeaders;
     }
-}
\ No newline at end of file
+}