/Kaffee

Java Management Extension Client for Monitoring Kafka Metrics

Primary LanguageJavaMIT LicenseMIT

Version: 1.1.1 License: MIT

pulls

Java Spring React Redux Chart.js Vite Docker

Kaffee

Kaffee provides real-time metric visualization for Apache Kafka. Using the displayed data, users will be able to monitor and diagnose issues within a Kafka broker. As charts are displayed, data is saved within log files for historical analysis.

Setup / Installation

The easiest way to get Kaffee up and running is to use the provided docker-compose.yml provided in this repository and run docker compose up -d in a directory containing the file.

Ensure that a Kafka cluster with an exposed JMX port is up and running prior to starting Kaffee. This can be done by simply setting an environment variable JMX_PORT=9999 in your Kafka instance.

Once the container is up and running, navigate to http://localhost:3030.

How To Use

After booting up Kaffee for the first time you will be presented with the following screen:

Click on the Settings button to ensure that the your Kafka URL, Port, and JMX Ports are all set correctly. Use the Chart Interval slider to change the number of seconds displayed on each chart.

Click the Home button at the top to transition to the metrics display area and click on Choose Metrics will display a list of available metrics to display.

Once you have started tracking a metric, data will be stored in a log file and can be accessed within the History area.

To test a Kafka broker, click the Start Producers button. This will begin the number of Kafka producers and consumers specified within Settings and have them generate dummy data. In order to stop producing this dummy data, click on the button it the same location, now with the text Stop Producers

To contribute, please open an issue or pull request.

Exposing Kafka's JMX Endpoints

Confluent has documentation about setting up JMX through their Docker image that can be read here.

Red Hat has documentation about setting up JMX that relates to the Kafka binaries distributed by Apache. These instructions can be read here.

Associated Links

Release Notes

1.0.0 - Initial release of Kaffee

1.1.0
  • Converted split Node/Java backend to all Java
  • Fixed bug where saved settings wouldn't apply until restart
  • Updated styling
1.1.1
  • General code cleanup and main branch update

Contributors

a photo of Clay Hilgert
Clay Hilgert
Linkedin | GitHub
a photo of Duke Ahn
Duke Ahn
Linkedin | GitHub
a photo of Darren Pavel
Darren Pavel
Linkedin | GitHub
a photo of Vitaly Blotski
Vitaly Blotski
Linkedin | GitHub