Redis Tools plugin for Fastpluggy
Project description
Redis Tools for FastPluggy
A powerful Redis browser and management plugin for FastPluggy applications. This plugin provides a user-friendly interface to browse, search, and manage Redis databases and keys.
Features
- Redis Browser UI: Intuitive web interface to browse and manage Redis data
- Multi-Database Support: Switch between Redis databases easily
- Key Management: View, search, and delete Redis keys
- Data Type Support: Full support for all Redis data types (string, list, hash, set, zset)
- Pickled Data Handling: Automatic detection and unpickling of Python pickled data
- TTL Management: View time-to-live for keys
- Database Flushing: Clear entire databases with confirmation
- Scheduled Cleanup: Optional scheduled task to clean expired keys (requires tasks_worker plugin)
Installation
- Install the official plugin package:
pip install fastpluggy-plugins
or
pip install fastpluggy-plugin-redis
- Add the plugin to your FastPluggy application:
There are several ways to add the plugin to your FastPluggy application:
Method 1: Using the Admin Interface
- Navigate to
/admin/pluginsin your FastPluggy application - Click on "Install New Plugin"
- Enter "redis_tools" as the plugin name
- Click "Install"
Method 2: Using the Configuration File
Add the plugin to your FastPluggy configuration file:
# config.py
FASTPLUGGY_PLUGINS = [
# other plugins...
"redis_tools",
]
Method 3: Programmatically
Add the plugin programmatically in your application code:
from fastapi import FastAPI
from fastpluggy import FastPluggy
app = FastAPI()
pluggy = FastPluggy(app)
# Add the Redis Tools plugin
pluggy.add_plugin("redis_tools")
For more detailed installation and configuration instructions, see the Installation Guide.
Configuration
Configure Redis Tools through environment variables or directly in your FastPluggy configuration:
| Setting | Description | Default |
|---|---|---|
REDIS_DSN |
Redis connection string (overrides other connection settings if provided) | None |
redis_host |
Redis server hostname | localhost |
redis_port |
Redis server port | 6379 |
redis_db |
Default Redis database index | 0 |
use_ssl |
Whether to use SSL for Redis connection | False |
redis_password |
Redis server password | None |
redis_decode_responses |
Whether to decode Redis responses | False |
keys_limit |
Maximum number of keys to display | 100 |
Usage
Web Interface
Once installed, access the Redis browser at /redis_tools/ in your FastPluggy application. The interface allows you to:
- Select and switch between Redis databases
- Search for keys using patterns (e.g.,
user:*) - View key details including type, TTL, and size
- Examine and format key values based on their data type
- Delete individual keys
- Flush entire databases
Programmatic Usage
You can also use the Redis Tools connector in your code:
from redis_tools.redis_connector import RedisConnection
# Create a connection
redis_conn = RedisConnection()
# Test connection
if redis_conn.test_connection():
# Get all keys matching a pattern
keys = redis_conn.get_keys("user:*")
# Get details for a specific key
key_details = redis_conn.get_key_details("user:1001")
# Switch to another database
redis_conn.select_db(2)
# Delete a key
redis_conn.delete_key("temporary_key")
Development
Requirements
- Python 3.10+
- FastPluggy
- Redis
Testing
Run tests with pytest:
cd redis_tools
pip install -r tests/requirements.txt
pytest
License
This project is licensed under the MIT License - see the LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file fastpluggy_redis-0.0.15.tar.gz.
File metadata
- Download URL: fastpluggy_redis-0.0.15.tar.gz
- Upload date:
- Size: 17.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
eeabb055eafd16e7e4e54fde2ab677c848b7ba94909959a45ab7b402be897f0d
|
|
| MD5 |
1e67bf47659fb32b202020856a574756
|
|
| BLAKE2b-256 |
19d956f32b9352ccf30bdbbd397fffbb6c6c3ae1fb8538c5d77ac4f22f2f8767
|
File details
Details for the file fastpluggy_redis-0.0.15-py3-none-any.whl.
File metadata
- Download URL: fastpluggy_redis-0.0.15-py3-none-any.whl
- Upload date:
- Size: 20.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
67f0cdeade97d9d684d3762be073f60c4422ba35e5a08216bac0dc514b409847
|
|
| MD5 |
987187ecc0d3809e2a4cecbf0d1b8b67
|
|
| BLAKE2b-256 |
be64336b34c49527e28391c298ce3a1759c00939c52673b9e18c10f400b21343
|