如何在Google App Engine的应用日志中显示例外的完整堆栈跟踪?

cqc*_*law 1 logging google-app-engine exception-handling

在Google App Engine上部署的应用程序中从数据存储区中分离对象时,我遇到了"无法分离"的异常,我无法在我的开发框中重现该异常.分离操作是服务器端的,因此我唯一的信息是应用程序日志文件中的异常日志.然而,堆栈跟踪被省略:例如,最深的内部异常以"...... 36多"结束.

如何调整应用程序日志记录的详细程度以包括完整的,非省略的堆栈跟踪?

小智 7

您可以做的是在记录异常时将Throwable添加为参数.即:

 Logger log = Logger.getLogger(YourClass.class.getName());
 .....
 }catch (final Throwable e){
       log.log(Level.SEVERE, e.toString(), e);
 }
Run Code Online (Sandbox Code Playgroud)

这将在GAE的日志上打印出一个很好的堆栈跟踪.

这样您就不必更改全局日志级别.