allegro / kafka-offset-monitor-graphite

Graphite reporter for Kafka Offset Monitor.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

kafka-offset-monitor-graphite

Plugin to KafkaOffsetMonitor tool reporting offset data to graphite via dropwizard metrics.

Building It

Currently KafkaOffsetMonitor is not available via public artifact repository, so before we build the plugin we need to build KafkaOffsetMonitor and publish it to maven local repo:

sbt publishM2

Now we can build the plugin:

sbt assembly

Running It

Check how to run KafkaOffsetMonitor and modify the command by adding a plugin assembly jar file to the classpath, and put graphite configuration properties into a pluginsArgs argument.

See original KafkaOffsetMonitor example command modified with graphite reporter plugin usage:

java -cp "KafkaOffsetMonitor-assembly-0.3.0-SNAPSHOT.jar:kafka-offset-monitor-graphite-assembly-0.1.0-SNAPSHOT.jar" \
     com.quantifind.kafka.offsetapp.OffsetGetterWeb \
     --zk zk-server1,zk-server2 \
     --port 8080 \
     --refresh 10.seconds \
     --retain 2.days \
     --pluginsArgs graphiteHost=graphite.host,graphitePort=2003,graphitePrefix=stats.kafka.offset_monitor

The pluginArgs used by kafka-offset-monitor-graphite are:

  • graphiteHost Graphite host (default localhost)
  • graphitePort Graphite reporting port (default 2003)
  • graphitePrefix Metrics prefix (default stats.kafka.offset.monitor)
  • graphiteReportPeriod Reporting period in seconds (default 30)
  • metricsCacheExpireSeconds Metrics cache TTL in mires (default 600). Offset metrics are stored in expiring cache and reported to Graphite periodically. If metrics are not updated they will be removed.

About

Graphite reporter for Kafka Offset Monitor.

License:Apache License 2.0


Languages

Language:Scala 100.0%