From c6b800e06b88e3183434575da60863974696be56 Mon Sep 17 00:00:00 2001 From: Francisco Sousa Date: Thu, 20 Jul 2023 12:31:47 -0300 Subject: [PATCH] fix: Log message don't respecting custom message value fix: Exclude params isn't working --- CHANGELOG.md | 5 ++++ .../com/leverinfo/logging/LoggingAspect.java | 30 ++++++++++--------- 2 files changed, 21 insertions(+), 14 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 483454a..5ad83da 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,11 @@ * Improvements on error logs +### Bug fixes + +* Log message don't respecting custom message value +* Exclude params isn't working + ## 0.3.1 ### Improvements diff --git a/src/main/java/br/com/leverinfo/logging/LoggingAspect.java b/src/main/java/br/com/leverinfo/logging/LoggingAspect.java index fc91bb1..d57a6eb 100644 --- a/src/main/java/br/com/leverinfo/logging/LoggingAspect.java +++ b/src/main/java/br/com/leverinfo/logging/LoggingAspect.java @@ -2,6 +2,7 @@ import java.lang.reflect.Method; import java.util.*; +import java.util.stream.Collectors; import org.aspectj.lang.JoinPoint; import org.aspectj.lang.ProceedingJoinPoint; import org.aspectj.lang.annotation.AfterThrowing; @@ -71,14 +72,13 @@ public void afterThrowing(JoinPoint joinPoint, Throwable error) { final Logging annotation = method.getAnnotation(Logging.class); if (annotation.logError()) { final String message = - getCustomMessage(joinPoint) - + String.format( - "%s errorType=%s class=%s method=%s(%s)", - error.getMessage(), - error.getClass().getSimpleName().replace("Exception", ""), - joinPoint.getTarget().getClass().getSimpleName(), - method.getName(), - buildArguments(joinPoint)); + String.format( + "%s errorType=%s class=%s method=%s(%s)", + error.getMessage(), + error.getClass().getSimpleName().replace("Exception", ""), + joinPoint.getTarget().getClass().getSimpleName(), + method.getName(), + buildArguments(joinPoint)); Level errorLevel = exceptionsLogLevels.getOrDefault(error.getClass(), Level.ERROR); if (annotation.logErrorTrace()) { @@ -139,9 +139,6 @@ private static MessageParams buildMessageParams( List messageParts = new ArrayList<>(); List messageValues = new ArrayList<>(); - messageParts.add("class={}"); - messageValues.add(joinPoint.getTarget().getClass().getSimpleName()); - messageParts.add("method={}({})"); messageValues.add(method.getName()); messageValues.add(buildArguments(joinPoint)); @@ -155,7 +152,9 @@ private static MessageParams buildMessageParams( messageValues.add(elapsed); return new MessageParams( - annotation.level(), String.join(" ", messageParts), messageValues.toArray()); + annotation.level(), + getCustomMessage(joinPoint) + String.join(" ", messageParts), + messageValues.toArray()); } private static String buildArguments(JoinPoint joinPoint) { @@ -168,8 +167,11 @@ private static String buildArguments(JoinPoint joinPoint) { arguments.add( signature.getParameterNames()[i] + "=" - + (Arrays.asList(annotation.excludeParams()).contains(i) - ? joinPoint.getArgs()[i].toString().replaceAll(".", "*") + + (Arrays.stream(annotation.excludeParams()) + .boxed() + .collect(Collectors.toList()) + .contains(i) + ? "********" : joinPoint.getArgs()[i])); } return String.join(", ", arguments);