Git Product home page Git Product logo

oslabs-beta / dbhive Goto Github PK

View Code? Open in Web Editor NEW
43.0 5.0 5.0 92.88 MB

Real-time monitoring and analysis tool for PostgreSQL databases

Home Page: https://dbhive.net/

JavaScript 3.65% HTML 0.11% TypeScript 24.69% CSS 0.19% PLpgSQL 70.10% Ruby 1.21% Dockerfile 0.05%
database-management postgresql visualization chartjs express idb-keyval indexeddb javascript react typescript webpack cryptojs react-query zustand material-ui jest

dbhive's Introduction

Welcome to dbHive! 🐝

PostgreSQL Monitoring Tool


Table of Contents

About

dbHive offers an interactive dashboard to visualize the performance of one or more PostgreSQL databases. By providing easily accessible information about the health and activity of a database, dbHive enables developers to make informed decisions that optimize the way they store their data.

Getting Started

Features

➮ Query Execution Times

Get a broad sense of database performance by viewing average query times across the database, as well as averages for specific types of SQL queries. Pinpoint the slowest queries to gain insight for database improvement.

Dashboard showing database metrics

➮ Most Frequent Queries

To analyze common and recurring database activity, view charts on the most frequent queries within and across all query types.

➮ Other Key Stats

At a glance, gather other vital information, including:

  • conflicts
  • deadlocks
  • rolled back transactions
  • cache hit ratio
  • block hits
  • and more

➮ Access everything with a secure account

Maintain privacy and security with dbHive's required secure login. All database information and metrics are protected with encrypted accounts.

➮ Connect one or more databases

Easily access all databases and metrics within one place with the ability to toggle between multiple database dashboards.

Toggle between database dashboards

➮ Customize database metrics dashboard

Use dropdowns to view more details on a given metric. Expand graphs to fill the screen. Adjust the fetch interval, the frequency at which the dashboard is updated with the latest metrics.

➮ Delete a database

Navigate to the Setup page and remove a database when it is no longer in use, keeping your dashboard clean.

Privacy and Security

dbHive does not store any user data, most importantly including database connection information, usernames, and passwords. Data is kept encrypted on the client.

Troubleshooting

If certain database metrics are shown as unavailable in the dashboard, database user permissions may need to be elevated. Necessary user permissions and admin privileges can vary depending on the database hosting service used. For issues with application accounts, it is recommended to remove problematic users. Follow the directions in the "Remove application users" section of this readme.

➮ Shared library

If you receive this error, 'error: pg_stat_statements must be loaded via shared_preload_libraries', in postgresql.conf change

shared_preload_libraries = ''

to

shared_preload_libraries = 'pg_stat_statements'

and restart the Postgres service.

Contributing

Read our contribution guide for more information on how to contribute to dbHive.

Development Mode

If you would like to participate in developing new features, the app can be launched in development mode:

npm run dev

or

docker build -t dbhive/main-dev -f Dockerfile-dev .
docker-compose -f docker-compose-dev-hot.yml up

Future Enhancements

  • Search Feature: Add a search bar to the dashboard that allows users to find data by keywords.
  • Expansion to Other Databases: Make dbHive available for other databases besides PostgreSQL.
  • Comparing Schemas: Allow users to compare the performance of alternate database schemas alongside their current schemas.
  • Additional Customization: Give users more power to customize graphs and dashboard arrangement.

Authors

dbhive's People

Contributors

bmiller1881 avatar enmcco avatar erpaine avatar jrichardson-rn avatar mforbz12 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  avatar

Watchers

 avatar  avatar  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.