如何在Akka Streams中获取导致失败的对象?

时间:2016-03-23 13:08:53

标签: scala akka reactive-programming akka-stream

根据akka streams docs,可以通过定义将Throwable映射到Strategy的决策程序来处理流故障:

val decider: Supervision.Decider = {
  case _: ArithmeticException => Supervision.Resume
  case _                      => Supervision.Stop
}

我想知道是否有办法访问导致错误的元素。当然,这个元素的类型是未知的,但是有没有办法让它成为Object的实例?

1 个答案:

答案 0 :(得分:0)

琐碎的方法是捕获ArithmeticException附近的位置,然后抛出自定义异常MyDetailedArithmeticException(culprit: Int),它会打印导致问题出现问题的int