Skip to main content

A Celery task monitoring dashboard for Django

Project description

django-saladbar

A Celery task monitoring dashboard for Django. Drop-in UI for monitoring workers, periodic tasks, queue depth, error grouping, and more.

Requirements

  • Python 3.10+
  • Django 4.2+
  • Celery 5.0+ with Redis broker
  • django-celery-beat
  • django-celery-results

Installation

pip install django-saladbar

Add to INSTALLED_APPS:

INSTALLED_APPS = [
    # ...
    "django_celery_results",
    "django_celery_beat",
    "saladbar",
]

Include the URL conf:

from django.urls import include, path

urlpatterns = [
    # ...
    path("saladbar/", include("saladbar.urls")),
]

Run migrations:

python manage.py migrate

Configuration

All settings are optional. Add to your Django settings.py:

# Template that saladbar pages extend.
# Must provide blocks: title, css, content, script-footer.
# Default: "saladbar/base.html" (ships with the package — includes Bootstrap 5 + FontAwesome)
SALADBAR_BASE_TEMPLATE = "myapp/base.html"

# Dotted path to your Celery app instance.
# Default: auto-discovered via celery.current_app
SALADBAR_CELERY_APP = "myproject.celery.app"

# Queue names to check for depth on the dashboard.
# Default: ("celery", "default", "bulk")
SALADBAR_QUEUE_NAMES = ("celery", "default", "high-priority")

Permissions

Saladbar defines two permissions:

  • saladbar.can_view_saladbar — required to access the dashboard and all read-only pages
  • saladbar.can_manage_saladbar — required to run tasks, revoke tasks, and purge queues

Assign these to users or groups via the Django admin.

Security note: Saladbar exposes Celery task metadata — task names, arguments, results, tracebacks, worker info, and Redis broker stats — to users with can_view_saladbar. Users with can_manage_saladbar can execute, revoke, and purge tasks. Grant these permissions carefully.

Features

  • Real-time worker status and pool utilization
  • 24h/7d task volume charts
  • Periodic task health tracking (on-schedule / missed / never-run)
  • 24-hour schedule timeline visualization
  • Queue depth and throughput monitoring
  • Redis broker info (memory, clients, hit rate, evictions)
  • In-flight task monitoring with long-running detection
  • Error grouping by exception type
  • Top tasks by volume with trend indicators
  • Slowest tasks by average runtime
  • Per-queue statistics
  • Stale task detection
  • Task execution history with runtime trend charts
  • Manual task execution and revocation
  • Queue purge
  • Auto-refresh with countdown timer

Development

git clone https://github.com/bartschwager/django-saladbar.git
cd django-saladbar
pip install -e ".[dev]"

License

MIT

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_saladbar-0.1.0.tar.gz (99.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

django_saladbar-0.1.0-py3-none-any.whl (104.8 kB view details)

Uploaded Python 3

File details

Details for the file django_saladbar-0.1.0.tar.gz.

File metadata

  • Download URL: django_saladbar-0.1.0.tar.gz
  • Upload date:
  • Size: 99.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for django_saladbar-0.1.0.tar.gz
Algorithm Hash digest
SHA256 2376b78142d2f3fec2f4df722ef8eeba1b0c83d2cf97cd0d7f2ce43c7f2d3fcd
MD5 fcbd66de0c70b548b70d25a0d89eced6
BLAKE2b-256 87845ca32fdf70fed6b240cd068d77582490d84e9320417b23a8fd98345357f4

See more details on using hashes here.

Provenance

The following attestation bundles were made for django_saladbar-0.1.0.tar.gz:

Publisher: publish.yml on artschwagerb/saladbar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file django_saladbar-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for django_saladbar-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2bbd92a51e258a097b8bd5f1c85e037e49db441a44c2f87e47e633d16694594a
MD5 2abece6fe52ea083c5ccb3808518d5f1
BLAKE2b-256 6a173f6bf6b66d988d858622edb88e2ed89ff52232f106a8ae0df8206d1b7190

See more details on using hashes here.

Provenance

The following attestation bundles were made for django_saladbar-0.1.0-py3-none-any.whl:

Publisher: publish.yml on artschwagerb/saladbar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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