Package: django-redisboard
Redis monitoring and inspection drop-in application using django admin.Free software: BSD 2-Clause LicenseFeaturesSever statistics in the admin changelistKey summary in the inspect viewValue introspection with pagination for lists and sorted setsDon’t have a django project?If you just want to run redisboard quickly do this:pip install django-redisboard
redisboardDon’t want to run on 0.0.0.0:8000? Run:redisboard ip:portWant a password that ain’t random (you might need torm-rf~/.redisboardfirst tho)? Run:redisboard --password=foobarInstallation guideInstall from pypi, with pip:pip install django-redisboardAddredisboardtoINSTALLED_APPS:INSTALLED_APPS += ("redisboard", )After that you need to run:manage.py migrateThen 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 collectstaticIf 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 settingsSetting nameDescriptionREDISBOARD_CONNECTION_POOL_OPTIONSExtra connection options. Default:{}. Example:REDISBOARD_CONNECTION_POOL_OPTIONS={'socket_timeout':60,'socket_connect_timeout':10}REDISBOARD_DECODER_CLASSDefault:'redisboard.data.UTF8BackslashReplaceDecoder'.REDISBOARD_DISPLAY_CLASSDefault:'redisboard.data.TabularDisplay'.REDISBOARD_VALUE_QUERY_CLASSDefault:'redisboard.data.ValueQuery'.REDISBOARD_LENGTH_QUERY_CLASSDefault:'redisboard.data.LengthQuery'.REDISBOARD_DETAIL_FILTERSA 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_DETAIL_CONVERTERSMapping of regexes to functions to convert those values. Checkout the sourcecode for what’s
available.REDISBOARD_SLOWLOG_NUMNumber of slowlog entries to show. Default:10.REDISBOARD_SCAN_COUNTCount used for the various scan commands. Affects pagination for key list and key details.
Default:1000.REDISBOARD_STRING_PAGINATIONCount used just for paginating string values. Default:10000ScreenshotsScreenshot of the changelist:Screenshot of inspecting:Screenshot of inspecting a sorted set:Screenshot of inspecting a db:Screenshot of inspecting a big string:Screenshot of inspecting a hash:Screenshot of inspecting a hash with binary values:Screenshot of inspecting a binary string:Screenshot of inspecting a binary key:Screenshot of inspecting a set:Documentationhttps://django-redisboard.readthedocs.org/en/latest/DevelopmentTo run the all tests run:toxChangelog8.4.0 (2022-11-16)Added more details in the changelist table (in addition to what is configured inREDISBOARD_DETAIL_FILTERS).Made some of the details in the changelist table more compact.8.3.1 (2022-10-10)Add missing dependency onattrs.8.3.0 (2022-05-20)Added a bunch of links to Change/Inspect/Details in various pages and cleaned up code some more.Improved simplified/styling a bit.8.2.2 (2022-05-19)Fix broken missing key check for databases different than the default one (usually 0) and render a full page instead of a text/plain 404.8.2.1 (2022-05-18)Fixed issue with key stats being empty for databases different than the default one (usually 0). Turns out pipelines open up a new
connection and need a select call.8.2.0 (2022-05-17)Added a full details page.Added some headings in inspect pages.Fixed model name in breadcrumbs.Fixed empty media in inspect pages.Fixed inspect page giving 500 error for unavailable servers.8.1.0 (2022-05-16)Added--versionCLI option.Changed redisboard CLI admin header to show version and also fixed incorrect context that prevented AdminSite customizations overriding
said header. Probably view site link also fixed.8.0.1 (2022-05-15)Fixed incorrect settings loading ofREDISBOARD_DETAIL_CONVERTERS.8.0.0 (2022-05-15)Dropped support for Python 3.6.Overhauled internals to support customization of redis queries, deserialization and display using custom classes.
For that purpose there are new settings:REDISBOARD_DECODER_CLASS,REDISBOARD_DISPLAY_CLASS,REDISBOARD_VALUE_QUERY_CLASSandREDISBOARD_LENGTH_QUERY_CLASS.Fixed various issues with pagination by simplifying it and making the use of cursors transparent to the user.
For this purpose thesampling_sizeandsampling_thresholdmodels fields have been removed, and theREDISBOARD_ITEMS_PER_PAGEwas removed and replaced withREDISBOARD_SCAN_COUNTandREDISBOARD_STRING_PAGINATION.Added new settingREDISBOARD_DETAIL_CONVERTERSfor customizing display of server details somewhat.Added new settingREDISBOARD_SLOWLOG_NUMoption for limiting the slowlow displayed.The default value for theREDISBOARD_DETAIL_FILTERSsetting was changed.Better connection management was implemented, both via render callbacks and__del__(as a fallback).
There shouldn’t be any connection leaks anymore. If the DEBUG setting is True then warnings
will be issued should any connection be closed via__del__.Added the--debug(to enable DEBUG and autoreload) and--decoder(to load a different data decoder) in theredisboardCLI.7.0.1 (2022-05-12)Fixed--passwordkilling the django session (it won’t change the password and invalidate session if it’s identical).Fixed some alignment regressions in the table cells.7.0.0 (2022-05-12)Removed some of the more expensive and frankly pointless stats computations.Fixed internal error that occurred for empty databases.Cleaned up more code (hopefully all the Python 2 is all gone now).Changed the inspect page to include all the stats from the changelist.Changed the stats display to use tables instead of definition lists.Changed the--passwordCLI option to update the password regardless if the local sqlite was created or not.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 adefault_auto_field- fixes Django complaining about missing migrations if you have a customDEFAULT_AUTO_FIELDin 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 theredisboardCLI with newer Django
(migrations will run now).Fixed ugettext deprecation.Added afavicon.icoand handler in theredisboardCLI.4.0.0 (2018-11-01)Fixed typo in inspect.html template to reflectout.Added Django 2.0 support. Contributed by Erik Telepovský
in#33.Converted therun_redisboard.pyscript to aredisboardbin 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.8Add 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 fromDEBUG OBJECT(LRU, Address, Length etc). NowOBJECT [REFCOUNT|ENCODING|IDLETIME]is used instead.BACKWARDS INCOMPATIBLE1.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 (noxrange).Fixed some issues therun_redisboard.pybootstrapper had with virtualenv.1.2.0 (2015-02-21)AddREDISBOARD_SOCKET_TIMEOUT,REDISBOARD_SOCKET_CONNECT_TIMEOUT,REDISBOARD_SOCKET_KEEPALIVEandREDISBOARD_SOCKET_KEEPALIVE_OPTIONSoptions.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.