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

# `celery.apps.beat`

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)

  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
    scheduler_cls

      alias of `PersistentScheduler`

    start(embedded_process=False)
    stop(wait=False)
    sync()
  app: Celery = None
  banner(service: Service) → str
  init_loader() → None
  install_sync_handler(service: Service) → None

    Install a SIGTERM + SIGINT handler saving the schedule.

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