Redis inventory is a tool to analyse Redis memory usage by key patterns and displaying it hierarchically

Redis Inventory

Build Status Coverage Status Go Report Card Docker Pulls

Redis inventory is a tool to analyse Redis memory usage by key patterns and displaying it hierarchically. The name is inspired by "Disk Inventory X" tool doing similar analysis for disk usage.

Blog post on how it works: Medium | My blog

Example:

$ redis-inventory inventory <redis-url> --output=table --output-params="padSpaces=2&depth=2&human=1"

can be provided in one of two formats

Outputs it as a nice table

12:39PM INF Start scanning
+---------------------+----------+-----------+
| KEY                 | BYTESIZE | KEYSCOUNT |
+---------------------+----------+-----------+
|   dev:              |     2.9M |     4,555 |
|     article:        |   413.7K |       616 |
|     blogpost:       |   408.5K |       630 |
|     collections:    |   426.7K |       627 |
|     events:         |   391.2K |       614 |
|     friends:foobar: |   501.1K |       745 |
|     news:           |   388.8K |       593 |
|     user:           |     481K |       730 |
|   prod:             |     2.9M |     4,531 |
|     article:        |   397.1K |       614 |
|     blogpost:       |   409.4K |       627 |
|     collections:    |   374.7K |       560 |
|     events:         |   384.2K |       588 |
|     friends:foobar: |     503K |       755 |
|     news:           |   407.9K |       618 |
|     user:           |   492.3K |       769 |
+---------------------+----------+-----------+
12:39PM INF Finish scanning

It also can render sunburst diagrams to visualize it:

$ redis-inventory inventory <redis-url> --output=chart --maxChildren=100

Full sunburst diagram

Read more about usage

Installation

There are two ways to install the tool:

  • use docker image
  • build binary from sources

Using docker

To run the tool from a docker image, run the command:

docker run --rm dclg/redis-inventory inventory <redis-url>

Read more about installation

Kudos

  • Radix — Redis client for Go,
  • Cobra — CLI applications framework,
  • Go-Pretty — tools to render tables and progress bars,
  • AnyChart — beautiful sunburst diagrams.
Similar Resources

Google KMS backed Solana key management CLI tool

solana-kms solana-kms is a Google KMS backed Solana token management CLI utility. The main purpose of the tool is to ensure that the private key is ne

Jan 13, 2022

Run your MapReduce workloads as a single binary on a single machine with multiple CPUs and high memory. Pricing of a lot of small machines vs heavy machines is the same on most cloud providers.

gomap Run your MapReduce workloads as a single binary on a single machine with multiple CPUs and high memory. Pricing of a lot of small machines vs he

Sep 16, 2022

CLI for Shamir's Secret Sharing and AES key generation, encryption, and decryption.

CLI for Shamir's Secret Sharing and AES key generation, encryption, and decryption.

Shush 🤫 This simple program will help you run Shamir's Secret Sharing algorithm on any file using the split and merge commands.

Feb 1, 2022

Vaku is a CLI and API for running path- and folder-based operations on the Vault Key/Value secrets engine.

Vaku is a CLI and API for running path- and folder-based operations on the Vault Key/Value secrets engine.

Vaku Vaku is a CLI and API for running path- and folder-based operations on the Vault Key/Value secrets engine. Vaku extends the existing Vault CLI an

Nov 28, 2022

Golang implementation of Reflective load PE from memory

🐸 Frog For Automatic Scan 🐶 Doge For Defense Evasion & Offensive Security Doge-MemX Golang implementation of Reflective load PE from memory Only Sup

Dec 6, 2022

Simple, visual command line tool for redis

Simple, visual command line tool for redis

redis-cui Simple, visual command line tool for redis. Feature Simple and visual Server friendly Supported vim keys Same arguments as redis-cli Install

Sep 17, 2022

yq lets you read YAML files easily on the terminal. You can find key/values easily

yq lets you read YAML files easily on the terminal. You can find key/values easily

yq yq lets you read YAML files easily on the terminal. You can find key/values easily. Motivation Reading yaml configurations for k8s file becomes ard

Nov 2, 2021

A golang tag key value parser

tag_parser A golang tag key value parser Installation go get github.com/gvassili/tag_parser Example package main import ( "fmt" "github.com/gvass

Nov 24, 2021

Green: a distribute key value system for optimize block chain data

Green: a distribute key value system for optimize block chain data

Introduce Green is a distribute key value system for optimize block chain data A

Jan 6, 2022
Simple CLI interface to in-memory key/value storage a la redis.

Simple memory key value Simple CLI interface to in-memory key/value storage a la redis. Running Can be run through go directly or through docker using

Jan 7, 2022
CLI for exploring AWS EC2 Spot inventory. Inspect AWS Spot instance types, saving, price, and interruption frequency.

spotinfo The spotinfo is a command-line tool that helps you determine AWS Spot instance types with the least chance of interruption and provides the s

Dec 19, 2022
Go library for Parsing Ansible inventory files

aini Go library for Parsing Ansible inventory files. We are trying to follow the logic of Ansible parser as close as possible. Documentation on ansibl

Jan 5, 2023
Wishbox - Wishlist using netbox as inventory source

Wishbox Generate a wishlist directory based on your netbox inventory. How does i

Nov 6, 2022
Oct 1, 2022
Integrated console application library, using Go structs as commands, with menus, completions, hints, history, Vim mode, $EDITOR usage, and more ...
Integrated console application library, using Go structs as commands, with menus, completions, hints, history, Vim mode, $EDITOR usage, and more ...

Gonsole - Integrated Console Application library This package rests on a readline console library, (giving advanced completion, hint, input and histor

Nov 20, 2022
Dependency-free replacement for GNU parallel, perfect fit for usage in an initramfs.

coshell v0.2.5 A no-frills dependency-free replacement for GNU parallel, perfect for initramfs usage. Licensed under GNU/GPL v2. How it works An sh -c

Dec 19, 2022
Disk usage analyzer with console interface written in Go
Disk usage analyzer with console interface written in Go

Gdu is intended primarily for SSD disks where it can fully utilize parallel processing. However HDDs work as well, but the performance gain is not so huge.

Jan 7, 2023
A cli that shows a GitHub-like language usage statistics bar.
A cli that shows a GitHub-like language usage statistics bar.

barley A cli that shows a GitHub-like language usage statistics bar. barley analyses the programming languages used in a directory and creates a used

Jan 8, 2022
Basic usage of Vecty framework examples.

vecty-examples Basic usage of Vecty framework examples. Instructions Change directory to the folder with the example you wish to run Run wasmserve. To

Jun 20, 2022