java:获取异常的堆栈信息
做java开发的时候,经常会遇到代码抛异常后,需要把异常信息保存到数据库或者上传到云服务器做cache分析。这时候就需要获取异常的堆栈信息(详细错误信息)。
有的人用e.getMessage()来获取异常信息,但是这样获取到的信息内容并不全,而且有时候为空。我们可以用下面方法来获取。
public static String getStackTrace(Throwable throwable) { StringWriter sw = new StringWriter(); PrintWriter pw = new PrintWriter(sw); try { throwable.printStackTrace(pw); return sw.toString(); } finally { pw.close(); } } ———————————————— 版权声明:本文为CSDN博主「卜可」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/q649381130/article/details/77182346
public static void test() { try { int i = 0; int m = 10 / i; } catch (Exception e) { System.out.println(e.getMessage()); System.out.println("------调皮的分割线------"); System.out.println(ExceptionUtil.getStackTrace(e)); } } ———————————————— 版权声明:本文为CSDN博主「死亡蔓延」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/weixin_43785508/article/details/122453671
我们看下打印结果: