aboutsummaryrefslogtreecommitdiff
path: root/kamon-newrelic/src
diff options
context:
space:
mode:
authorIvan Topolnjak <ivantopo@gmail.com>2014-06-19 00:47:07 -0300
committerIvan Topolnjak <ivantopo@gmail.com>2014-06-19 00:47:07 -0300
commit1150d528eb5231993e542c086e2df90cf760d8a7 (patch)
treee1c86f9a115872073c46890b5ef32dbe1bd0bd3d /kamon-newrelic/src
parent35b8a715d78ddd194d410ba0cc2119b5a1caa924 (diff)
parent4abab8df49d1bc5d9a051a8b54852e0712be7b74 (diff)
downloadKamon-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')
-rw-r--r--kamon-newrelic/src/main/scala/kamon/newrelic/NewRelicErrorLogger.scala19
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) {