播放框架记录期货中的所有RuntimeException

时间:2014-07-11 08:40:51

标签: scala exception-handling playframework-2.0 log4j future

我正在使用Scala在Play Framework 2.2中创建应用程序,我想在我的日志文件中保存所有RuntimeException。

当我添加代码时:

future.map { f => throw new NullPointerException("bad things happen") }

我的日志中有任何信息。我应该如何配置我的log4j,以及为什么这样的行为是默认的?

===更新

我可以在里面捕获这个异常,但也许有更好的方法可以将它捕获到外面:

future.map { f => try { ... throw new NullPointerException("bad things happen") } catch { case e:RuntimeException => ... } }

1 个答案:

答案 0 :(得分:1)

您可以调用try-catch的{​​{1}}方法并在那里打印堆栈跟踪,而不是使用recover

future