aboutsummaryrefslogtreecommitdiff
path: root/kamon-playground/src/main
diff options
context:
space:
mode:
authorIvan Topolnjak <ivantopo@gmail.com>2015-02-14 13:50:36 +0100
committerIvan Topolnjak <ivantopo@gmail.com>2015-02-14 13:50:36 +0100
commite931727454fbd97fb39d163255edbcdcd7bcdbc6 (patch)
tree98b4bdcaa1af1dbbf201036ce05021bc096db62f /kamon-playground/src/main
parent8af0dfb1e2c8892023dd1bc6fbae1dae2ffb16ba (diff)
parent66b35556aa1bf0975cefa35603660991cdfcc526 (diff)
downloadKamon-e931727454fbd97fb39d163255edbcdcd7bcdbc6.tar.gz
Kamon-e931727454fbd97fb39d163255edbcdcd7bcdbc6.tar.bz2
Kamon-e931727454fbd97fb39d163255edbcdcd7bcdbc6.zip
Merge branch 'single-kamon-instance-per-jvm' into release-legacy-akka-2.2
Conflicts: kamon-akka-remote/src/test/scala/kamon/akka/instrumentation/RemotingInstrumentationSpec.scala kamon-core/src/main/scala/kamon/instrumentation/akka/ActorCellInstrumentation.scala kamon-core/src/main/scala/kamon/instrumentation/akka/AskPatternInstrumentation.scala kamon-core/src/main/scala/kamon/metric/MetricsExtension.scala kamon-core/src/main/scala/kamon/metric/Subscriptions.scala kamon-core/src/main/scala/kamon/metric/instrument/Gauge.scala kamon-core/src/main/scala/kamon/metric/instrument/MinMaxCounter.scala kamon-core/src/test/scala/kamon/instrumentation/akka/ActorCellInstrumentationSpec.scala kamon-core/src/test/scala/kamon/metric/ActorMetricsSpec.scala kamon-core/src/test/scala/kamon/metric/RouterMetricsSpec.scala kamon-core/src/test/scala/kamon/metric/SubscriptionsProtocolSpec.scala kamon-core/src/test/scala/kamon/metric/TickMetricSnapshotBufferSpec.scala kamon-core/src/test/scala/kamon/metric/TraceMetricsSpec.scala kamon-core/src/test/scala/kamon/metric/UserMetricsSpec.scala kamon-core/src/test/scala/kamon/trace/TraceContextManipulationSpec.scala kamon-datadog/src/main/scala/kamon/datadog/Datadog.scala kamon-newrelic/src/main/scala/kamon/newrelic/Agent.scala kamon-newrelic/src/main/scala/kamon/newrelic/MetricReporter.scala kamon-play/src/main/scala/kamon/play/Play.scala kamon-play/src/main/scala/kamon/play/action/KamonTraceActions.scala kamon-play/src/main/scala/kamon/play/instrumentation/RequestInstrumentation.scala kamon-play/src/main/scala/kamon/play/instrumentation/WSInstrumentation.scala kamon-play/src/test/scala/kamon/play/RequestInstrumentationSpec.scala kamon-statsd/src/main/scala/kamon/statsd/StatsD.scala project/Dependencies.scala version.sbt
Diffstat (limited to 'kamon-playground/src/main')
-rw-r--r--kamon-playground/src/main/resources/application.conf91
-rw-r--r--kamon-playground/src/main/scala/test/SimpleRequestProcessor.scala30
2 files changed, 23 insertions, 98 deletions
diff --git a/kamon-playground/src/main/resources/application.conf b/kamon-playground/src/main/resources/application.conf
index 86a87439..74e710bc 100644
--- a/kamon-playground/src/main/resources/application.conf
+++ b/kamon-playground/src/main/resources/application.conf
@@ -1,6 +1,5 @@
akka {
loglevel = DEBUG
- extensions = ["kamon.newrelic.NewRelic"]
actor {
debug {
@@ -16,84 +15,26 @@ spray.can {
}
kamon {
- newrelic {
- app-name = "SimpleRequestProcessor"
- license-key = e7d350b14228f3d28f35bc3140df2c3e565ea5d5
- }
-}
-
-kamon.statsd {
- hostname = "192.168.59.103"
- simple-metric-key-generator {
- metric-name-normalization-strategy = percent-encode
+ trace {
+ level = simple-trace
}
-}
-
-kamon {
- metrics {
- tick-interval = 1 second
-
- filters = [
- {
- actor {
- includes = [ "user/simple-service-actor" ]
- excludes = [ "system/*", "user/IO-*" ]
- }
- },
- {
- trace {
- includes = [ "*" ]
- excludes = []
- }
- },
- {
- dispatcher {
- includes = [ "akka.actor.default-dispatcher" ]
- excludes = []
- }
- },
- {
- custom-metric {
- includes = [ "*" ]
- excludes = [ ]
- }
- },
- {
- router {
- includes = [ "user/replier" ]
- excludes = [ "system/*", "user/IO-*" ]
- }
- }
- ]
- precision {
- actor {
- processing-time {
- highest-trackable-value = 3600000000000
- significant-value-digits = 1
- }
- time-in-mailbox {
- highest-trackable-value = 3600000000000
- significant-value-digits = 1
- }
- mailbox-size {
- highest-trackable-value = 99999999
- significant-value-digits = 1
- }
- }
+ metric {
+ filters {
+ trace.includes = [ "**" ]
+ actor.includes = [ "**" ]
}
}
-}
-
+ newrelic {
+ app-name = "SimpleRequestProcessor"
+ license-key = e7d350b14228f3d28f35bc3140df2c3e565ea5d5
+ }
-kamon {
- metrics {
- actors {
- tracked = [
- "user/simple-service-actor",
- "other"
- ]
- }
+ modules {
+ kamon-newrelic.auto-start = no
+ kamon-datadog.auto-start = no
+ kamon-log-reporter.auto-start = no
+ kamon-system-metrics.auto-start = no
}
-} \ No newline at end of file
+}
diff --git a/kamon-playground/src/main/scala/test/SimpleRequestProcessor.scala b/kamon-playground/src/main/scala/test/SimpleRequestProcessor.scala
index b548b057..7a38e790 100644
--- a/kamon-playground/src/main/scala/test/SimpleRequestProcessor.scala
+++ b/kamon-playground/src/main/scala/test/SimpleRequestProcessor.scala
@@ -20,10 +20,10 @@ import akka.actor._
import akka.routing.RoundRobinRouter
import akka.util.Timeout
import kamon.Kamon
-import kamon.metric.Subscriptions.TickMetricSnapshot
+import kamon.metric.SubscriptionsDispatcher.TickMetricSnapshot
import kamon.metric._
import kamon.spray.KamonTraceDirectives
-import kamon.trace.{ SegmentCategory, TraceRecorder }
+import kamon.trace.{ TraceContext, SegmentCategory }
import spray.http.{ StatusCodes, Uri }
import spray.httpx.RequestBuilding
import spray.routing.SimpleRoutingApp
@@ -38,6 +38,7 @@ object SimpleRequestProcessor extends App with SimpleRoutingApp with RequestBuil
import scala.concurrent.duration._
implicit val system = ActorSystem("test")
+ Kamon.start()
import test.SimpleRequestProcessor.system.dispatcher
val printer = system.actorOf(Props[PrintWhatever])
@@ -46,26 +47,9 @@ object SimpleRequestProcessor extends App with SimpleRoutingApp with RequestBuil
def receive: Actor.Receive = { case any ⇒ sender ! any }
}), "com")
- //val buffer = system.actorOf(TickMetricSnapshotBuffer.props(30 seconds, printer))
-
- //Kamon(Metrics).subscribe(CustomMetric, "*", buffer, permanently = true)
- //Kamon(Metrics).subscribe(ActorMetrics, "*", printer, permanently = true)
-
implicit val timeout = Timeout(30 seconds)
- val counter = Kamon(UserMetrics).registerCounter("requests")
- Kamon(UserMetrics).registerCounter("requests-2")
- Kamon(UserMetrics).registerCounter("requests-3")
-
- Kamon(UserMetrics).registerHistogram("histogram-1")
- Kamon(UserMetrics).registerHistogram("histogram-2")
-
- Kamon(UserMetrics).registerMinMaxCounter("min-max-counter-1")
- Kamon(UserMetrics).registerMinMaxCounter("min-max-counter-2")
- Kamon(UserMetrics).registerMinMaxCounter("min-max-counter-3")
-
- //Kamon(UserMetrics).registerGauge("test-gauge")(() => 10L)
-
+ val counter = Kamon.userMetrics.counter("requests")
val pipeline = sendReceive
val replier = system.actorOf(Props[Replier].withRouter(RoundRobinRouter(nrOfInstances = 4)), "replier")
@@ -132,7 +116,7 @@ object SimpleRequestProcessor extends App with SimpleRoutingApp with RequestBuil
} ~
path("segment") {
complete {
- val segment = TraceRecorder.currentContext.startSegment("hello-world", SegmentCategory.HttpClient, "none")
+ val segment = TraceContext.currentContext.startSegment("hello-world", SegmentCategory.HttpClient, "none")
(replier ? "hello").mapTo[String].onComplete { t ⇒
segment.finish()
}
@@ -178,7 +162,7 @@ object Verifier extends App {
class Replier extends Actor with ActorLogging {
def receive = {
case anything ⇒
- if (TraceRecorder.currentContext.isEmpty)
+ if (TraceContext.currentContext.isEmpty)
log.warning("PROCESSING A MESSAGE WITHOUT CONTEXT")
//log.info("Processing at the Replier, and self is: {}", self)
@@ -195,6 +179,6 @@ object PingPong extends App {
def receive: Actor.Receive = { case "ping" ⇒ sender ! "pong" }
}))
- pinger.tell("pong", ponger)
+ //pinger.tell("pong", ponger)
}