public class MyExceptionUtil {
private static String localIp;
static{
try {
localIp=InetAddress.getLocalHost().getHostAddress();
} catch (UnknownHostException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
/**
* 获取异常详细信息,知道出了什么错,错在哪个类的第几行 .
*
* @param e
* @return
*/
public static String getExceptionDetail(Exception e) {
StringBuffer bf = new StringBuffer();
bf.append("异常信息:");
bf.append(e.getMessage());
bf.append("<br/>");//页面换行
StackTraceElement[] stackTraces = e.getStackTrace();
int i=0;
for (StackTraceElement trace : stackTraces) {
i++;
bf.append(trace.toString()).append("<br/>");
if(i>20){//最多打印20行就可以了
break;
}
}
//加上服务ip
if (StringUtils.isNotBlank(localIp)) {
bf.append(">>>>>>>>>>>>>>>from:【");
bf.append(localIp);
bf.append("】");
}
return bf.toString();
}
}