美文网首页美丽的爪哇岛
从异常类中获取异常堆栈的全部信息

从异常类中获取异常堆栈的全部信息

作者: begonia_rich | 来源:发表于2018-05-31 17:50 被阅读13次

一般要打印异常堆栈到日志中都是使用logger.error("message",e)这样来打印的,看了一下里面的实现,实际上是将异常的堆栈信息print到StringWriter然后又转到了logger.error(message)中,这里记录一下,方便以后自定义异常堆栈信息到指定位置

    @Test
    public void testPrintStackTrace(){

        StringWriter buffer = new StringWriter();
        PrintWriter out = new PrintWriter(buffer);
        new RuntimeException("fake runtime exception!").printStackTrace(out);

        System.out.println(buffer);
    }

很多时候需要自定义异常的输出位置,这个方法还是很常用的.

相关文章

  • 从异常类中获取异常堆栈的全部信息

    一般要打印异常堆栈到日志中都是使用logger.error("message",e)这样来打印的,看了一下里面的实...

  • SpringMvc异常处理机制

    系统中异常包括两类:预期异常和运行时异常RuntimeException,前者通过捕获异常从而获取异常信息,后者主...

  • 24.Kotlin异常详解

    Kotlin异常详解 Kotlin 中所有异常类都是 Throwable 类的子孙类。 每个异常都有消息、堆栈回溯...

  • 项目常见崩溃7(陆续更新)

    今天介绍一个和循环引用很相似的容器类的问题. 崩溃堆栈 异常信息如下 从异常信息上来看是访问一个已经被加锁的NSA...

  • 异常堆栈输出为字符串

    今天要记录下一个功能,就是将异常信息,通过邮件发送给我。过程中遇到一个问题,怎样获取到异常堆栈信息并将它输出为字符...

  • 异常没有堆栈信息

    代码里面使用了System.out.println(e.toString()); e.toString()调用了e...

  • SprnigMVC的统一异常处理

    我们知道,系统中异常包括:编译时异常和运行时异常RuntimeException,前者通过捕获异常从而获取异常信息...

  • SpringMVC中的统一异常处理

    系统中异常包括:编译时异常和运行时异常RuntimeException,前者通过捕获异常从而获取异常信息,后者主...

  • NullPointerException 没有堆栈

    JVM虚拟机对异常信息进行了优化,当相同异常出现很多次,会认为它是热点异常,忽略掉异常堆栈信息;通过增加JVM参数...

  • log.error()输出的异常栈没有“关键”信息解决方案

    1. 测试代码 测试代码: 2. 直接抛出异常: 异常信息: lombok的@Data注解用在异常子类,导致堆栈没...

网友评论

    本文标题:从异常类中获取异常堆栈的全部信息

    本文链接:https://www.haomeiwen.com/subject/xpfcsftx.html