This document describes the current stable version of Celery (5.5). For development docs, go here.
Command Line Interface¶
Note
The prefix CELERY_ must be added to the names of the environment variables described below. E.g., APP becomes CELERY_APP.
celery¶
Celery command entrypoint.
celery[OPTIONS]COMMAND[ARGS]...
Options
- -A, --app <app>¶
- -b, --broker <broker>¶
- --result-backend <result_backend>¶
- --loader <loader>¶
- --config <config>¶
- --workdir <workdir>¶
- -C, --no-color¶
- -q, --quiet¶
- --version¶
- --skip-checks¶
Skip Django core checks on startup. Setting the SKIP_CHECKS environment variable to any non-empty string will have the same effect.
Environment variables
- APP
Provide a default for
-A
- BROKER_URL
Provide a default for
-b
- RESULT_BACKEND
Provide a default for
--result-backend
- LOADER
Provide a default for
--loader
- CONFIG_MODULE
Provide a default for
--config
- NO_COLOR
Provide a default for
-C
- SKIP_CHECKS
Provide a default for
--skip-checks
amqp¶
AMQP Administration Shell.
Also works for non-AMQP transports (but not ones that store declarations in memory).
celeryamqp[OPTIONS]COMMAND[ARGS]...
basic.ack¶
celeryamqpbasic.ack[OPTIONS]DELIVERY_TAG
Arguments
- DELIVERY_TAG¶
Required argument
basic.get¶
celeryamqpbasic.get[OPTIONS]QUEUE[NO_ACK]
Arguments
- QUEUE¶
Required argument
- NO_ACK¶
Optional argument
basic.publish¶
celeryamqpbasic.publish[OPTIONS]MSGEXCHANGEROUTING_KEY[MANDATORY] [IMMEDIATE]
Arguments
- MSG¶
Required argument
- EXCHANGE¶
Required argument
- ROUTING_KEY¶
Required argument
- MANDATORY¶
Optional argument
- IMMEDIATE¶
Optional argument
exchange.declare¶
celeryamqpexchange.declare[OPTIONS]EXCHANGETYPE[PASSIVE][DURABLE] [AUTO_DELETE]
Arguments
- EXCHANGE¶
Required argument
- TYPE¶
Required argument
- PASSIVE¶
Optional argument
- DURABLE¶
Optional argument
- AUTO_DELETE¶
Optional argument
exchange.delete¶
celeryamqpexchange.delete[OPTIONS]EXCHANGEIF_UNUSED
Arguments
- EXCHANGE¶
Required argument
- IF_UNUSED¶
Required argument
queue.bind¶
celeryamqpqueue.bind[OPTIONS]QUEUEEXCHANGEROUTING_KEY
Arguments
- QUEUE¶
Required argument
- EXCHANGE¶
Required argument
- ROUTING_KEY¶
Required argument
queue.declare¶
celeryamqpqueue.declare[OPTIONS]QUEUE[PASSIVE][DURABLE][AUTO_DELETE]
Arguments
- QUEUE¶
Required argument
- PASSIVE¶
Optional argument
- DURABLE¶
Optional argument
- AUTO_DELETE¶
Optional argument
queue.delete¶
celeryamqpqueue.delete[OPTIONS]QUEUE[IF_UNUSED][IF_EMPTY]
Arguments
- QUEUE¶
Required argument
- IF_UNUSED¶
Optional argument
- IF_EMPTY¶
Optional argument
queue.purge¶
celeryamqpqueue.purge[OPTIONS]QUEUE
Arguments
- QUEUE¶
Required argument
repl¶
Start an interactive shell. All subcommands are available in it.
- param old_ctx:
The current Click context.
- param prompt_kwargs:
Parameters passed to
prompt_toolkit.PromptSession()
.
If stdin is not a TTY, no prompt will be printed, but only commands read from stdin.
celeryamqprepl[OPTIONS]
beat¶
Start the beat periodic task scheduler.
celerybeat[OPTIONS]
Options
- --detach¶
Detach and run in the background as a daemon.
- -s, --schedule <schedule>¶
Path to the schedule database. Defaults to celerybeat-schedule.The extension ‘.db’ may be appended to the filename.
- -S, --scheduler <scheduler>¶
Scheduler class to use.
- --max-interval <max_interval>¶
Max seconds to sleep between schedule iterations.
- -l, --loglevel <loglevel>¶
Logging level.
- Options:
DEBUG | INFO | WARNING | ERROR | CRITICAL | FATAL
- -f, --logfile <logfile>¶
Log destination; defaults to stderr
- --pidfile <pidfile>¶
PID file path; defaults to no PID file
- --uid <uid>¶
Drops privileges to this user ID
- --gid <gid>¶
Drops privileges to this group ID
- --umask <umask>¶
Create files and directories with this umask
- --executable <executable>¶
Override path to the Python executable
call¶
Call a task by name.
celerycall[OPTIONS]NAME
Options
- -a, --args <args>¶
Positional arguments.
- -k, --kwargs <kwargs>¶
Keyword arguments.
- --eta <eta>¶
scheduled time.
- --countdown <countdown>¶
eta in seconds from now.
- --expires <expires>¶
expiry time.
- --serializer <serializer>¶
task serializer.
- --queue <queue>¶
custom queue name.
- --exchange <exchange>¶
custom exchange name.
- --routing-key <routing_key>¶
custom routing key.
Arguments
- NAME¶
Required argument
control¶
Send the COMMAND control command to the workers.
Availability: RabbitMQ (AMQP), Redis, and MongoDB transports.
celerycontrol[OPTIONS]COMMAND
Options
- --list¶
List available control commands and exit.
- -t, --timeout <timeout>¶
Timeout in seconds waiting for reply.
- -d, --destination <destination>¶
Comma separated list of destination node names.
- -j, --json¶
Use json as output format.
Arguments
- COMMAND¶
Required argument
events¶
Event-stream utilities.
celeryevents[OPTIONS]
Options
- -d, --dump¶
- -c, --camera <camera>¶
- -d, --detach¶
- -F, --frequency, --freq <frequency>¶
- -r, --maxrate <maxrate>¶
- -l, --loglevel <loglevel>¶
Logging level.
- Options:
DEBUG | INFO | WARNING | ERROR | CRITICAL | FATAL
- -f, --logfile <logfile>¶
Log destination; defaults to stderr
- --pidfile <pidfile>¶
PID file path; defaults to no PID file
- --uid <uid>¶
Drops privileges to this user ID
- --gid <gid>¶
Drops privileges to this group ID
- --umask <umask>¶
Create files and directories with this umask
- --executable <executable>¶
Override path to the Python executable
graph¶
The celery graph
command.
celerygraph[OPTIONS]COMMAND[ARGS]...
bootsteps¶
Display bootsteps graph.
celerygraphbootsteps[OPTIONS]
workers¶
Display workers graph.
celerygraphworkers[OPTIONS]
inspect¶
Inspect the workers by sending them the COMMAND inspect command.
Availability: RabbitMQ (AMQP) and Redis transports.
celeryinspect[OPTIONS]COMMAND
Options
- --list¶
List available inspect commands and exit.
- -t, --timeout <timeout>¶
Timeout in seconds waiting for reply.
- -d, --destination <destination>¶
Comma separated list of destination node names.
- -j, --json¶
Use json as output format.
Arguments
- COMMAND¶
Required argument
list¶
Get info from broker.
Note:
For RabbitMQ the management plugin is required.
celerylist[OPTIONS]COMMAND[ARGS]...
bindings¶
Inspect queue bindings.
celerylistbindings[OPTIONS]
logtool¶
The celery logtool
command.
celerylogtool[OPTIONS]COMMAND[ARGS]...
debug¶
celerylogtooldebug[OPTIONS][FILES]...
Arguments
- FILES¶
Optional argument(s)
errors¶
celerylogtoolerrors[OPTIONS][FILES]...
Arguments
- FILES¶
Optional argument(s)
incomplete¶
celerylogtoolincomplete[OPTIONS][FILES]...
Arguments
- FILES¶
Optional argument(s)
stats¶
celerylogtoolstats[OPTIONS][FILES]...
Arguments
- FILES¶
Optional argument(s)
traces¶
celerylogtooltraces[OPTIONS][FILES]...
Arguments
- FILES¶
Optional argument(s)
migrate¶
Migrate tasks from one broker to another.
Warning:
This command is experimental, make sure you have a backup of the tasks before you continue.
celerymigrate[OPTIONS]SOURCEDESTINATION
Options
- -n, --limit <limit>¶
Number of tasks to consume.
- -t, --timeout <timeout>¶
Timeout in seconds waiting for tasks.
- -a, --ack-messages¶
Ack messages from source broker.
- -T, --tasks <tasks>¶
List of task names to filter on.
- -Q, --queues <queues>¶
List of queues to migrate.
- -F, --forever¶
Continually migrate tasks until killed.
Arguments
- SOURCE¶
Required argument
- DESTINATION¶
Required argument
multi¶
Start multiple worker instances.
celerymulti[OPTIONS]
purge¶
Erase all messages from all known task queues.
Warning:
There’s no undo operation for this command.
celerypurge[OPTIONS]
Options
- -f, --force¶
Don’t prompt for verification.
- -Q, --queues <queues>¶
Comma separated list of queue names to purge.
- -X, --exclude-queues <exclude_queues>¶
Comma separated list of queues names not to purge.
report¶
Shows information useful to include in bug-reports.
celeryreport[OPTIONS]
result¶
Print the return value for a given task id.
celeryresult[OPTIONS]TASK_ID
Options
- -t, --task <task>¶
Name of task (if custom backend).
- --traceback¶
Show traceback instead.
Arguments
- TASK_ID¶
Required argument
shell¶
Start shell session with convenient access to celery symbols.
The following symbols will be added to the main globals:
- celery
: the current application.
- chord
, group
, chain
, chunks
,
xmap
,xstarmap
subtask
,Task
all registered tasks.
celeryshell[OPTIONS]
Options
- -I, --ipython¶
Force IPython.
- -B, --bpython¶
Force bpython.
- --python¶
Force default Python shell.
- -T, --without-tasks¶
Don’t add tasks to locals.
- --eventlet¶
Use eventlet.
- --gevent¶
Use gevent.
status¶
Show list of workers that are online.
celerystatus[OPTIONS]
Options
- -t, --timeout <timeout>¶
Timeout in seconds waiting for reply.
- -d, --destination <destination>¶
Comma separated list of destination node names.
- -j, --json¶
Use json as output format.
upgrade¶
Perform upgrade between versions.
celeryupgrade[OPTIONS]COMMAND[ARGS]...
settings¶
Migrate settings from Celery 3.x to Celery 4.x.
celeryupgradesettings[OPTIONS]FILENAME
Options
- --django¶
Upgrade Django project.
- --compat¶
Maintain backwards compatibility.
- --no-backup¶
Don’t backup original files.
Arguments
- FILENAME¶
Required argument
worker¶
Start worker instance.
celeryworker[OPTIONS]
Options
- -n, --hostname <hostname>¶
Set custom hostname (e.g., ‘w1@%%h’). Expands: %%h (hostname), %%n (name) and %%d, (domain).
- -D, --detach¶
Start worker as a background process.
- -S, --statedb <statedb>¶
Path to the state database. The extension ‘.db’ may be appended to the filename.
- -l, --loglevel <loglevel>¶
Logging level.
- Options:
DEBUG | INFO | WARNING | ERROR | CRITICAL | FATAL
- -O, --optimization <optimization>¶
Apply optimization profile.
- Options:
default | fair
- --prefetch-multiplier <prefetch multiplier>¶
Set custom prefetch multiplier value for this worker instance.
- --disable-prefetch¶
Disable broker prefetching. The worker will only fetch a task when a process slot is available.
- -c, --concurrency <concurrency>¶
Number of child processes processing the queue. The default is the number of CPUs available on your system.
- -P, --pool <pool>¶
Pool implementation.
- Options:
prefork | eventlet | gevent | solo | processes | threads | custom
- -E, --task-events, --events¶
Send task-related events that can be captured by monitors like celery events, celerymon, and others.
- --time-limit <time_limit>¶
Enables a hard time limit (in seconds int/float) for tasks.
- --soft-time-limit <soft_time_limit>¶
Enables a soft time limit (in seconds int/float) for tasks.
- --max-tasks-per-child <max_tasks_per_child>¶
Maximum number of tasks a pool worker can execute before it’s terminated and replaced by a new worker.
- --max-memory-per-child <max_memory_per_child>¶
Maximum amount of resident memory, in KiB, that may be consumed by a child process before it will be replaced by a new one. If a single task causes a child process to exceed this limit, the task will be completed and the child process will be replaced afterwards. Default: no limit.
- --purge, --discard¶
- -Q, --queues <queues>¶
- -X, --exclude-queues <exclude_queues>¶
- -I, --include <include>¶
- --without-gossip¶
- --without-mingle¶
- --without-heartbeat¶
- --heartbeat-interval <heartbeat_interval>¶
- --autoscale <autoscale>¶
- -B, --beat¶
- -s, --schedule-filename, --schedule <schedule_filename>¶
- --scheduler <scheduler>¶
- -f, --logfile <logfile>¶
Log destination; defaults to stderr
- --pidfile <pidfile>¶
PID file path; defaults to no PID file
- --uid <uid>¶
Drops privileges to this user ID
- --gid <gid>¶
Drops privileges to this group ID
- --umask <umask>¶
Create files and directories with this umask
- --executable <executable>¶
Override path to the Python executable