Documentation
Sponsored by Kamino

Reporting Metrics and Traces to Kamino

Kamino is a Monitoring and Troubleshooting platform for Microservices. Kamino was founded by the creators of Kamon and 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

Add the kamino-reporter dependency to your build:

  • Group ID: io.kamon
  • Package ID: kamino-reporter
  • Scala Versions: 2.11 / 2.12
  • Latest Version: Kamino Reporter

Adding the dependency to SBT would look like this:

libraryDependencies += "io.kamon" %% "kamino-reporter" % "1.0.0"

Once the reporter is on your classpath you can add it like any other Kamon reporter. Take into account that there are two reporters:

  • kamon.kamino.KaminoReporter sends Metrics data to Kamino.
  • kamon.kamino.KaminoTracingReporter sends Tracing data to Kamino.

Make sure you add both reporters:

import kamon.kamino.{KaminoReporter, KaminoTracingReporter}

Kamon.addReporter(new KaminoReporter())
Kamon.addReporter(new KaminoTracingReporter())

Configuration

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

kamino {
  api-key = "abcdefghijklmnopqrstuvwxyz"
}

You can find your API key in Kamino’s Administration section.

Visualization and Fun

Kamino 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: