/**
* @Desc: 拿到异常详细信息
* @param:
* @return:
* @author: cj
* @date: 2020/2/12 15:25
*/
public String getStackTrace(Throwable throwable) {
int max = 20000;
StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);
StringReader stringReader = null;
BufferedReader bufferedReader = null;
// BufferedInputStream bufferedInputStream = new BufferedInputStream(sw);
String line = null;
StringBuilder sb = new StringBuilder(2048);
try {
throwable.printStackTrace(pw);
bufferedReader = new BufferedReader(new StringReader(sw.toString()));
for (int i = 0; i < max; i++) {
line = bufferedReader.readLine();
if (line != null) {
sb.append(line).append(System.getProperty("line.separator"));
}else {
break;
}
}
return sb.toString();
} catch (Exception e) {
log.error("获取异常信息出错!!!",e);
} finally {
IoUtil.close(bufferedReader);
IoUtil.close(pw);
}
return "";
}
拿到打印堆栈前2000行
最新推荐文章于 2021-04-16 21:50:29 发布