Reporting Metrics and Traces to Kamon APM

Kamon APM is a hosted monitoring and debugging platform for microservices. Kamon APM was designed from the ground up with one goal in mind: create a monitoring platform that can accept all the metrics and tracing data exactly as Kamon records it: no averages, no summaries, no downsampling, no data quality loss. Having the entire data that Kamon captures means proper aggregation of data across instances and proper percentiles calculation, which translates in better, accurate and relevant alerts and insight on your application’s behavior.

Installation and Startup

libraryDependencies += "io.kamon" %% "kamon-apm-reporter" % "1.1.3"


implementation 'io.kamon:kamon-apm-reporter_2.12:1.1.3'

Once the reporter is on your classpath you can add it like any other Kamon reporter:

import kamon.apm.KamonApm

Kamon.addReporter(new KamonApm())


At a minimum you should provide your Kamon APM API key to start reporting data using the kamon.apm.api-key configuration setting in your application.conf file:

kamon.apm {
  api-key = "abcdefghijklmnopqrstuvwxyz"

You can find your API key in Kamon APM’s administration section.

Visualization and Fun

Kamon APM has a deep understanding on all metrics reported by Kamon and provides ready to use dashboards that make it super easy to start looking at service, JVM, Hosts, Akka-related metrics, Traces and more. Here are some examples from a demo application: