Giter Site home page Giter Site logo

oslabs-beta / hyperionn Goto Github PK

View Code? Open in Web Editor NEW
43.0 3.0 2.0 28.9 MB

An open-source visualization tool for monitoring Kafka cluster metrics

HTML 44.78% CSS 2.95% JavaScript 47.42% TypeScript 2.90% SCSS 1.95%
kafka kafka-cluster kafka-consumer kafka-manager kafka-manager-dashboard kafka-producer

hyperionn's Introduction

GitHub Tutorial

Logo

Hyperion

An open-source Kafka monitoring tool built for developers

GitHub stars GitHub issues GitHub last commit

hyperionapp.dev

Table of Contents

  1. About the Project
  2. Getting Started
  3. Demo
  4. Roadmap
  5. Contributors
  6. Support the Project
  7. License

About the Project

Hyperion is an open-source visualization tool for monitoring crucial health metrics of your Kafka cluster. This tool allows developers to quickly assess the functionality of their Kafka cluster, as well as identify metrics that become out of the appropriate range. Real-time metrics are consolidated in one dashboard for easy access, and developers have access to an error log where instances of out-of-range metrics are displayed. This application can be deployed on your local network.

Featured metrics include: under-replicated partitions, offline partitions, active controller count, producer average request latency, request rate, response rate, bytes consumed rate, and producer outgoing byte rate.

Built With

Getting Started

Requirements

  1. You will need npm and the latest version of Node.js.

  2. Ports 3001 and 8080 need to be available to run this application.

  3. Make sure you have a running Kafka cluster with a configured Prometheus instance (you will need the domain and port of where Prometheus is running)

Installation

  1. Clone this repository in your local machine:
git clone https://github.com/oslabs-beta/hyperionn
  1. Install all dependencies:
npm install
  1. Build your version of Hyperion:
npm run build

When you're ready to use Hyperion

  1. Start the server:
npm start
  1. Hyperion defaults to running on port 3000. Simply go to http://localhost:3000 to view your metrics and start managing your Kafka cluster!

  2. After you log in, click ‘connect’ in the side navbar. Input the port number and the domain where your prometheus instance is running for your Kafka cluster and click ‘submit’.

  3. Congratulations! You can now view live streaming of data.

Note: When the simple key metrics (active controllers, under-replicated partitions, offline partitions) are not their expected values, the app will store the occurrence and display them in the error log found on the side navbar.

Demo

LoginScreenshot
1. Login with traditional sign up or Google/Github SDK authentication.
ConnectScreenshot
2. Connect to your Prometheus domain/IP and port.
DashboardScreenshot
3. Your dashboard will populate with the metrics after connecting.
ErrorLogScreenshot
4. Utilize the Error Logs to view occurences of out of range metrics.

Roadmap

Here are some features the Hyperion team is working on adding to the application in the near future:

  • Additional metrics to view monitor performance
  • Ability to customize dashboard with metrics that are important to your Kafka cluster
  • End-to-end testing with Cypress
  • Refactoring codebase to Typescript for static testing

If there is a feature you think would be useful to you and your team, or if you find any bugs, please open an issue.

Contributors

Support the Project

Contributions are welcomed and appreciated. You can do the following to support the project!

  • Star this repository
  • Raise new issues
  • Fork, clone, and make a PR to solve an issue
  • Check out our Medium article

License

This product is licensed under the MIT License without restriction.

hyperionn's People

Contributors

anitaduong98 avatar fried-jo avatar justanotherguyonline avatar kngreen avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.