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


Beat command-line program.

This module is the ‘program-version’ of celery.beat.

It does everything necessary to run that module as an actual application, like installing signal handlers and so on.

class celery.apps.beat.Beat(max_interval: int | None = None, app: Celery | None = None, socket_timeout: int = 30, pidfile: str | None = None, no_color: bool | None = None, loglevel: str = 'WARN', logfile: str | None = None, schedule: str | None = None, scheduler: str | None = None, scheduler_cls: str | None = None, redirect_stdouts: bool | None = None, redirect_stdouts_level: str | None = None, quiet: bool = False, **kwargs: Any)[source]

Beat as a service.

class Service(app, max_interval=None, schedule_filename=None, scheduler_cls=None)

Celery periodic task service.

get_scheduler(lazy=False, extension_namespace='celery.beat_schedulers')
property scheduler

alias of PersistentScheduler

app: Celery = None
banner(service: Service) str[source]
init_loader() None[source]
install_sync_handler(service: Service) None[source]

Install a SIGTERM + SIGINT handler saving the schedule.

run() None[source]
set_process_title() None[source]
setup_logging(colorize: bool | None = None) None[source]
start_scheduler() None[source]
startup_info(service: Service) str[source]