Skip to content

Latest commit

 

History

History
318 lines (197 loc) · 6.46 KB

config.rst

File metadata and controls

318 lines (197 loc) · 6.46 KB
tocdepth:2

Configuration

Flower can be configured from the command line:

$ flower --auto_refresh=False

Using :file:`flowerconfig.py` configuration file:

# RabbitMQ management api
broker_api = 'http://guest:guest@localhost:15672/api/'

# Enable debug logging
logging = 'DEBUG'

Or, using the environment variables. All flower options should be prefixed with FLOWER_:

$ export FLOWER_BASIC_AUTH=foo:bar

Options passed through the command line have precedence over the options defined in the configuration file. The configuration file name and path can be changed with conf option.

$ flower --conf=celeryconfig.py

Options

Standard Celery configuration settings can be overridden in the configuration file. See Celery Configuration reference for a complete listing of all the available settings, and their default values.

Celery command line options also can be passed to Flower. For example the --broker sets the default broker URL:

$ flower -A proj --broker=amqp://guest:guest@localhost:5672//

For a full list of options see:

$ celery --help

Run the http server on a given address. Address may be either an IP address or hostname. If it’s a hostname, the server will listen on all IP addresses associated with the name. Address may be an empty string or None to listen on all available interfaces.

Enables authentication. auth is a regexp of emails to grant access. For more info see :ref:`authentication`.

Refresh dashboards automatically (by default, auto_refresh=True)

Enables HTTP Basic authentication. basic_auth is a comma separated list of username:password. See :ref:`basic-auth` for more info.

Flower uses RabbitMQ Management Plugin to get info about queues. broker_api is a URL of RabbitMQ HTTP API including user credentials.

$ flower -A proj --broker_api=http://username:password@rabbitmq-server-name:15672/api/

Note

By default the management plugin is not enabled. To enable it run:

$ rabbitmq-plugins enable rabbitmq_management

Note

The port number for RabbitMQ versions prior to 3.0 is 55672.

A path to ca_certs file. The ca_certs file contains a set of concatenated “certification authority” certificates, which are used to validate certificates passed from the other end of the connection. For more info see Python SSL

A path to SSL certificate file

A path to the configuration file (by default, :file:`flowerconfig.py`)

A database file to use if persistent mode is enabled (by default, db=flower)

Enable the debug mode (by default, debug=False)

Periodically enable Celery events by using enable_events command (by default, enable_event=True)

Modifies the default task formatting. format_task function should be defined in the flowerconfig.py configuration file. It accepts a task object and returns the modified version.

format_task is useful for filtering out sensitive information.

The example below shows how to filter arguments and limit display lengths:

from flower.utils.template import humanize

def format_task(task):
    task.args = humanize(task.args, length=10)
    task.kwargs.pop('credit_card_number')
    task.result = humanize(task.result, length=20)
    return task

Sets worker inspect timeout (by default, inspect_timeout=1000 in milliseconds)

A path to SSL key file

Maximum number of workers to keep in memory (by default, max_workers=5000)

Maximum number of tasks to keep in memory (by default, max_tasks=10000)

Show time relative to the refresh time (by default, natural_time=True)

Enable persistent mode. If the persistent mode is enabled Flower saves the current state and reloads on restart (by default, persistent=False)

Run the http server on a given port (by default, port=5555)

Sets the interval for saving state. state_save_interval=0 means that periodic saving is disabled (by default, state_save_interval=0 in milliseconds)

Enable support of X-Real-Ip and X-Scheme headers (by default, xheaders=False)

Specifies list of comma-delimited columns on /tasks/ page. all value enables all columns. Columns on the page can be reordered using drag and drop.

(by default, tasks_columns="name,uuid,state,args,kwargs,result,received,started,runtime,worker")

Available columns are:

  • name
  • uuid
  • state
  • args
  • kwargs
  • result
  • received
  • started
  • runtime
  • worker
  • retries
  • revoked
  • exception
  • expires
  • eta

Enables deploying Flower on non-root URL

For example to access Flower on http://example.com/flower run it with:

$ flower --url_prefix=flower

NOTE: The old nginx rewrite is no longer needed

Run flower using UNIX socket file

Set a secret key for signing cookies

Sets authentication provider

  • Google flower.views.auth.GoogleAuth2LoginHandler
  • GitHub flower.views.auth.GithubLoginHandler
  • GitLab flower.views.auth.GitLabLoginHandler

See Authentication for usage examples

Time (in seconds) after which offline workers are automatically removed from dashboard.

If omitted, offline workers remain on the dashboard.