Skip to content

oslabs-beta/Lighthouse

Repository files navigation

Lighthouse

 

GitHub stars GitHub issues

A minimal, light-weight Kafka cluster monitoring tool built on Next.js.

Lighthouse is a lightweight, open-source developer tool useful for monitoring Kafka clusters - in real time. It provides a responsive dashboard view of essential performance metrics for visualizing Kafka cluster health.

Soon to be Typescript integrated.

Table of Contents

  1. How It Works
  2. Getting Started
  3. Under the Hood
  4. Stretch Goals
  5. Contributors
  6. License

How It Works

Lighthouse helps you see metrics that matter by utilizing a predefined set of GraphQL parameters to query a Prometheus server, allowing Kafka cluster usage data to directly render in a minimal graphical interface. With the goal of capitalizing on Kafka's on-demand consumer threading, which gives immediate access to the producer threads, Lighthouse's goal is to provide the developer with on-time metrics to allow for immediate system analysis.

Getting Started

Before using the application, the user should have a Confluent Kafka cluster up and running, as well as a Prometheus server connected. Afterwards, it's as easy as inputting the Prometheus endpoint into your process.env variables.

  1. Install
npm install;
  1. Confluent Cloud kafka cluster setup (https://developer.confluent.io/quickstart/kafka-on-confluent-cloud/)
  2. Prometheus Server setup (https://prometheus.io/)
  3. Create a process.env and input your Prometheus endpoints corresponding to the API variables within the components.
  4. Run Build & Start
npm run build;
npm start;

To run Lighthouse within a Docker container based on the image provided, follow these steps.

  1. Open Docker (make sure local Docker client is up to date with the latest version)
  2. Build Docker Image
docker build -t lighthouse-app .
  1. Run the image as a Docker container
docker run -p 3000:3000 lighthouse-app

Under The Hood

Built with Next.js, GraphQL, Apollo, Prometheus, and Docker.

Prometheus  GraphQL  NextJS  Docker  React 

Stretch Goals

  • Typescript Codebase
  • Prometheus Endpoint input feature
  • Customizable graphical components

Contributors

We are always open to collaborating and building together! Reach out with features you'd like to see.


Andy Kuang
GitHub
LinkedIn

Zaw Win
GitHub
LinkedIn

Christian Springer
GitHub
LinkedIn

Brandon Chin
GitHub
LinkedIn

License

This product is licensed under the MIT License without restriction.

About

Kafka visualizer and management development tool

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •