This document describes the current stable version of Celery (5.6). For development docs, go here.

# `celery.worker.control`

Worker remote control command implementations.

class celery.worker.control.Panel(dict=None, /, **kwargs)

  Global registry of remote control commands.

  data = {'active': <function active>, 'active_queues': <function active_queues>, 'add_consumer': <function add_consumer>, 'autoscale': <function autoscale>, 'cancel_consumer': <function cancel_consumer>, 'clock': <function clock>, 'conf': <function conf>, 'disable_events': <function disable_events>, 'dump_active': <function active>, 'dump_conf': <function conf>, 'dump_reserved': <function reserved>, 'dump_revoked': <function revoked>, 'dump_schedule': <function scheduled>, 'dump_tasks': <function registered>, 'election': <function election>, 'enable_events': <function enable_events>, 'heartbeat': <function heartbeat>, 'hello': <function hello>, 'memdump': <function memdump>, 'memsample': <function memsample>, 'objgraph': <function objgraph>, 'ping': <function ping>, 'pool_grow': <function pool_grow>, 'pool_restart': <function pool_restart>, 'pool_shrink': <function pool_shrink>, 'query_task': <function query_task>, 'rate_limit': <function rate_limit>, 'registered': <function registered>, 'report': <function report>, 'reserved': <function reserved>, 'revoke': <function revoke>, 'revoke_by_stamped_headers': <function revoke_by_stamped_headers>, 'revoked': <function revoked>, 'scheduled': <function scheduled>, 'shutdown': <function shutdown>, 'stats': <function stats>, 'terminate': <function terminate>, 'time_limit': <function time_limit>}
  meta = {'active': ('dump_active', 'inspect', True, 1.0, 'List of tasks currently being executed.', None, None, None), 'active_queues': (None, 'inspect', True, 1.0, 'List the task queues a worker is currently consuming from.', None, None, None), 'add_consumer': (None, 'control', True, 1.0, 'Tell worker(s) to consume from task queue by name.', '<queue> [exchange [type [routing_key]]]', [('queue', <class 'str'>), ('exchange', <class 'str'>), ('exchange_type', <class 'str'>), ('routing_key', <class 'str'>)], None), 'autoscale': (None, 'control', True, 1.0, 'Modify autoscale settings.', '[max [min]]', [('max', <class 'int'>), ('min', <class 'int'>)], None), 'cancel_consumer': (None, 'control', True, 1.0, 'Tell worker(s) to stop consuming from task queue by name.', '<queue>', [('queue', <class 'str'>)], None), 'clock': (None, 'inspect', True, 1.0, 'Get current logical clock value.', None, None, None), 'conf': ('dump_conf', 'inspect', True, 1.0, 'List configuration.', '[include_defaults=False]', [('with_defaults', <function strtobool>)], None), 'disable_events': (None, 'control', True, 1.0, 'Tell worker(s) to stop sending task-related events.', None, None, None), 'election': (None, 'control', True, 1.0, 'Hold election.', None, None, None), 'enable_events': (None, 'control', True, 1.0, 'Tell worker(s) to send task-related events.', None, None, None), 'heartbeat': (None, 'control', True, 1.0, 'Tell worker(s) to send event heartbeat immediately.', None, None, None), 'hello': (None, 'inspect', False, 1.0, 'Request mingle sync-data.', None, None, None), 'memdump': (None, 'inspect', True, 1.0, 'Dump statistics of previous memsample requests.', '[n_samples=10]', [('samples', <class 'int'>)], None), 'memsample': (None, 'inspect', True, 1.0, 'Sample current RSS memory usage.', None, None, None), 'objgraph': (None, 'inspect', True, 60.0, 'Create graph of uncollected objects (memory-leak debugging).', '[object_type=Request] [num=200 [max_depth=10]]', [('type', <class 'str'>), ('num', <class 'int'>), ('max_depth', <class 'int'>)], None), 'ping': (None, 'inspect', True, 0.2, 'Ping worker(s).', None, None, None), 'pool_grow': (None, 'control', True, 1.0, 'Grow pool by n processes/threads.', '[N=1]', [('n', <class 'int'>)], None), 'pool_restart': (None, 'control', True, 1.0, 'Restart execution pool.', None, None, None), 'pool_shrink': (None, 'control', True, 1.0, 'Shrink pool by n processes/threads.', '[N=1]', [('n', <class 'int'>)], None), 'query_task': (None, 'inspect', True, 1.0, 'Query for task information by id.', '[id1 [id2 [... [idN]]]]', None, 'ids'), 'rate_limit': (None, 'control', True, 1.0, 'Tell worker(s) to modify the rate limit for a task by type.', '<task_name> <rate_limit (e.g., 5/s | 5/m | 5/h)>', [('task_name', <class 'str'>), ('rate_limit', <class 'str'>)], None), 'registered': ('dump_tasks', 'inspect', True, 1.0, 'List of registered tasks.', '[attr1 [attr2 [... [attrN]]]]', None, 'taskinfoitems'), 'report': (None, 'inspect', True, 1.0, 'Information about Celery installation for bug reports.', None, None, None), 'reserved': ('dump_reserved', 'inspect', True, 1.0, 'List of currently reserved tasks, not including scheduled/active.', None, None, None), 'revoke': (None, 'control', True, 1.0, 'Revoke task by task id (or list of ids).', '[id1 [id2 [... [idN]]]]', None, 'task_id'), 'revoke_by_stamped_headers': (None, 'control', True, 1.0, 'Revoke task by header (or list of headers).', '[key1=value1 [key2=value2 [... [keyN=valueN]]]]', None, 'headers'), 'revoked': ('dump_revoked', 'inspect', True, 1.0, 'List of revoked task-ids.', None, None, None), 'scheduled': ('dump_schedule', 'inspect', True, 1.0, 'List of currently scheduled ETA/countdown tasks.', None, None, None), 'shutdown': (None, 'control', True, 1.0, 'Shutdown worker(s).', None, None, None), 'stats': (None, 'inspect', True, 1.0, 'Request worker statistics/information.', None, None, None), 'terminate': (None, 'control', True, 1.0, 'Terminate task by task id (or list of ids).', '<signal> [id1 [id2 [... [idN]]]]', [('signal', <class 'str'>)], 'task_id'), 'time_limit': (None, 'control', True, 1.0, 'Tell worker(s) to modify the time limit for task by type.', '<task_name> <soft_secs> [hard_secs]', [('task_name', <class 'str'>), ('soft', <class 'float'>), ('hard', <class 'float'>)], None)}
  classmethod register(*args, **kwargs)

    Register a virtual subclass of an ABC.

    Returns the subclass, to allow usage as a class decorator.