Skip to main content

Redis monitoring and inspection drop-in application using django admin.

Project description

Redis monitoring and inspection drop-in application using django admin.

  • Free software: BSD license

Features

  • Sever statistics in the admin changelist

  • Key summary in the inspect view

  • Value introspection with pagination for lists and sorted sets

Requirements

OS:

Any

Runtime:

Python 2.7, 3.4, 3.4 or PyPy

Services:

Redis 2.2 or later.

Packages:

Django>=1.8, py-redis>=2.10.0

Don’t have a django project ?

Use the quick start script ! It will create and run a django project on 0.0.0.0:8000 with just the redisboard installed.

With curl:

curl -L https://raw.github.com/ionelmc/django-redisboard/master/run_redisboard.py | tee run_redisboard.py | sh -e

With wget:

wget --no-check-certificate https://raw.github.com/ionelmc/django-redisboard/master/run_redisboard.py -O - | tee run_redisboard.py | sh -e

Don’t want to run on 0.0.0.0:8000 ? Run:

./run_redisboard.py ip:port

Installation guide

Install from pypi, with pip:

pip install django-redisboard

Or with setuptools:

easy_install django-redisboard

Add redisboard to INSTALLED_APPS:

INSTALLED_APPS += ("redisboard", )

After that you need to run:

manage.py syncdb

Or if you use south you can migrate this app:

manage.py migrate redisboard

Then you can add redis servers in the admin. You will see the stats in the changelist.

Redisboard has few css tweaks for the pages (they are optional). If you use staticfiles just run:

manage.py collectstatic

If you do not use django.contrib.staticfiles you must manually symlink the site-packages/redisboard/static/redisboard dir to <your media root>/redisboard.

Optional django settings

REDISBOARD_DETAIL_FILTERS

REDISBOARD_DETAIL_FILTERS - a list of regular expressions to match against the keys in the server details colum. Eg, to only show uptime and list of active databases:

REDISBOARD_DETAIL_FILTERS = ['uptime.*', 'db.*']

To show all the details just use:

REDISBOARD_DETAIL_FILTERS = ['.*']

REDISBOARD_ITEMS_PER_PAGE

REDISBOARD_ITEMS_PER_PAGE - default 100. Used for paginating the items from a list or a sorted set.

REDISBOARD_SOCKET_TIMEOUT

REDISBOARD_SOCKET_TIMEOUT - default None. Socket operations time out after this many seconds.

REDISBOARD_SOCKET_CONNECT_TIMEOUT

REDISBOARD_SOCKET_CONNECT_TIMEOUT - default None. Socket connect operation times out after this many seconds.

REDISBOARD_SOCKET_KEEPALIVE

REDISBOARD_SOCKET_KEEPALIVE - default None. Enables or Disables socket keepalive.

REDISBOARD_SOCKET_KEEPALIVE_OPTIONS

REDISBOARD_SOCKET_KEEPALIVE_OPTIONS - default None. Additional options for socket keepalive.

Screenshots

Changelist:

https://raw.githubusercontent.com/ionelmc/django-redisboard/master/docs/changelist.png

Inspect:

https://raw.githubusercontent.com/ionelmc/django-redisboard/master/docs/inspect.png

Inspect key details:

https://raw.githubusercontent.com/ionelmc/django-redisboard/master/docs/inspect-key.png

Documentation

https://django-redisboard.readthedocs.org/en/latest/

Development

To run the all tests run:

tox

Changelog

3.0.2 (2017-01-19)

  • Fixed UnicodeDecodeError in “redisboard/admin.py” (Issue #15). Contributed by Erik Telepovský in #29.

  • Fixed TypeError in “redisboard/admin.py”. Contributed by gabn88 in #28.

3.0.1 (2016-09-12)

  • Add supportfor Django 1.10. Contributed by Vincenzo Demasi in #26.

3.0.0 (2015-12-17)

  • Drop support for Django < 1.8

  • Add support for Django 1.9. Contributed by gabn88 in #25.

2.0.0 (2015-11-08)

  • Fix error handling in couple places. Now pages don’t return 500 errors if there’s something bad going on with the redis connection.

  • Remove key stats that came from DEBUG OBJECT (LRU, Address, Length etc). Now OBJECT [REFCOUNT|ENCODING|IDLETIME] is used instead. BACKWARDS INCOMPATIBLE

1.2.2 (2015-10-11)

  • Exception handling for AWS ElastiCache Redis or any Redis that does not have DEBUG OBJECT command.

  • Enabled Redis keys to be inspected despite not having details from DEBUG OBJECT command.

1.2.1 (2015-06-30)

  • Fixed a bug on Python 3 (no xrange).

  • Fixed some issues the run_redisboard.py bootstrapper had with virtualenv.

1.2.0 (2015-02-21)

  • Add REDISBOARD_SOCKET_TIMEOUT, REDISBOARD_SOCKET_CONNECT_TIMEOUT, REDISBOARD_SOCKET_KEEPALIVE and REDISBOARD_SOCKET_KEEPALIVE_OPTIONS options.

1.1.0 (2015-01-21)

  • Fix broken slowlog display.

1.0.0 (2014-12-10)

  • Show slowlog and cpu usage and more memory stats (contributed by Rick van Hattem)

  • Use pipelines to send commands for faster response (contributed by Rick van Hattem)

  • Added Python 3.3 and 3.4 support.

  • Added a test suite and other minor fixes.

0.2.7 (?)

  • N/A.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-redisboard-3.0.2.tar.gz (276.9 kB view hashes)

Uploaded Source

Built Distribution

django_redisboard-3.0.2-py2.py3-none-any.whl (22.3 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page