Skip to main content

Celery monitoring and management for Django admin

Project description

django-celeryx

PyPI version Python versions CI

Celery monitoring and management for Django admin. Like Flower, but embedded in your Django admin with htmx for real-time updates.

Installation

pip install django-celeryx[celery]

Or with celery-asyncio:

pip install django-celeryx[celery-asyncio]

Quick Start

INSTALLED_APPS = [
    # ...
    "django_celeryx.admin",
]

That's it. Start your Django server and navigate to the admin to see your Celery tasks and workers.

Features

  • Real-time task monitoring — Live task list with state, args, result, timing, auto-refreshing via htmx
  • Worker management — View worker status, pool info, active queues, configuration
  • Control actions — Revoke/terminate tasks, shutdown/restart workers, manage pools and queues
  • Broker overview — Queue names, routing keys, consumer counts
  • Django admin native — Looks and feels like standard Django admin, no separate service to run
  • Database persistence — All state persisted to database (dedicated SQLite file by default, or any Django database)
  • Registered tasks — Browse all registered task types, link to filtered task list

Task Monitoring

The task list shows all Celery tasks with color-coded states:

  • PENDING (grey), RECEIVED (yellow), STARTED (blue), SUCCESS (green), FAILURE (red), RETRY (orange), REVOKED (purple)

Configurable columns via TASK_COLUMNS setting.

Worker Management

Worker detail view with tabbed interface (matching Flower):

  • Pool — Pool type, concurrency, processes. Controls: grow/shrink, autoscale
  • Queues — Active queues. Controls: add/cancel consumer
  • Tasks — Processed counts, active/scheduled/reserved/revoked tasks
  • Limits — Rate limits and timeouts
  • Config — Full worker Celery configuration
  • Stats — System resource usage, broker connection info

Control Actions

Full control parity with Flower:

  • Revoke / terminate / abort tasks
  • Shutdown / restart worker pool
  • Grow / shrink pool, set autoscale
  • Add / cancel queue consumer
  • Set rate limits and time limits

Configuration

CELERYX = {
    "MAX_TASK_COUNT": 100_000,
    "MAX_TASK_AGE": 86400,  # 24 hours
    "AUTO_REFRESH_INTERVAL": 3,
    "TASK_COLUMNS": ["name", "uuid", "state", "worker", "received", "started", "runtime"],
}

Unfold Theme

For django-unfold users:

INSTALLED_APPS = [
    "unfold",
    # ...
    "django_celeryx.unfold",  # instead of django_celeryx.admin
]

Documentation

Full documentation at oliverhaas.github.io/django-celeryx

Requirements

  • Python 3.12+
  • Django 5.2+
  • Celery 5.4+ or celery-asyncio 6.0+

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_celeryx-0.1.0a2.tar.gz (40.4 kB view details)

Uploaded Source

Built Distribution

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

django_celeryx-0.1.0a2-py3-none-any.whl (55.7 kB view details)

Uploaded Python 3

File details

Details for the file django_celeryx-0.1.0a2.tar.gz.

File metadata

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

File hashes

Hashes for django_celeryx-0.1.0a2.tar.gz
Algorithm Hash digest
SHA256 b9be4f047a6d4805b014a7acad8d4392c44eafc580b360eff26d557418760f21
MD5 95610a2ade78e56e296cda1fe13059d7
BLAKE2b-256 aae0346c244abc43598fd458b18721bb21e89df91d0b6fc6e3019e3dd49130d5

See more details on using hashes here.

Provenance

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

Publisher: publish.yml on oliverhaas/django-celeryx

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_celeryx-0.1.0a2-py3-none-any.whl.

File metadata

File hashes

Hashes for django_celeryx-0.1.0a2-py3-none-any.whl
Algorithm Hash digest
SHA256 b137dbc54d0efbe3b43158f23468ed3169203ac08347761a673a5a2be68d28ac
MD5 7289df0ef4cf7b61cefbad26f2b90102
BLAKE2b-256 1577e51d3af8e224bf97ac8ca7dc74cb9d4e4ce457fc9b33e3791ef575396f0c

See more details on using hashes here.

Provenance

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

Publisher: publish.yml on oliverhaas/django-celeryx

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