From e52ddfe8caf7d0027950033a5aff2a1fd3482e9d Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期三, 01 六月 2022 17:50:25 +0800
Subject: [PATCH] 优化装修 跟踪记录 回显

---
 java110-core/src/main/java/com/java110/core/trace/Java110TraceLogAop.java |   46 +++++++++++++++++++++++++++-------------------
 1 files changed, 27 insertions(+), 19 deletions(-)

diff --git a/java110-core/src/main/java/com/java110/core/trace/Java110TraceLogAop.java b/java110-core/src/main/java/com/java110/core/trace/Java110TraceLogAop.java
index 4751fc2..5f53d2c 100644
--- a/java110-core/src/main/java/com/java110/core/trace/Java110TraceLogAop.java
+++ b/java110-core/src/main/java/com/java110/core/trace/Java110TraceLogAop.java
@@ -1,11 +1,13 @@
 package com.java110.core.trace;
 
 import com.alibaba.fastjson.JSONObject;
+import com.java110.core.log.LoggerFactory;
 import com.java110.dto.trace.TraceParamDto;
 import org.aspectj.lang.ProceedingJoinPoint;
 import org.aspectj.lang.annotation.Around;
 import org.aspectj.lang.annotation.Aspect;
 import org.aspectj.lang.annotation.Pointcut;
+import org.slf4j.Logger;
 import org.springframework.stereotype.Component;
 
 import javax.servlet.http.HttpServletRequest;
@@ -17,6 +19,7 @@
 @Component
 @Aspect
 public class Java110TraceLogAop {
+    private static Logger logger = LoggerFactory.getLogger(Java110FeignClientInterceptor.class);
 
     @Pointcut("@annotation(com.java110.core.trace.Java110TraceLog) || execution(public * com.java110..*.*InnerServiceSMOImpl.*(..))")
     public void dataProcess() {
@@ -29,28 +32,33 @@
         TraceParamDto traceParamDto = new TraceParamDto();
         JSONObject paramIn = new JSONObject();
         JSONObject paramOut = new JSONObject();
-
-        Object[] args = pjp.getArgs();
-        for (int paramIndex = 0; paramIndex < args.length; paramIndex++) {
-            if (args[paramIndex] instanceof HttpServletRequest) {
-                HttpServletRequest request = (HttpServletRequest) args[paramIndex];
-                paramIn.put("param" + paramIndex, request.getParameterMap());
-                continue;
+        try {
+            Object[] args = pjp.getArgs();
+            for (int paramIndex = 0; paramIndex < args.length; paramIndex++) {
+                if (args[paramIndex] instanceof HttpServletRequest) {
+//                HttpServletRequest request = (HttpServletRequest) args[paramIndex];
+//                paramIn.put("param" + paramIndex, request.getParameterMap());
+                    continue;
+                }
+                if (args[paramIndex] instanceof HttpServletResponse) {
+                    continue;
+                }
+                paramIn.put("param" + paramIndex, args[paramIndex]);
             }
-            if (args[paramIndex] instanceof HttpServletResponse) {
-                continue;
+            traceParamDto.setReqParam(paramIn.toJSONString());
+            out = pjp.proceed();
+        }catch (Exception e){
+            throw e;
+        }finally {
+            if (out != null) {
+                paramOut.put("param", out);
+            } else {
+                paramOut.put("param", new JSONObject());
             }
-            paramIn.put("param" + paramIndex, args[paramIndex]);
+            traceParamDto.setResParam(paramOut.toJSONString());
+            Java110TraceFactory.putParams(traceParamDto);
+            logger.debug("--Java110TraceLog---:{}", JSONObject.toJSONString(traceParamDto));
         }
-        traceParamDto.setReqParam(paramIn.toJSONString());
-        out = pjp.proceed();
-        if (paramOut != null) {
-            paramOut.put("param", out);
-        } else {
-            paramOut.put("param", new JSONObject());
-        }
-        traceParamDto.setResParam(paramOut.toJSONString());
-        Java110TraceFactory.putParams(traceParamDto);
         return out;
     }
 }

--
Gitblit v1.8.0