From 5bac93baf5659ce013163f884c9dce41990a860e Mon Sep 17 00:00:00 2001
From: kimi42345 <kimi42345@outlook.com>
Date: 星期一, 23 三月 2020 08:49:41 +0800
Subject: [PATCH] no message

---
 src/main/java/com/highdatas/mdm/util/HttpTraceLogFilter.java |   25 +++++++++++++++++++------
 1 files changed, 19 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/highdatas/mdm/util/HttpTraceLogFilter.java b/src/main/java/com/highdatas/mdm/util/HttpTraceLogFilter.java
index a8c3a41..e83cc1f 100644
--- a/src/main/java/com/highdatas/mdm/util/HttpTraceLogFilter.java
+++ b/src/main/java/com/highdatas/mdm/util/HttpTraceLogFilter.java
@@ -1,6 +1,7 @@
 package com.highdatas.mdm.util;
 
 import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
 import lombok.Data;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.io.IOUtils;
@@ -31,7 +32,7 @@
 @Slf4j
 public class HttpTraceLogFilter extends OncePerRequestFilter implements Ordered {
 
-    private static final String NEED_TRACE_PATH_PREFIX = "/api";
+    private static final String UNNEED_TRACE_PATH_PREFIX = "/file";
     private static final String IGNORE_CONTENT_TYPE = "multipart/form-data";
 
 
@@ -61,9 +62,9 @@
             status = response.getStatus();
         } finally {
             String path = request.getRequestURI();
-            boolean isFilterPath = path.startsWith(NEED_TRACE_PATH_PREFIX);
-            isFilterPath = true;
-            if (isFilterPath) {
+            boolean isFilterPath = path.startsWith(UNNEED_TRACE_PATH_PREFIX);
+            isFilterPath  = true;
+            if (!isFilterPath) {
                 String requestBody = IOUtils.toString(request.getInputStream(), StandardCharsets.UTF_8.name());
                 log.info(requestBody);
                 //1. 璁板綍鏃ュ織
@@ -75,8 +76,20 @@
                 traceLog.setTime(LocalDateTime.now().toString());
                 traceLog.setParameterMap(JSON.toJSONString(request.getParameterMap()));
                 traceLog.setStatus(status);
+                traceLog.setUserIp( request.getRemoteAddr());
                 traceLog.setRequestBody(getRequestBody(request));
-                traceLog.setResponseBody(getResponseBody(response));
+                String responseBody = getResponseBody(response);
+                try{
+                    JSONObject jsonObject = JSONObject.parseObject(responseBody);
+                    if (jsonObject != null){
+                        traceLog.setResponseStatus(jsonObject.getString("success"));
+                    }
+                }
+                catch (Exception e){
+                    e.printStackTrace();
+                }
+
+//                traceLog.setResponseBody(responseBody);
                 log.info("Http trace log: {}", JSON.toJSONString(traceLog));
             }
             updateResponse(response);
@@ -136,6 +149,6 @@
         private String userId;
         private String userIp;
         private String urlId;
-        private String responseBody;
+        private String responseStatus;
     }
 }

--
Gitblit v1.8.0