我正在使用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 =>
...
}
}
答案 0 :(得分:1)
您可以调用try-catch
的{{1}}方法并在那里打印堆栈跟踪,而不是使用recover
:
future