diff options
author | Ivan Topolnjak <ivantopo@gmail.com> | 2014-06-19 00:47:07 -0300 |
---|---|---|
committer | Ivan Topolnjak <ivantopo@gmail.com> | 2014-06-19 00:47:07 -0300 |
commit | 1150d528eb5231993e542c086e2df90cf760d8a7 (patch) | |
tree | e1c86f9a115872073c46890b5ef32dbe1bd0bd3d /kamon-newrelic/src/main | |
parent | 35b8a715d78ddd194d410ba0cc2119b5a1caa924 (diff) | |
parent | 4abab8df49d1bc5d9a051a8b54852e0712be7b74 (diff) | |
download | Kamon-1150d528eb5231993e542c086e2df90cf760d8a7.tar.gz Kamon-1150d528eb5231993e542c086e2df90cf760d8a7.tar.bz2 Kamon-1150d528eb5231993e542c086e2df90cf760d8a7.zip |
Merge branch 'master' into release-0.2
Conflicts:
kamon-play/src/test/scala/kamon/play/WSInstrumentationSpec.scala
kamon-statsd/src/main/scala/kamon/statsd/StatsD.scala
project/Dependencies.scala
project/Projects.scala
version.sbt
Diffstat (limited to 'kamon-newrelic/src/main')
-rw-r--r-- | kamon-newrelic/src/main/scala/kamon/newrelic/NewRelicErrorLogger.scala | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/kamon-newrelic/src/main/scala/kamon/newrelic/NewRelicErrorLogger.scala b/kamon-newrelic/src/main/scala/kamon/newrelic/NewRelicErrorLogger.scala index 0f177b9e..4203f81f 100644 --- a/kamon-newrelic/src/main/scala/kamon/newrelic/NewRelicErrorLogger.scala +++ b/kamon-newrelic/src/main/scala/kamon/newrelic/NewRelicErrorLogger.scala @@ -15,13 +15,15 @@ * ========================================================== */ package kamon.newrelic -import akka.actor.Actor +import akka.actor.{ ActorLogging, Actor } import akka.event.Logging.Error import akka.event.Logging.{ LoggerInitialized, InitializeLogger } import com.newrelic.api.agent.{ NewRelic ⇒ NR } import kamon.trace.TraceContextAware -class NewRelicErrorLogger extends Actor { +class NewRelicErrorLogger extends Actor with ActorLogging { + var aspectJMissingAlreadyReported = false + def receive = { case InitializeLogger(_) ⇒ sender ! LoggerInitialized case error @ Error(cause, logSource, logClass, message) ⇒ notifyError(error) @@ -30,10 +32,17 @@ class NewRelicErrorLogger extends Actor { def notifyError(error: Error): Unit = { val params = new java.util.HashMap[String, String]() - val ctx = error.asInstanceOf[TraceContextAware].traceContext - for (c ← ctx) { - params.put("TraceToken", c.token) + if (error.isInstanceOf[TraceContextAware]) { + val ctx = error.asInstanceOf[TraceContextAware].traceContext + + for (c ← ctx) { + params.put("TraceToken", c.token) + } + } else if (!aspectJMissingAlreadyReported) { + log.warning("ASPECTJ WEAVER MISSING. You might have missed to include the javaagent JVM startup parameter in" + + " your application. Please refer to http://kamon.io/get-started/ for instructions on how to do it.") + aspectJMissingAlreadyReported = true } if (error.cause == Error.NoCause) { |