wangliang %!s(int64=2) %!d(string=hai) anos
pai
achega
717d5834b8

+ 1 - 1
teachcloud-common/src/main/java/com/qmth/teachcloud/common/contant/SystemConstant.java

@@ -277,7 +277,7 @@ public class SystemConstant {
     public static final String TASK_MACHINE_ID = "task_machine_id:";//任务机器id
     public static final String TASK_MACHINE_ID_LIKE = "task_machine_id*";//任务机器like
 
-    public static final String LOG_ERROR = "请求出错:";
+    public static final String LOG_ERROR = "请求出错:{}";
 
     /**
      * http设置

+ 20 - 1
teachcloud-common/src/main/java/com/qmth/teachcloud/common/enums/ExceptionResultEnum.java

@@ -1,8 +1,15 @@
 package com.qmth.teachcloud.common.enums;
 
 import com.qmth.boot.api.exception.ApiException;
+import com.qmth.teachcloud.common.contant.SystemConstant;
+import com.qmth.teachcloud.common.util.ServletUtil;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.http.HttpStatus;
 
+import javax.servlet.http.HttpServletRequest;
+import java.util.StringJoiner;
+
 /**
  * @Description: 自定义异常消息枚举
  * @Param:
@@ -85,7 +92,7 @@ public enum ExceptionResultEnum {
 
     SYNC_TASK_NO_DATA(HttpStatus.INTERNAL_SERVER_ERROR, 5000033, "同步任务不存在"),
 
-    PAPER_STRUCT_EXCEPTION(HttpStatus.INTERNAL_SERVER_ERROR,5100003,"试卷结构不一致"),
+    PAPER_STRUCT_EXCEPTION(HttpStatus.INTERNAL_SERVER_ERROR, 5100003, "试卷结构不一致"),
 
     /**
      * 401
@@ -145,7 +152,19 @@ public enum ExceptionResultEnum {
         return new ApiException(status, code, message, message);
     }
 
+    private final static Logger log = LoggerFactory.getLogger(ExceptionResultEnum.class);
+
     public ApiException exception(String message) {
+        try {
+            StringJoiner stringJoiner = new StringJoiner("");
+            HttpServletRequest request = ServletUtil.getRequest();
+            stringJoiner.add("[error path]:").add(request.getServletPath()).add("\r\n");
+            stringJoiner.add("[status]:").add(String.valueOf(status.value())).add("\r\n");
+            stringJoiner.add("[code]:").add(String.valueOf(code)).add("\r\n");
+            stringJoiner.add("[message]:").add(message);
+            log.error(SystemConstant.LOG_ERROR, stringJoiner.toString());
+        } catch (Exception e) {
+        }
         return new ApiException(status, code, message, message);
     }
 }

+ 15 - 0
teachcloud-common/src/main/java/com/qmth/teachcloud/common/util/ResultUtil.java

@@ -4,8 +4,12 @@ import cn.hutool.http.HttpStatus;
 import com.qmth.boot.api.exception.ApiException;
 import com.qmth.teachcloud.common.contant.SystemConstant;
 import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
+import javax.servlet.http.HttpServletRequest;
 import java.util.Collections;
+import java.util.StringJoiner;
 
 /**
  * @Description: 自定义消息工具
@@ -15,6 +19,7 @@ import java.util.Collections;
  * @Date: 2019/10/11
  */
 public class ResultUtil {
+    private final static Logger log = LoggerFactory.getLogger(ResultUtil.class);
 
     public static Result success(Object object) {
         return new Result(ExceptionResultEnum.SUCCESS.getStatus().value(), ExceptionResultEnum.SUCCESS.getMessage(), object);
@@ -33,6 +38,16 @@ public class ResultUtil {
     }
 
     public static Result error(ApiException e, String message) {
+        try {
+            StringJoiner stringJoiner = new StringJoiner("");
+            HttpServletRequest request = ServletUtil.getRequest();
+            stringJoiner.add("[error path]:").add(request.getServletPath()).add("\r\n");
+            stringJoiner.add("[status]:").add(String.valueOf(e.getStatus().value())).add("\r\n");
+            stringJoiner.add("[code]:").add(String.valueOf(e.getCode())).add("\r\n");
+            stringJoiner.add("[message]:").add(message);
+            log.error(SystemConstant.LOG_ERROR, stringJoiner.toString());
+        } catch (Exception e1) {
+        }
         throw new ApiException(e.getStatus(), e.getCode(), message, message);
     }