|
|
@@ -4,7 +4,7 @@ import com.alibaba.fastjson.JSON;
|
|
|
import com.alibaba.fastjson.serializer.SerializerFeature;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import me.zhengjie.utils.IpAddressUtil;
|
|
|
-
|
|
|
+import org.springframework.web.multipart.support.StandardMultipartHttpServletRequest;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
import org.aspectj.lang.JoinPoint;
|
|
|
import org.aspectj.lang.Signature;
|
|
|
@@ -42,7 +42,7 @@ public class LogRequestParam {
|
|
|
return;
|
|
|
}
|
|
|
HttpServletRequest request = servletRequestAttributes.getRequest();
|
|
|
- //得到请求的ip地址
|
|
|
+ // 得到请求的ip地址
|
|
|
String ip = IpAddressUtil.getIpAddress(request);
|
|
|
|
|
|
String uri = request.getRequestURI();
|
|
|
@@ -62,16 +62,40 @@ public class LogRequestParam {
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
- Map<String, Object> params = new HashMap<>(4);
|
|
|
+ Map<Object, Object> params = new HashMap<>(4);
|
|
|
for (int i = 0; i < parameterNames.length; i++) {
|
|
|
- Object o = parameterNames[i];
|
|
|
- if (o instanceof MultipartFile || o instanceof MultipartFile[] || o instanceof HttpServletRequest
|
|
|
- || o instanceof HttpServletResponse) {
|
|
|
+ Object param = parameterNames[i];
|
|
|
+
|
|
|
+ Object value = parameterValues[i];
|
|
|
+ if (value == null || value instanceof HttpServletRequest || value instanceof HttpServletResponse) {
|
|
|
continue;
|
|
|
}
|
|
|
- params.put(parameterNames[i], parameterValues[i]);
|
|
|
+ if (value instanceof MultipartFile) {
|
|
|
+ MultipartFile part = (MultipartFile) value;
|
|
|
+ value = part.getOriginalFilename();
|
|
|
+ }
|
|
|
+ if (value instanceof MultipartFile[]) {
|
|
|
+ MultipartFile[] part = (MultipartFile[]) value;
|
|
|
+ StringBuffer sb = new StringBuffer();
|
|
|
+ for (MultipartFile file : part) {
|
|
|
+ sb.append(file.getOriginalFilename() + ",");
|
|
|
+ }
|
|
|
+ value = sb.toString();
|
|
|
+ }
|
|
|
+ if (value instanceof String) {
|
|
|
+ String str = (String) value;
|
|
|
+ if (str.length() > 1000) {
|
|
|
+ //去掉特别长的参数
|
|
|
+ value = str.substring(0, 1000);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // 记录上传的参数
|
|
|
+ params.put(param, value);
|
|
|
}
|
|
|
- Object[] obj = { ip, uri, JSON.toJSONString(params, SerializerFeature.WriteMapNullValue) };
|
|
|
+ String json = JSON.toJSONString(params, SerializerFeature.WriteMapNullValue);
|
|
|
+
|
|
|
+ // 这里判断
|
|
|
+ Object[] obj = { ip, uri, json };
|
|
|
log.info("[request] - ip: {} , requestUrl: {} ,param: {} ", obj);
|
|
|
} catch (Exception e) {
|
|
|
e.printStackTrace();
|
|
|
@@ -105,4 +129,5 @@ public class LogRequestParam {
|
|
|
e.printStackTrace();
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
}
|