Celery Flower to monitor task queue

Celery is a task queue that is to built an asynchronous message passing system. It can be used as a bucket where programming tasks can be dumped. The program that passed the task can continue to execute and function responsively.

To monitor the status of these celery tasks we use celery flower

The Celery Flower is a tool for monitoring your celery tasks and workers. It's web based and allows you to see task progress, details, worker status.

Install flower with pip

pip install flower

Install RabbitMQ

Celery requires a messaging agent in order to handle requests from an external source. This agent is referred to as a "broker".

RabbitMQ is the messaging server which powers this service. RabbitMQ does the following:

  • Listens for messages sent via the AMQP protocol.
  • Stores these messages in one or more queues.
  • Releases these messages to workers for consumption and processing.

RabbitMQ does not actually execute tasks. Rather, messages will be sent and stored in queue untill executed.

Install rabbitmq using

sudo apt-get install rabbitmq-server

 

Add broker_api url in your settings.py

RabbitMQ management api

broker_api = 'http://guest:guest@localhost:15672/api/'

# Enable debug logging

logging = 'DEBUG'

We need to configure RabbitMQ for message broker services before running the celery. Once the RabbitMQ is successfully started it can be checked using the web UI located at:

http://localhost:15672/

Usage

Once the Celery Flower is successfully started you can check using the web UI located at:

http://localhost:5555

Launch the server

$ flower --port=5555

Launch from celery

$ celery flower -A proj --address=127.0.0.1 --port=5555
    By Posted On
SENIOR DEVELOPER at MICROPYRAMID

Need any Help in your Project?Let's Talk

Latest Comments
Related Articles
Dynamic Models in Django-Part1 (adding new fields to models from admin) Siva Chittamuru

Some times in the production level there may be a chance of adding new fields to our model.With the normal django models when we add ...

Continue Reading...
Get count, average, min, max values from model field using Django Aggregate Ravi Kumar Gadila

To retrieve maximum, minimum or average values from group of rows we can use django Aggregation. For example to retrieve max price or avg price ...

Continue Reading...
Implement search with Django-haystack and Elasticsearch Part-1 Ravi Kumar Gadila

Haystack works as search plugin for django. You can use different back ends Elastic-search, Whose, Sorl, Xapian to search objects. All backends work with same ...

Continue Reading...
open source packages

Subscribe To our news letter

Subscribe and Stay Updated about our Webinars, news and articles on Django, Python, Machine Learning, Amazon Web Services, DevOps, Salesforce, ReactJS, AngularJS, React Native.
* We don't provide your email contact details to any third parties