public class DispatcherServlet extends FrameworkServlet {
// Exception Stack trace test
package com.qbao.app.test; import org.slf4j.Logger; import org.slf4j.LoggerFactory; /** * @author chen.kuan 2016年7月18日 * */ public class TestStackTrace { private static final Logger logger = LoggerFactory.getLogger(TestStackTrace.class); public static void main(String[] args) { DoSomething a = new DoSomething(); try { a.doSomething(); } catch (Exception e) { logger.error(e.getMessage(), e); } } public static class DoSomething { public void doSomething() { internalDoSomething(); } public void justThrow() { throw new RuntimeException("source"); } public void internalDoSomething() { try { justThrow(); } catch (Exception e) { throw new RuntimeException("Nested Exception", e); } } } }
2016-07-18 19:20:25 [main] [ERROR] [com.qbao.app.test.TestStackTrace.main:18] |Nested Exception java.lang.RuntimeException: Nested Exception at com.qbao.app.test.TestStackTrace$DoSomething.internalDoSomething(TestStackTrace.java:37) ~[classes/:na] at com.qbao.app.test.TestStackTrace$DoSomething.doSomething(TestStackTrace.java:26) ~[classes/:na] at com.qbao.app.test.TestStackTrace.main(TestStackTrace.java:16) ~[classes/:na] Caused by: java.lang.RuntimeException: source at com.qbao.app.test.TestStackTrace$DoSomething.justThrow(TestStackTrace.java:30) ~[classes/:na] at com.qbao.app.test.TestStackTrace$DoSomething.internalDoSomething(TestStackTrace.java:35) ~[classes/:na] ... 2 common frames omitted