From b7018717bdaa2473b5ebf710a2e263ab520c3b65 Mon Sep 17 00:00:00 2001 From: John St John Date: Wed, 27 Sep 2017 12:07:15 -0700 Subject: use standard try catch --- .../ExceptionLoggingSizedBufferingTraceConsumer.scala | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'src/main/scala/xyz/driver') diff --git a/src/main/scala/xyz/driver/core/trace/ExceptionLoggingSizedBufferingTraceConsumer.scala b/src/main/scala/xyz/driver/core/trace/ExceptionLoggingSizedBufferingTraceConsumer.scala index ed05517..08969d8 100644 --- a/src/main/scala/xyz/driver/core/trace/ExceptionLoggingSizedBufferingTraceConsumer.scala +++ b/src/main/scala/xyz/driver/core/trace/ExceptionLoggingSizedBufferingTraceConsumer.scala @@ -1,9 +1,11 @@ package xyz.driver.core.trace -import com.google.cloud.trace.v1.consumer.{FlushableTraceConsumer} +import com.google.cloud.trace.v1.consumer.FlushableTraceConsumer import com.google.devtools.cloudtrace.v1.Traces import com.typesafe.scalalogging.Logger + import scala.util.Try +import scala.util.control.NonFatal /** * ExceptionLoggingFlushableTraceConsumer simply wraps a flushable trace consumer and catches/logs any exceptions @@ -19,8 +21,16 @@ class ExceptionLoggingFlushableTraceConsumer(traceConsumer: FlushableTraceConsum log.error(s"Encountered exception logging to google $exception") override def receive(trace: Traces): Unit = - Try(flushableTraceConsumer.receive(trace)).recover({ case e => exceptionLogger(e) }).get + try { + flushableTraceConsumer.receive(trace) + } catch { + case NonFatal(e) => exceptionLogger(e) + } override def flush(): Unit = - Try(flushableTraceConsumer.flush()).recover({ case e => exceptionLogger(e) }).get + try { + flushableTraceConsumer.flush() + } catch { + case NonFatal(e) => exceptionLogger(e) + } } -- cgit v1.2.3