celery.events.state
Представление состояния кластера в памяти.
Этот модуль реализует структуру данных, используемую для отслеживания состояния кластера рабочих узлов и выполняемых ими задач (путём обработки событий).
Состояние обновляется при обработке каждого события, поэтому оно отражает состояние кластера на момент последнего события.
Снимки (celery.events.snapshot) можно использовать, чтобы через равные промежутки времени делать «снимки» этого состояния и, например, сохранять их в базе данных.
- classcelery.events.state.State(callback=None, workers=None, tasks=None, taskheap=None, max_workers_in_memory=5000, max_tasks_in_memory=10000, on_node_join=None, on_node_leave=None, tasks_by_type=None, tasks_by_worker=None)
-
Записывает состояние кластера.
- классTask(uuid=None, cluster_state=None, children=None, **kwargs)
-
Состояние задачи.
- args=None
- as_dict()
- client=None
- clock=0
- eta=None
- event(type_, timestamp=None, local_received=None, fields=None, precedence=<function precedence>, setattr=<built-in function setattr>, task_event_to_state=<built-in method get of dict object>, RETRY='RETRY')
- exception=None
- exchange=None
- expires=None
- failed=None
- свойствоid
- info(fields=None, extra=None)
-
Информация об этой задаче, подходящая для отображения на экране.
- kwargs=None
- merge_rules={'RECEIVED': ('name', 'args', 'kwargs', 'parent_id', 'root_id', 'retries', 'eta', 'expires')}
-
Как объединять события, поступившие не по порядку. Нарушение порядка определяется по логической последовательности (например,
task-receivedдолжно было произойти до событияtask-failed).Правило объединения состоит из состояния и списка полей, которые нужно сохранить из этого состояния.
(RECEIVED, ('name', 'args'): поля name и args всегда берутся из состояния RECEIVED, а любые значения этих полей, полученные до или после него, просто игнорируются.
- name=None
- свойствоorigin
- свойствоparent
- parent_id=None
- свойствоready
- received=None
- rejected=None
- result=None
- retried=None
- retries=None
- revoked=None
- свойствоroot
- root_id=None
- routing_key=None
- runtime=None
- sent=None
- started=None
- state='PENDING'
- succeeded=None
- timestamp=None
- traceback=None
- worker=None
- классWorker(hostname=None, pid=None, freq=60, heartbeats=None, clock=0, active=None, processed=None, loadavg=None, sw_ident=None, sw_ver=None, sw_sys=None)
-
Состояние рабочего процесса.
- active
- свойствоalive
- clock
- event
- expire_window=200
- freq
- свойствоheartbeat_expires
- heartbeat_max=4
- heartbeats
- hostname
- свойствоid
- loadavg
- pid
- processed
- свойствоstatus_string
- sw_ident
- sw_sys
- sw_ver
- update(f, **kw)
- alive_workers()
-
Возвращает список (предположительно) работающих рабочих процессов.
- clear(ready:bool=True)
- clear_tasks(ready=True)
- event(event)
- event_count=0
- freeze_while(fun, *args, **kwargs)
- get_or_create_task(uuid)
-
Получает или создает задачу по uuid.
- get_or_create_worker(hostname, **kwargs)
-
Получает или создает рабочий процесс по имени хоста.
- Возвращает:
-
пар
(worker, was_created). - Тип возвращаемого значения:
-
Tuple
- heap_multiplier=4
- itertasks(limit:int|None=None)
- rebuild_taskheap(timetuple=<class 'kombu.clocks.timetuple'>)
- task_count=0
- task_event(type_, fields)
-
Устарело, используйте
event().
- task_types()
-
Возвращает список всех обнаруженных типов задач.
- tasks_by_time(limit=None, reverse:bool=True)
-
Генератор, возвращающий задачи в порядке времени.
- Возвращает значения:
-
Кортежи
(uuid, Task).
- tasks_by_timestamp(limit=None, reverse:bool=True)
-
Генератор, возвращающий задачи в порядке времени.
- Возвращает значения:
-
Кортежи
(uuid, Task).
- worker_event(type_, fields)
-
Устарело, используйте
event().
- classcelery.events.state.Task(uuid=None, cluster_state=None, children=None, **kwargs)
-
Состояние задачи.
- args=None
- as_dict()
- client=None
- clock=0
- eta=None
- event(type_, timestamp=None, local_received=None, fields=None, precedence=<function precedence>, setattr=<built-in function setattr>, task_event_to_state=<built-in method get of dict object>, RETRY='RETRY')
- exception=None
- exchange=None
- expires=None
- failed=None
- propertyid
- info(fields=None, extra=None)
-
Информация об этой задаче, предназначенная для отображения на экране.
- kwargs=None
- merge_rules={'RECEIVED': ('name', 'args', 'kwargs', 'parent_id', 'root_id', 'retries', 'eta', 'expires')}
-
Как объединять события, поступившие не по порядку. Нарушение порядка определяется по логической последовательности (например, событие
task-receivedдолжно произойти до событияtask-failed).Правило объединения состоит из состояния и списка полей, которые следует сохранить из этого состояния.
(RECEIVED, ('name', 'args')означает, что поля name и args всегда берутся из состояния RECEIVED, а любые значения этих полей, полученные до или после этого, просто игнорируются.
- name=None
- propertyorigin
- propertyparent
- parent_id=None
- propertyready
- received=None
- rejected=None
- result=None
- retried=None
- retries=None
- revoked=None
- propertyroot
- root_id=None
- routing_key=None
- runtime=None
- sent=None
- started=None
- state='PENDING'
- succeeded=None
- timestamp=None
- traceback=None
- worker=None
- classcelery.events.state.Worker(hostname=None, pid=None, freq=60, heartbeats=None, clock=0, active=None, processed=None, loadavg=None, sw_ident=None, sw_ver=None, sw_sys=None)
-
Состояние рабочего процесса.
- active
- propertyalive
- clock
- event
- expire_window=200
- freq
- propertyheartbeat_expires
- heartbeat_max=4
- heartbeats
- hostname
- propertyid
- loadavg
- pid
- processed
- propertystatus_string
- sw_ident
- sw_sys
- sw_ver
- update(f, **kw)
- celery.events.state.heartbeat_expires(timestamp, freq=60, expire_window=200, Decimal=<class 'decimal.Decimal'>, float=<class 'float'>, isinstance=<built-in function isinstance>)
-
Возвращает время истечения срока действия сигнала проверки активности.
Copyright © 2017-2026 Asif Saif Uddin, core team & contributors. All rights reserved.
Celery is licensed under The BSD License (3 Clause, also known as the new BSD license). The license is an OSI approved Open Source license and is GPL-compatible.
https://docs.celeryq.dev/en/stable/reference/celery.events.state.html