自定义公共函数:
package com.yc.util;
import java.io.IOException;
import java.io.PrintWriter;
import java.io.StringWriter;
/**
* @author mclt2017
* @date 2021年07月05日 10:21
*/
public class MessageUtils {
/**
* 返回异常抛出的完整的错误信息
* @param e 异常
* @return 完整的异常信息
* */
public static String getErrMsg(Exception e){
StringWriter sw = null;
PrintWriter pw = null;
try {
sw = new StringWriter();
pw = new PrintWriter(sw);
e.printStackTrace(pw);
pw.flush();
sw.flush();
} finally {
if (sw != null) {
try {
sw.close();
} catch (IOException e1) {
e1.printStackTrace();
}
}
if (pw != null) {
pw.close();
}
}
return sw.toString();
}
}
保存至日志文件
try{
//业务逻辑....
}catch(Exception e){
logger.error(MessageUtils.getErrMsg(e);
}