Kafka Graphite Metrics Reporter

Graphite integration for Kafka Metrics Reporter

License

License

GroupId

GroupId

com.pakulov.kafka
ArtifactId

ArtifactId

kafka_2.11-graphite
Last Version

Last Version

0.10.2
Release Date

Release Date

Type

Type

jar
Description

Description

Kafka Graphite Metrics Reporter
Graphite integration for Kafka Metrics Reporter
Project URL

Project URL

https://github.com/apakulov/kafka-graphite
Source Code Management

Source Code Management

https://github.com/apakulov/kafka-graphite

Download kafka_2.11-graphite

How to add to project

<!-- https://jarcasting.com/artifacts/com.pakulov.kafka/kafka_2.11-graphite/ -->
<dependency>
    <groupId>com.pakulov.kafka</groupId>
    <artifactId>kafka_2.11-graphite</artifactId>
    <version>0.10.2</version>
</dependency>
// https://jarcasting.com/artifacts/com.pakulov.kafka/kafka_2.11-graphite/
implementation 'com.pakulov.kafka:kafka_2.11-graphite:0.10.2'
// https://jarcasting.com/artifacts/com.pakulov.kafka/kafka_2.11-graphite/
implementation ("com.pakulov.kafka:kafka_2.11-graphite:0.10.2")
'com.pakulov.kafka:kafka_2.11-graphite:jar:0.10.2'
<dependency org="com.pakulov.kafka" name="kafka_2.11-graphite" rev="0.10.2">
  <artifact name="kafka_2.11-graphite" type="jar" />
</dependency>
@Grapes(
@Grab(group='com.pakulov.kafka', module='kafka_2.11-graphite', version='0.10.2')
)
libraryDependencies += "com.pakulov.kafka" % "kafka_2.11-graphite" % "0.10.2"
[com.pakulov.kafka/kafka_2.11-graphite "0.10.2"]

Dependencies

compile (2)

Group / Artifact Type Version
org.apache.kafka : kafka_2.11 jar 0.10.2.1
com.yammer.metrics : metrics-graphite jar 2.2.0

test (1)

Group / Artifact Type Version
org.scalatest : scalatest_2.11 jar 3.0.3

Project Modules

There are no modules declared in this project.

Kafka Graphite Metrics Reporter

This plugin allows to export data from Kafka instance to Graphite directly. Kafka 0.10.2.+ support.

Plugin supports multiple interfaces:

  • Broker (kafka.metrics.KafkaMetricsReporter)
  • Clients (org.apache.kafka.common.metrics.MetricsReporter)

Install

Clients plugin could be integrated by defining next dependencies.

Maven

<dependency>
  <groupId>com.pakulov.kafka</groupId>
  <artifactId>kafka-graphite-clients</artifactId>
  <version>0.10.2</version>
</dependency>

Gradle

compile 'com.pakulov.kafka:kafka-graphite-clients:0.10.2'

Build

Broker plugin could be compiled with different Scala versions, use scalaVersion Gradle's property to define version

./gradlew -PscalaVersion=2.10.5 build 

There is also a way to build a deb package

./gradlew buildDeb

Usage

At first you have to configure kafka reporters server.properties file

For KafkaMetricsReporter use:

  • kafka.metrics.reporters=kafka.metrics.KafkaGraphiteMetricsReporter
  • kafka.graphite.metrics.jvm.enabled: Controls JVM metrics output (default: true)

For MetricsReporter use:

  • metric.reporters=org.apache.kafka.common.metrics.GraphiteReporter

Plugin has a set of possible parameters:

  • kafka.metrics.polling.interval.secs=60: Polling interval that will be used for all Kafka metrics
  • kafka.graphite.metrics.reporter.enabled: Enables actual plugin (default: false)
  • kafka.graphite.metrics.host: The graphite host to connect to (default: localhost)
  • kafka.graphite.metrics.port: The port to connect to (default: 2003)
  • kafka.graphite.metrics.prefix: The metric prefix that's sent with metric names (default: kafka)
  • kafka.graphite.metrics.include: A regular expression allowing explicitly include certain metrics (default: null)
  • kafka.graphite.metrics.exclude: A regular expression allowing you to exclude certain metrics (default: null)

Versions

Version
0.10.2
0.5.0
0.4.1
0.4.0
0.2.5