Skip to main content

Django Celery Flower

Project description

Flower is a web based tool for monitoring and administrating Celery clusters.

Features

  • Real-time monitoring using Celery Events

    • Task progress and history

    • Ability to show task details (arguments, start time, runtime, and more)

    • Graphs and statistics

  • Remote Control

    • View worker status and statistics

    • Shutdown and restart worker instances

    • Control worker pool size and autoscale settings

    • View and modify the queues a worker instance consumes from

    • View currently running tasks

    • View scheduled tasks (ETA/countdown)

    • View reserved and revoked tasks

    • Apply time and rate limits

    • Configuration viewer

    • Revoke or terminate tasks

  • Broker monitoring

    • View statistics for all Celery queues

    • Queue length graphs

  • HTTP API

  • Basic Auth and Google OpenID authentication

API (TODO)

Flower API enables to manage the cluster via REST API, call tasks and receive task events in real-time via WebSockets.

For example you can restart worker’s pool by:

$ curl -X POST http://localhost:5555/api/worker/pool/restart/myworker

Or call a task by:

$ curl -X POST -d '{"args":[1,2]}' http://localhost:5555/api/task/async-apply/tasks.add

Or terminate executing task by:

$ curl -X POST -d 'terminate=True' http://localhost:5555/api/task/revoke/8a4da87b-e12b-4547-b89a-e92e4d1f8efd

Or receive task completion events in real-time:

var ws = new WebSocket('ws://localhost:5555/api/task/events/task-succeeded/');
ws.onmessage = function (event) {
    console.log(event.data);
}

For more info checkout API Reference and examples.

Requirements

  • Django >= 1.11.222

  • Celery >= 4.3

  • jinja2 >= 2.10.1

Installation

PyPI version:

$ pip install django-flower

Development version:

$ pip install https://github.com/alexsilva/django-flower/zipball/master

Usage

Add app flower to django installed apps:

INSTALLED_APPS = [
    ...
    'flower'
]

Run the event command:

$ python manage flower_events

Documentation

Everything that needs to be configured in the sample project

flower_events - is a django command that serves as a backend and should run in the background.

Django settings variable:

FLOWER_RPC_HOST
FLOWER_RPC_PORT
FLOWER_INSPECT_TIMEOUT
FLOWER_AUTH
FLOWER_BASIC_AUTH
FLOWER_OAUTH2_KEY
FLOWER_OAUTH2_SECRET
FLOWER_OAUTH2_REDIRECT_URI
FLOWER_MAX_WORKERS
FLOWER_MAX_TASKS
FLOWER_DB
FLOWER_PERSISTENT
FLOWER_BROKER_API
FLOWER_CA_CERTS
FLOWER_CERTFILE
FLOWER_KEYFILE
FLOWER_XHEADERS
FLOWER_AUTO_REFRESH
FLOWER_COOKIE_SECRET
FLOWER_ENABLE_EVENTS
FLOWER_FORMAT_TASK
FLOWER_NATURAL_TIME
FLOWER_TASKS_COLUMNS
FLOWER_AUTH_PROVIDER
FLOWER_INSPECT

License

Flower is licensed under BSD 3-Clause License. See the LICENSE file in the top distribution directory for the full license text.

Getting help

Please head over to #celery IRC channel on irc.freenode.net or open an issue.

Contributing

If you’d like to contribute, simply fork the repository, commit your changes, run the tests (tox) and send a pull request. Make sure you add yourself to CONTRIBUTORS.

If you are interested in maintaining the project please contact.

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-flower-1.0.0.tar.gz (1.3 MB view details)

Uploaded Source

Built Distribution

django_flower-1.0.0-py2.py3-none-any.whl (458.2 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file django-flower-1.0.0.tar.gz.

File metadata

  • Download URL: django-flower-1.0.0.tar.gz
  • Upload date:
  • Size: 1.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.0 requests-toolbelt/0.8.0 tqdm/4.29.1 CPython/3.7.2

File hashes

Hashes for django-flower-1.0.0.tar.gz
Algorithm Hash digest
SHA256 72d8ff8a97b69a7a6759010e1ec157ae5c6cb24ccdfa7e4031e5c22878ab75b9
MD5 024e75f7a407df475b0a87b119be933b
BLAKE2b-256 b186d572cd5bc02dd241187cb74d3a7bf89d626ef03e3e57b44ec6cd90b0b248

See more details on using hashes here.

File details

Details for the file django_flower-1.0.0-py2.py3-none-any.whl.

File metadata

  • Download URL: django_flower-1.0.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 458.2 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.0 requests-toolbelt/0.8.0 tqdm/4.29.1 CPython/3.7.2

File hashes

Hashes for django_flower-1.0.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 ba1efba4c8457e4d2b82819e9cd7ab9a7a41ff010104b379aa64135b2bae1bbf
MD5 7b4263ae7fffc3816d25467967d4921e
BLAKE2b-256 1b3055e70fc27b8697ef8bd67ef8d816d8fc5141551bebd976ad480faca38621

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