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 2-Clause License

Features

  • Sever statistics in the admin changelist

  • Key summary in the inspect view

  • Value introspection with pagination for lists and sorted sets

Don’t have a django project?

If you just want to run redisboard quickly do this:

pip install django-redisboard
redisboard

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

redisboard ip:port

Want a password that ain’t random (you might need to rm -rf ~/.redisboard first tho)? Run:

redisboard --password=foobar

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 migrate

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

6.0.0 (2022-04-12)

  • Replaced the hostname/port fields with an url field. This allow SSL connection and whatever Redis will have in the future.

  • Removed more dead code.

5.0.0 (2022-01-27)

  • Drop support for old Python/Django. Minimum requirements are now Python 3.6 and Django 2.2.

  • Fixed various issues with newer Django (up to 4.0):

    • Fixed various deprecations and broken imports.

    • Added a default_auto_field - fixes Django complaining about missing migrations if you have a custom DEFAULT_AUTO_FIELD in settings.

4.1.1 (2020-07-28)

  • Improved exception handling for errors coming from redis. Now timeouts show the server as “DOWN” and other errors don’t result in a 500 page.

4.1.0 (2020-07-23)

  • Fixed a KeyError that could occur on fast changing databases. Contributed by Rand01ph in #39.

  • Added a port filter. Contributed by Rick van Hattem in #41.

  • Added support for Django 3. Contributed by Alireza Amouzadeh in #43.

  • Fixed issues that could occur when running the redisboard CLI with newer Django (migrations will run now).

  • Fixed ugettext deprecation.

  • Added a favicon.ico and handler in the redisboard CLI.

4.0.0 (2018-11-01)

  • Fixed typo in inspect.html template to reflect out.

  • Added Django 2.0 support. Contributed by Erik Telepovský in #33.

  • Converted the run_redisboard.py script to a redisboard bin and fixed Django 2.x issues.

  • Dropped support for Django older than 1.11.

  • Dropped support for Python older than 3.4 or 2.7.

  • Fixed issues with data being displayed as binary strings.

  • Fixed unwanted tag escaping. Contributed by Gilles Lavaux in #37.

3.0.2 (2017-01-19)

  • Fixed UnicodeDecodeError in “redisboard/admin.py” (fixes 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-6.0.0.tar.gz (310.5 kB view details)

Uploaded Source

Built Distribution

django_redisboard-6.0.0-py3-none-any.whl (49.1 kB view details)

Uploaded Python 3

File details

Details for the file django-redisboard-6.0.0.tar.gz.

File metadata

  • Download URL: django-redisboard-6.0.0.tar.gz
  • Upload date:
  • Size: 310.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.2

File hashes

Hashes for django-redisboard-6.0.0.tar.gz
Algorithm Hash digest
SHA256 d7e33294d2f04d82f23ff6e54793112d7edb1ae2a73bf1e0f0149e8574bff69e
MD5 4b15306501cc68be85989a91e982bf90
BLAKE2b-256 aa425a7e9b76e69e1ff9b23d9186aa40d61b59cae9ba3f937e3d7eb8d3a1da84

See more details on using hashes here.

File details

Details for the file django_redisboard-6.0.0-py3-none-any.whl.

File metadata

  • Download URL: django_redisboard-6.0.0-py3-none-any.whl
  • Upload date:
  • Size: 49.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.2

File hashes

Hashes for django_redisboard-6.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b6402d4dfbb8f4d63d2883d7dccf0221ecfd3bf8b19fdb8dd9c7d05c73395371
MD5 30f87752828829eece63d7cbc47dd4e0
BLAKE2b-256 c833e8a8e6cfe5d62cde1b2b439612cb116661c56d8fe17a252bb7b133937bde

See more details on using hashes here.

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