|
|
|
@@ -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; |
|
|
|
} |
|
|
|
} |