Visualize your redis instances, analyze query patterns and spikes.
Install Dependencies
- tornado
pip install tornado
- [redis.py] (https://github.com/andymccurdy/redis-py)
pip install redis
- [python-dateutil] (http://labix.org/python-dateutil)
pip install python-dateutil
You'll also need argparse if you're running Python < 2.7:
- [argparse] (http://code.google.com/p/argparse/)
pip install argparse
Get RedisLive
- Clone the repo
git clone https://github.com/kumarnitin/RedisLive.git
, or download the latest release
Configuration
- edit redis-live.conf :
- update the value of the key
RedisServers
to the redis instances you want to monitor. You can monitor multiple instances by appending more values to the RedisServers list. - update the value of the key
RedisStatsServer
to the redis instance you will use to store RedisLive data (this redis instance is different from the redis instances you are monitoring). - passwords can be added as an optional parameter for any redis instance
- update the value of the key
if you don't have a spare redis instance to use to store RedisLive data, then you can configure RedisLive to use sqlite by changing to "DataStoreType" : "sqlite"
Start RedisLive
- start the monitoring script
./redis-monitor.py --duration=120
duration is in seconds (see caveat) - start the webserver
./redis-live.py
- RedisLive is now running @
http://localhost:8888/index.html
Currently the only hook into monitoring a redis instance is Redis MONITOR command, which streams back every command processed and reduces the throughput of the redis instance. It is recommended to run redis-monitor with --duration suitable for your redis deployment and scheduling it to run periodically as a cron job.
Have feedback, feature request or improvements you'd like to see? Drop me a note @nkrode or just fork and send a pull request :-)
Nitin Kumar
- bialecki (Andrew Bialecki)
- reustle (Shane Reustle)
- markdube (Mark Dube)
- skreuzer (Steven Kreuzer)
- snikch (Mal Curtis)
RedisLive is released under the MIT license: