Configuration — Flower 1.0.1 documentation

# Configuration

Flower can be configured from the command line:

    $ flower --auto_refresh=False

Using `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

- address

- auth

- auto_refresh

- basic_auth

- broker_api

- ca_certs

- certfile

- conf

- db

- debug

- enable_events

- format_task

- inspect_timeout

- keyfile

- max_workers

- max_tasks

- natural_time

- persistent

- port

- xheaders

- tasks_columns

- url_prefix

- unix_socket

- cookie_secret

- auth_provider

- purge_offline_workers

### address

Run the http server on a given address

### auth

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

### auto_refresh

Refresh dashboards automatically (by default, auto_refresh=True)

### basic_auth

Enables HTTP Basic authentication. basic_auth is a comma separated list of username:password. See HTTP Basic Authentication for more info.

### broker_api

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.

### ca_certs

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

### certfile

A path to SSL certificate file

### conf

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

### db

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

### debug

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

### enable_events

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

### format_task

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

### inspect_timeout

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

### keyfile

A path to SSL key file

### max_workers

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

### max_tasks

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

### natural_time

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

### persistent

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

### port

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

### xheaders

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

### tasks_columns

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

### url_prefix

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

### unix_socket

Run flower using UNIX socket file

### cookie_secret

Set a secret key for signing cookies

### auth_provider

Sets authentication provider

> - Google flower.views.auth.GoogleAuth2LoginHandler

> - GitHub flower.views.auth.GithubLoginHandler

> - GitLab flower.views.auth.GitLabLoginHandler

See Authentication for usage examples

### purge_offline_workers

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

If omitted, offline workers remain on the dashboard.