Skip to content

Commit b019752

Browse files
authored
Improve logging for RetryListener (#31)
1 parent bea3b53 commit b019752

File tree

1 file changed

+15
-3
lines changed

1 file changed

+15
-3
lines changed

src/main/java/no/ssb/guardian/RetryListener.java

+15-3
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,28 @@
55
import io.micronaut.retry.event.RetryEventListener;
66
import jakarta.inject.Singleton;
77
import lombok.extern.slf4j.Slf4j;
8+
import no.ssb.guardian.core.util.PrincipalUtil;
9+
10+
import java.security.Principal;
811

912
@Slf4j
1013
@Singleton
1114
public class RetryListener implements RetryEventListener {
1215
@Override
1316
public void onApplicationEvent(RetryEvent event) {
17+
final MutableArgumentValue<?> principal = event.getSource().getParameters().get("principal");
1418
final MutableArgumentValue<?> request = event.getSource().getParameters().get("request");
15-
log.error("Request failed {} time(s) for {}:", event.getRetryState().currentAttempt(),
16-
request != null ? request.getValue(): "<empty request>",
17-
event.getThrowable());
19+
if (event.getRetryState().currentAttempt() < 3) {
20+
log.warn("Request failed {} time(s) for {} and principal {}:", event.getRetryState().currentAttempt(),
21+
request != null ? request.getValue(): "<empty request>",
22+
principal != null ? PrincipalUtil.auditInfoOf((Principal) principal.getValue()): "<empty principal>",
23+
event.getThrowable());
24+
} else {
25+
log.error("Request failed {} time(s) for {} and principal {}:", event.getRetryState().currentAttempt(),
26+
request != null ? request.getValue(): "<empty request>",
27+
principal != null ? PrincipalUtil.auditInfoOf((Principal) principal.getValue()): "<empty principal>",
28+
event.getThrowable());
29+
}
1830
}
1931

2032
@Override

0 commit comments

Comments
 (0)