From fef3ac0ed4d674bc0ef9cba2a0a879fab1ded9ab Mon Sep 17 00:00:00 2001 From: Stormeye Wu Date: Sat, 29 Dec 2018 10:21:55 +0800 Subject: [PATCH] =?UTF-8?q?[=E9=87=8D=E5=A4=8D=E6=93=8D=E4=BD=9C=E5=BC=82?= =?UTF-8?q?=E5=B8=B8=E5=A4=84=E7=90=86][=E4=BF=AE=E6=94=B9]:=E9=87=8D?= =?UTF-8?q?=E5=A4=8D=E6=93=8D=E4=BD=9C=E5=BC=82=E5=B8=B8=E4=B8=8D=E5=86=8D?= =?UTF-8?q?=E5=8F=91email=EF=BC=8C=E4=B9=9F=E4=B8=8D=E6=89=93=E5=8D=B0?= =?UTF-8?q?=E5=A0=86=E6=A0=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/GlobalDefultExceptionHandler.java | 31 +++++++++++++++---- 1 file changed, 25 insertions(+), 6 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/common/GlobalDefultExceptionHandler.java b/mallinkService/src/main/java/com/iformall/common/GlobalDefultExceptionHandler.java index 331c6267d..c92bde582 100644 --- a/mallinkService/src/main/java/com/iformall/common/GlobalDefultExceptionHandler.java +++ b/mallinkService/src/main/java/com/iformall/common/GlobalDefultExceptionHandler.java @@ -34,13 +34,11 @@ public class GlobalDefultExceptionHandler { log(e, request); if(isFmException) { - if(e instanceof MallinkException) { + // 处理异常,发送邮件 + if(checkExceptionType(e)) { + // 某些异常不发邮件 MallinkException me = (MallinkException)e; - if(me.getErrorCode() == ErrorCode.NET_TOKEN_EMPTY.getCode() - || me.getErrorCode() == ErrorCode.NET_TOKEN_INVALID.getCode()) { - // token异常问题, 不发邮件 - return new ResultData(me.getErrorCode(),me.getMessage()); - } + return new ResultData(me.getErrorCode(),me.getMessage()); } StringWriter sw = new StringWriter(); PrintWriter pw = new PrintWriter(sw); @@ -66,6 +64,12 @@ public class GlobalDefultExceptionHandler { private void log(Exception ex, HttpServletRequest request) { logger.error("************************异常开始*******************************"); + if(checkExceptionType(ex)) { + // 特殊异常不打印堆栈 + logger.error(ex.getMessage()); + logger.error("************************异常结束*******************************"); + return; + } logger.error("请求地址:" + request.getRequestURL()); Enumeration enumeration = request.getParameterNames(); logger.error("请求参数"); @@ -80,4 +84,19 @@ public class GlobalDefultExceptionHandler { } logger.error("************************异常结束*******************************"); } + + private boolean checkExceptionType(Exception e) { + if(e instanceof MallinkException) { + MallinkException me = (MallinkException)e; + if(me.getErrorCode() == ErrorCode.NET_TOKEN_EMPTY.getCode() + || me.getErrorCode() == ErrorCode.NET_TOKEN_INVALID.getCode()) { + // token异常问题, 不发邮件 + return true; + } else if(me.getErrorCode() == ErrorCode.SYS_REPEAT_SUBMIT_EXCEPTION.getCode()) { + // 重复访问不打印异常消息 + return true; + } + } + return false; + } }