Enhance [Lazy]Loggable
authorChristos KK Loverdos <loverdos@gmail.com>
Fri, 27 Apr 2012 11:28:01 +0000 (14:28 +0300)
committerChristos KK Loverdos <loverdos@gmail.com>
Fri, 27 Apr 2012 11:28:01 +0000 (14:28 +0300)
src/main/scala/gr/grnet/aquarium/util/LazyLoggable.scala
src/main/scala/gr/grnet/aquarium/util/Loggable.scala

index e463c44..c3c837e 100644 (file)
@@ -38,7 +38,7 @@ package gr.grnet.aquarium.util
 import org.slf4j.LoggerFactory
 
 /**
- * Like [[gr.grnet.aquarium.util.Loggable]] but the underlying logger is lazily evaluated.
+ * Like [[gr.grnet.aquarium.util.Loggable]] but the underlying logger is created lazily.
  *
  * @author Christos KK Loverdos <loverdos@gmail.com>
  */
@@ -74,4 +74,8 @@ trait LazyLoggable {
   protected def logStopped(ms0: Long, ms1: Long, fmt: String, args: Any*): Unit = {
     LogHelpers.logStopped(this.logger, ms0, ms1, fmt, args: _*)
   }
+
+  protected def logChainOfCauses(t: Throwable): Unit = {
+    logger.error("Oops!\n{}", chainOfCauses(t).map("!! " + _) mkString "\n")
+  }
 }
index 0624ee1..b5b7184 100644 (file)
@@ -73,4 +73,8 @@ trait Loggable {
   protected def logStopped(ms0: Long, ms1: Long, fmt: String, args: Any*): Unit = {
     LogHelpers.logStopped(this.logger, ms0, ms1, fmt, args: _*)
   }
+
+  protected def logChainOfCauses(t: Throwable): Unit = {
+    logger.error("Oops!\n{}", chainOfCauses(t).map("!! " + _) mkString "\n")
+  }
 }
\ No newline at end of file