From 3a602139b61be11bb9995b82ee8ed5527729323d Mon Sep 17 00:00:00 2001 From: yanglin Date: Fri, 27 Dec 2024 10:58:56 +0800 Subject: [PATCH] =?UTF-8?q?REQ-3201:=20=E8=AE=B0=E5=BD=95=E8=AF=B7?= =?UTF-8?q?=E6=B1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../message/service/card/CardRequestContext.java | 15 ++++++++++++++- .../message/service/card/log/CardLoggers.java | 3 +++ .../cn/axzo/msg/center/domain/entity/CardLog.java | 4 ++-- 3 files changed, 19 insertions(+), 3 deletions(-) diff --git a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/card/CardRequestContext.java b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/card/CardRequestContext.java index aa9a66e1..1155fb29 100644 --- a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/card/CardRequestContext.java +++ b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/card/CardRequestContext.java @@ -5,6 +5,9 @@ import lombok.AccessLevel; import lombok.Getter; import lombok.RequiredArgsConstructor; +import java.util.HashMap; +import java.util.Map; + /** * @author yanglin */ @@ -14,9 +17,19 @@ public class CardRequestContext { private final String batchNo = UUIDUtil.uuidString(); private final T request; + private final Map logContents = new HashMap<>(); public static CardRequestContext create(T request) { - return new CardRequestContext<>(request); + CardRequestContext context = new CardRequestContext<>(request); + context.addLogContent("request", request); + return context; + } + + public CardRequestContext addLogContent(String key, Object value) { + if (value == null ||logContents.containsKey(key)) + return this; + logContents.put(key, value); + return this; } } \ No newline at end of file diff --git a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/card/log/CardLoggers.java b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/card/log/CardLoggers.java index c53ce845..6f4ed1fd 100644 --- a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/card/log/CardLoggers.java +++ b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/card/log/CardLoggers.java @@ -14,6 +14,7 @@ import org.springframework.stereotype.Component; import java.util.ArrayList; import java.util.Collections; import java.util.List; +import java.util.Map; /** * @author yanglin @@ -72,6 +73,8 @@ public class CardLoggers { log.setError(exception == null ? "" : Throwables.getStackTraceAsString(exception)); log.addLogContent("request", requestContext.getRequest()); log.addLogContent("isCardDelete", card.getIsDelete()); + for (Map.Entry entry : requestContext.getLogContents().entrySet()) + log.addLogContent(entry.getKey(), entry.getValue()); } cardLogDao.saveBatch(logs); } diff --git a/msg-center-domain/src/main/java/cn/axzo/msg/center/domain/entity/CardLog.java b/msg-center-domain/src/main/java/cn/axzo/msg/center/domain/entity/CardLog.java index 7635569b..c883967c 100644 --- a/msg-center-domain/src/main/java/cn/axzo/msg/center/domain/entity/CardLog.java +++ b/msg-center-domain/src/main/java/cn/axzo/msg/center/domain/entity/CardLog.java @@ -124,10 +124,10 @@ public class CardLog extends BaseEntityExt { @TableField(typeHandler = IgnorePropsJsonTypeHandler.class) private Card.RecordExt recordExt; - public void addLogContent(String name, Object value) { + public void addLogContent(String key, Object value) { if (logContent == null) logContent = new JSONObject(); - logContent.put(name, value); + logContent.put(key, value); } @Setter