先摆结论
e.printStackTrace() 和 System.out.print() 一样是不会把信息输出到日志文件的。
解决措施
使用 log.error(e.getMessage(),e); 将错误信息通过日志对象输出到日志文件。
事情起因
工作中接手了一个lan摊子的需求,发生了一个bug,我从服务器上拿到了一份日志文件,迅速定位到了程序执行的那几行,有一个流程没走完就跳过去了。
我当时想如果没有异常应该会执行的呀,
为什么没有执行?
难道是发生了异常?
不对呀,
程序有写e.printStackTrace()打印异常信息呀,日志文件里没有异常呀!!!
} catch(Exception e){
e.printStackTrace()