From ee009e02a20a94ee6011cf5ddf537722c173e44f Mon Sep 17 00:00:00 2001 From: Colin Smith Date: Wed, 14 Oct 2015 08:17:03 +0100 Subject: = newrelic: Associate logged errors with correct transaction Previously, errors were associated with transactions named "OtherTransaction/", with this change they are associated with "WebTransaction/Uri/ 0) params.put("ErrorMessage", message) + val uri = s"/${Tracer.currentContext.name}" + val transaction = s"WebTransaction/Uri$uri" + LoggedException(cause, params, transaction, uri); } -} \ No newline at end of file + + def reportError(error: ThrowableError) = ServiceFactory.getRPMService().getErrorService().reportError(error) + +} + +case class LoggedMessage(message: String) extends Throwable(message) with NoStackTrace + +case class LoggedException(cause: Throwable, params: util.HashMap[String, String], transaction: String, uri: String) + extends ThrowableError(null, transaction, cause, uri, System.currentTimeMillis(), null, null, null, params, null) diff --git a/kamon-newrelic/src/main/scala/kamon/newrelic/WebTransactionMetricExtractor.scala b/kamon-newrelic/src/main/scala/kamon/newrelic/WebTransactionMetricExtractor.scala index 1a31ac58..604969ab 100644 --- a/kamon-newrelic/src/main/scala/kamon/newrelic/WebTransactionMetricExtractor.scala +++ b/kamon-newrelic/src/main/scala/kamon/newrelic/WebTransactionMetricExtractor.scala @@ -43,7 +43,7 @@ object WebTransactionMetricExtractor extends MetricExtractor { apdexBuilder.record(Time.Nanoseconds.scale(Time.Seconds)(record.level), record.count) } - Metric(elapsedTime, Time.Nanoseconds, "WebTransaction/Custom/" + entity.name, None) + Metric(elapsedTime, Time.Nanoseconds, "WebTransaction/Uri/" + entity.name, None) } // Accumulate all segment metrics @@ -89,7 +89,7 @@ object WebTransactionMetricExtractor extends MetricExtractor { val externalScopedByHostAndLibrary = externalScopedByHostAndLibrarySnapshots.map { case ((host, library, traceName), snapshots) ⇒ val mergedSnapshots = snapshots.foldLeft(Histogram.Snapshot.empty)(_.merge(_, collectionContext)) - Metric(mergedSnapshots, Time.Nanoseconds, s"External/$host/$library", Some("WebTransaction/Custom/" + traceName)) + Metric(mergedSnapshots, Time.Nanoseconds, s"External/$host/$library", Some("WebTransaction/Uri/" + traceName)) } Map(httpDispatcher, webTransaction, webTransactionTotal, externalAllWeb, externalAll, apdexBuilder.build) ++ -- cgit v1.2.3