Skip to content

Commit 626f02d

Browse files
committed
Work around a bug present in JBoss Logging < 3.1
While we already fixed the issue in 3.17, we haven't backported the fix to 3.15 yet so let's introduce this workaround.
1 parent de48886 commit 626f02d

File tree

2 files changed

+18
-8
lines changed

2 files changed

+18
-8
lines changed

docs/modules/ROOT/pages/includes/attributes.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,4 @@
44
:github-api-javadoc-root-url: https://github-api.kohsuke.org/apidocs/org/kohsuke/github
55
:github-reference-documentation-root-url: https://docs.github.com/en/free-pro-team@latest/developers
66

7-
:command-airline-examples-dir: ./../examples/command/airline/
7+
:command-airline-examples-dir: ./../examples/command/airline/

runtime/src/main/java/io/quarkiverse/githubapp/runtime/error/DefaultErrorHandler.java

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package io.quarkiverse.githubapp.runtime.error;
22

3+
import java.util.ArrayList;
4+
import java.util.List;
35
import java.util.Optional;
46

57
import jakarta.enterprise.context.ApplicationScoped;
@@ -30,37 +32,45 @@ public class DefaultErrorHandler implements ErrorHandler {
3032
@Override
3133
public void handleError(GitHubEvent gitHubEvent, GHEventPayload payload, Throwable t) {
3234
StringBuilder errorMessage = new StringBuilder();
33-
errorMessage.append("Error handling delivery " + gitHubEvent.getDeliveryId() + "\n");
35+
List<String> errorMessageParameters = new ArrayList<>();
36+
37+
errorMessage.append("Error handling delivery {").append(errorMessageParameters.size()).append("}\n");
38+
errorMessageParameters.add(gitHubEvent.getDeliveryId());
3439
if (t instanceof ServiceDownException || t instanceof GitHubServiceDownException) {
3540
errorMessage
3641
.append("››› GitHub APIs are not available at the moment. Have a look at https://www.githubstatus.com.\n");
3742
}
3843
if (gitHubEvent.getRepository().isPresent()) {
39-
errorMessage.append("› Repository: " + gitHubEvent.getRepository().get() + "\n");
44+
errorMessage.append("› Repository: {").append(errorMessageParameters.size()).append("}\n");
45+
errorMessageParameters.add(gitHubEvent.getRepository().get());
4046
}
41-
errorMessage.append("› Event: " + gitHubEvent.getEventAction() + "\n");
47+
errorMessage.append("› Event: {").append(errorMessageParameters.size()).append("}\n");
48+
errorMessageParameters.add(gitHubEvent.getEventAction());
4249

4350
if (payload != null) {
4451
Optional<String> context = PayloadHelper.getContext(payload);
4552
if (context.isPresent()) {
46-
errorMessage.append("› Context: " + PayloadHelper.getContext(payload).get() + "\n");
53+
errorMessage.append("› Context: {").append(errorMessageParameters.size()).append("}\n");
54+
errorMessageParameters.add(PayloadHelper.getContext(payload).get());
4755
}
4856
}
4957

5058
if (gitHubEvent.getAppName().isPresent()) {
51-
errorMessage.append("› Redeliver: " + String.format(REDELIVERY_URL, gitHubEvent.getAppName().get()) + "\n");
59+
errorMessage.append("› Redeliver: {").append(errorMessageParameters.size()).append("}\n");
60+
errorMessageParameters.add(String.format(REDELIVERY_URL, gitHubEvent.getAppName().get()));
5261
}
5362

5463
if (launchMode.isDevOrTest()) {
5564
errorMessage.append("› Payload:\n")
5665
.append("----\n")
57-
.append(gitHubEvent.getParsedPayload().encodePrettily()).append("\n")
66+
.append("{").append(errorMessageParameters.size()).append("}\n")
5867
.append("----\n");
68+
errorMessageParameters.add(gitHubEvent.getParsedPayload().encodePrettily());
5969
}
6070

6171
errorMessage.append("Exception");
6272

63-
LOG.error(errorMessage.toString(), t);
73+
LOG.errorv(t, errorMessage.toString(), errorMessageParameters.toArray());
6474
}
6575

6676
}

0 commit comments

Comments
 (0)