Use Redis' MONITOR to draw things in a terminal

Overview

Redis Top

Redistop uses MONITOR to watch Redis commands and shows per command and per host statistics.

Because MONITOR streams back all commands, its use comes at a cost.

Redistop uses INFO command too.

Example

Redis Top screenshot

Build

If you have recent golang dev enironment set, you can build it with the Makefile

make

If you need a Linux compilation, or juste using Docker:

make docker-build

License

GPL v3

Issues
  • Using tcell/tview not termui

    Using tcell/tview not termui

    With termui, redistop use 5% CPU on my laptop, it's huge for a dummy application that write text on a terminal.

    pprof shows the guilty : termui with their signal and syscall.

    Showing top 10 nodes out of 118
          flat  flat%   sum%        cum   cum%
         160ms 20.00% 20.00%      160ms 20.00%  runtime.kevent
         100ms 12.50% 32.50%      100ms 12.50%  runtime.nanotime1
          80ms 10.00% 42.50%       80ms 10.00%  runtime.pthread_cond_signal
          70ms  8.75% 51.25%       70ms  8.75%  runtime.pthread_cond_wait
          70ms  8.75% 60.00%       70ms  8.75%  syscall.Syscall
          60ms  7.50% 67.50%       60ms  7.50%  runtime.madvise
          50ms  6.25% 73.75%       70ms  8.75%  runtime.injectglist
          30ms  3.75% 77.50%      190ms 23.75%  runtime.netpoll
          30ms  3.75% 81.25%       30ms  3.75%  runtime.pthread_kill
          20ms  2.50% 83.75%       20ms  2.50%  syscall.syscall
    

    Termui has display glitch, too.

    Lets use tcell and tview.

    opened by athoune 1
Owner
Factory
Factory
Golang client for redislabs' ReJSON module with support for multilple redis clients (redigo, go-redis)

Go-ReJSON - a golang client for ReJSON (a JSON data type for Redis) Go-ReJSON is a Go client for ReJSON Redis Module. ReJSON is a Redis module that im

Nitish Malhotra 273 Jul 28, 2022
Redis client Mock Provide mock test for redis query

Redis client Mock Provide mock test for redis query, Compatible with github.com/go-redis/redis/v8 Install Confirm that you are using redis.Client the

null 129 Aug 2, 2022
Bxd redis benchmark - Redis benchmark tool for golang

使用 redis benchmark 工具, 测试 10 20 50 100 200 1k 5k 字节 value 大小,redis get set 性能。 r

bingxindan 0 Jan 22, 2022
A golang tool to view Redis data in terminal

Redis Viewer A tool to view Redis data in terminal. Usage: KeyBoard Description ctrl+c exit redis viewer ↑ previous key ↓ next key ← previous page → n

SaltFish 69 Aug 3, 2022
redis client implement by golang, inspired by jedis.

godis redis client implement by golang, refers to jedis. this library implements most of redis command, include normal redis command, cluster command,

piaohao 105 Jul 20, 2022
High-performance framework for building redis-protocol compatible TCP servers/services

Redeo The high-performance Swiss Army Knife for building redis-protocol compatible servers/services. Parts This repository is organised into multiple

Black Square Media 416 Aug 3, 2022
Go client for Redis

Redigo Redigo is a Go client for the Redis database. Features A Print-like API with support for all Redis commands. Pipelining, including pipelined tr

null 9.2k Jul 28, 2022
Type-safe Redis client for Golang

Redis client for Golang ❤️ Uptrace.dev - distributed traces, logs, and errors in one place Join Discord to ask questions. Documentation Reference Exam

null 15k Aug 2, 2022
Go Redis Client

xredis Built on top of github.com/garyburd/redigo with the idea to simplify creating a Redis client, provide type safe calls and encapsulate the low l

Raed Shomali 18 Jan 23, 2022
Simple key-value store abstraction and implementations for Go (Redis, Consul, etcd, bbolt, BadgerDB, LevelDB, Memcached, DynamoDB, S3, PostgreSQL, MongoDB, CockroachDB and many more)

gokv Simple key-value store abstraction and implementations for Go Contents Features Simple interface Implementations Value types Marshal formats Road

Philipp Gillé 452 Aug 2, 2022
godis - an old Redis client for Go

godis Implements a few database clients for Redis. There is a stable client and an experimental client, redis and exp, respectively. To use any of the

Simon Zimmermann 86 Apr 16, 2022
Google Go Client and Connectors for Redis

Go-Redis Go Clients and Connectors for Redis. The initial release provides the interface and implementation supporting the (~) full set of current Red

Joubin Houshyar 440 Jul 9, 2022
Redis client library for Go

go-redis go-redis is a Redis client library for the Go programming language. It's built on the skeleton of gomemcache. It is safe to use by multiple g

Alexandre Fiori 45 Jul 15, 2020
Type-safe Redis client for Golang

Redis client for Golang ❤️ Uptrace.dev - distributed traces, logs, and errors in one place Join Discord to ask questions. Documentation Reference Exam

null 15k Aug 1, 2022
Redis Sorted Sets Benchmark

redis-zbench-go Redis Sorted Sets Benchmark Overview This repo contains code to trigger load ( ZADD ) or query (ZRANGEBYLEX key min max) benchmarks, w

filipe oliveira 3 May 18, 2021
Examples and code to assign a name to your MongoDB, MySQL, PostgreSQL, RabbitMQ, and redis connection.

your connection deserves a name ?? When your app interacts with an external system, assign a name to the connection. An external system in this contex

Andy Grunwald 25 Feb 15, 2022
redis protocol server for go.

redigosrv what redis server侧的golang版本实现。 why 作为后端RD,你开发的,维护的最多的应该就是你的server,作为服务的提供方来说,想要和客户端进行有效的交互,首先要要能理解信息的含义,因此一套通信协议是必须的。 为什么选择redis协议,应用层有很多成熟的

Saner 7 Nov 30, 2021
A Golang implemented Redis Server and Cluster.

Godis is a golang implementation of Redis Server, which intents to provide an example of writing a high concurrent middleware using golang.

finley 2.1k Jul 30, 2022
Schema based, typed Redis caching/memoize framework for Go

cacheme - Redis Caching Framework For Go English | 中文 Statically Typed - 100% statically typed using code generation. Scale Efficiently - thundering h

null 20 Jun 14, 2022