This document describes the current stable version of Celery (5.2). For development docs, go here.
celery.beat
¶
The periodic task scheduler.
- celery.beat.EmbeddedService(app, max_interval=None, **kwargs)[source]¶
Return embedded clock service.
- Parameters:
thread (bool) – Run threaded instead of as a separate process. Uses
multiprocessing
by default, if available.
- class celery.beat.PersistentScheduler(*args, **kwargs)[source]¶
Scheduler backed by
shelve
database.- property info¶
- known_suffixes = ('', '.db', '.dat', '.bak', '.dir')¶
- persistence = <module 'shelve' from '/usr/lib/python3.11/shelve.py'>¶
- property schedule¶
- class celery.beat.ScheduleEntry(name=None, task=None, last_run_at=None, total_run_count=None, schedule=None, args=(), kwargs=None, options=None, relative=False, app=None)[source]¶
An entry in the scheduler.
- Parameters:
- args = None¶
Positional arguments to apply.
- kwargs = None¶
Keyword arguments to apply.
- last_run_at = None¶
The time and date of when this task was last scheduled.
- name = None¶
The task name
- next(last_run_at=None)¶
Return new instance, with date and count fields updated.
- options = None¶
Task execution options.
- total_run_count = 0¶
Total number of times this task has been scheduled.
- class celery.beat.Scheduler(app, schedule=None, max_interval=None, Producer=None, lazy=False, sync_every_tasks=None, **kwargs)[source]¶
Scheduler for periodic tasks.
The celery beat program may instantiate this class multiple times for introspection purposes, but then with the
lazy
argument set. It’s important for subclasses to be idempotent when this argument is set.- Parameters:
max_interval (int) – see
max_interval
.lazy (bool) – Don’t set up the schedule.
- Entry¶
alias of
ScheduleEntry
- property connection¶
- property info¶
- logger = <Logger celery.beat (WARNING)>¶
- max_interval = 300¶
Maximum time to sleep between re-checking the schedule.
- populate_heap(event_t=<class 'celery.beat.event_t'>, heapify=<built-in function heapify>)[source]¶
Populate the heap with the data contained in the schedule.
- property producer¶
- property schedule¶
The schedule dict/shelve.
- sync_every = 180¶
How often to sync the schedule (3 minutes by default)
- sync_every_tasks = None¶
How many tasks can be called before a sync is forced.
- class celery.beat.Service(app, max_interval=None, schedule_filename=None, scheduler_cls=None)[source]¶
Celery periodic task service.
- property scheduler¶
- scheduler_cls¶
alias of
PersistentScheduler