From 087b8cb30e6d3f9ac06e927f56137f95ac054aa6 Mon Sep 17 00:00:00 2001 From: c3p0-maif <69896961+c3p0-maif@users.noreply.github.com> Date: Wed, 11 Jan 2023 12:53:15 +0100 Subject: [PATCH] Add logs in GitHubClient response. fix #1594 --- .../java/org/kohsuke/github/GitHubClient.java | 20 +++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/kohsuke/github/GitHubClient.java b/src/main/java/org/kohsuke/github/GitHubClient.java index 73491d148d..1011a0a9bf 100644 --- a/src/main/java/org/kohsuke/github/GitHubClient.java +++ b/src/main/java/org/kohsuke/github/GitHubClient.java @@ -430,6 +430,7 @@ public GitHubResponse sendRequest(GitHubRequest request, @CheckForNull Bo logRequest(connectorRequest); rateLimitChecker.checkRateLimit(this, request.rateLimitTarget()); connectorResponse = connector.send(connectorRequest); + logResponse(connectorResponse); noteRateLimit(request.rateLimitTarget(), connectorResponse); detectKnownErrors(connectorResponse, request, handler != null); return createResponse(connectorResponse, handler); @@ -520,8 +521,23 @@ private GitHubConnectorRequest prepareConnectorRequest(GitHubRequest request) th private void logRequest(@Nonnull final GitHubConnectorRequest request) { LOGGER.log(FINE, - () -> "GitHub API request [" + (getLogin() == null ? "anonymous" : getLogin()) + "]: " - + request.method() + " " + request.url().toString()); + () -> String.format("(%s) GitHub API request [%s]: %s", + Integer.toHexString(request.hashCode()), + (getLogin() == null ? "anonymous" : getLogin()), + (request.method() + " " + request.url().toString()))); + } + + private void logResponse(@Nonnull final GitHubConnectorResponse response) { + LOGGER.log(FINE, () -> { + try { + return String.format("(%s) GitHub API response [%s]: %s", + Integer.toHexString(response.request().hashCode()), + (getLogin() == null ? "anonymous" : getLogin()), + (response.statusCode() + " " + GitHubResponse.getBodyAsString(response))); + } catch (IOException e) { + throw new RuntimeException(e); + } + }); } @Nonnull