aboutsummaryrefslogtreecommitdiff
path: root/kamon-core/src/main/scala/kamon/newrelic/NewRelicErrorLogger.scala
diff options
context:
space:
mode:
Diffstat (limited to 'kamon-core/src/main/scala/kamon/newrelic/NewRelicErrorLogger.scala')
-rw-r--r--kamon-core/src/main/scala/kamon/newrelic/NewRelicErrorLogger.scala18
1 files changed, 18 insertions, 0 deletions
diff --git a/kamon-core/src/main/scala/kamon/newrelic/NewRelicErrorLogger.scala b/kamon-core/src/main/scala/kamon/newrelic/NewRelicErrorLogger.scala
new file mode 100644
index 00000000..4bc49496
--- /dev/null
+++ b/kamon-core/src/main/scala/kamon/newrelic/NewRelicErrorLogger.scala
@@ -0,0 +1,18 @@
+package kamon.newrelic
+
+import akka.actor.Actor
+import akka.event.Logging.Error
+import akka.event.Logging.{LoggerInitialized, InitializeLogger}
+import com.newrelic.api.agent.NewRelic
+import NewRelic.noticeError
+
+class NewRelicErrorLogger extends Actor {
+ def receive = {
+ case InitializeLogger(_) => sender ! LoggerInitialized
+ case error @ Error(cause, logSource, logClass, message) => notifyError(error)
+ }
+
+ def notifyError(error: Error): Unit = {
+ noticeError(error.cause)
+ }
+}