Distributed Tracing, Metrics and Context Propagation for application running on the JVM
Scala Java
dpsoft and ivantopo = core: exclude com.lihaoyi.fansi dependency (#540)
* = core: exclude com.lihaoyi.fansi dependency
Latest commit 794fbf0 Jul 4, 2018

README.md

Kamon

Build Status Gitter Maven Central

Kamon is a set of tools for monitoring applications running on the JVM.

Getting Started

Kamon is currently available for Scala 2.10, 2.11 and 2.12.

Supported releases and dependencies are shown below.

kamon status jdk scala
1.1.0 stable 1.8+ 2.10, 2.11, 2.12

To get started with SBT, simply add the following to your build.sbt or pom.xml file:

libraryDependencies += "io.kamon" %% "kamon-core" % "1.1.0"
<dependency>
    <groupId>io.kamon</groupId>
    <artifactId>kamon-core_2.12</artifactId>
    <version>1.1.0</version>
</dependency>

Documentation

Kamon information and documentation is available on the website.

Modules

We started migrating modules to Kamon 1.1.0 based on the usage data we have, community demand and time availability, but not all have been upgraded just yet.

Now, the lucky modules currently available are:

  • Core includes all metrics, tracing and context management APIs.
  • Akka for actor metrics and tracing inside a single JVM.
  • Akka Remote has now serialization and remoting metrics and is able to trace messages across remote actor systems.
  • Akka HTTP with client and service side tracing and HTTP server metrics.
  • Futures bring automatic context propagation for Scala, Finagle and Scalaz futures.
  • Executors collects executor service metrics.
  • Play Framework with client and server side tracing.
  • JDBC gives you metrics and tracing for JDBC statements execution and Hikari pool metrics.
  • Logback comes with utilities for adding trace IDs to your logs and instrumentation to keep context when using async appenders.
  • System Metrics gathers host, process and JVM metrics.

Backends

  • Prometheus exposes a scrape endpoint with all available metrics.
  • Zipkin for reporting trace data.
  • Jaeger reports tracing data as well.
  • Kamino reports metrics and tracing data to Kamino

License

This software is licensed under the Apache 2 license, quoted below.

Copyright © 2013-2018 the kamon project http://kamon.io

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

[http://www.apache.org/licenses/LICENSE-2.0]

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.