Skip to content

Signals

Celery uses signals to allow decoupled applications to receive notifications when actions occur elsewhere.

Task signals

Celery Signals.

This module defines the signals (Observer pattern) sent by both workers and clients.

Functions can be connected to these signals, and connected functions are called whenever a signal is called.

.. seealso::

:ref:`signals` for more information.

before_task_publish module-attribute

before_task_publish = Signal(
    name="before_task_publish",
    providing_args={
        "body",
        "exchange",
        "routing_key",
        "headers",
        "properties",
        "declare",
        "retry_policy",
    },
)

after_task_publish module-attribute

after_task_publish = Signal(
    name="after_task_publish",
    providing_args={"body", "exchange", "routing_key"},
)

task_received module-attribute

task_received = Signal(
    name="task_received", providing_args={"request"}
)

task_prerun module-attribute

task_prerun = Signal(
    name="task_prerun",
    providing_args={"task_id", "task", "args", "kwargs"},
)

task_postrun module-attribute

task_postrun = Signal(
    name="task_postrun",
    providing_args={
        "task_id",
        "task",
        "args",
        "kwargs",
        "retval",
    },
)

task_success module-attribute

task_success = Signal(
    name="task_success", providing_args={"result"}
)

task_failure module-attribute

task_failure = Signal(
    name="task_failure",
    providing_args={
        "task_id",
        "exception",
        "args",
        "kwargs",
        "traceback",
        "einfo",
    },
)

task_retry module-attribute

task_retry = Signal(
    name="task_retry",
    providing_args={"request", "reason", "einfo"},
)

task_revoked module-attribute

task_revoked = Signal(
    name="task_revoked",
    providing_args={
        "request",
        "terminated",
        "signum",
        "expired",
    },
)

task_rejected module-attribute

task_rejected = Signal(
    name="task_rejected", providing_args={"message", "exc"}
)

task_unknown module-attribute

task_unknown = Signal(
    name="task_unknown",
    providing_args={"message", "exc", "name", "id"},
)

task_internal_error module-attribute

task_internal_error = Signal(
    name="task_internal_error",
    providing_args={
        "task_id",
        "args",
        "kwargs",
        "request",
        "exception",
        "traceback",
        "einfo",
    },
)

Worker signals

Celery Signals.

This module defines the signals (Observer pattern) sent by both workers and clients.

Functions can be connected to these signals, and connected functions are called whenever a signal is called.

.. seealso::

:ref:`signals` for more information.

worker_init module-attribute

worker_init = Signal(name='worker_init')

worker_ready module-attribute

worker_ready = Signal(name='worker_ready')

worker_shutdown module-attribute

worker_shutdown = Signal(name='worker_shutdown')

worker_shutting_down module-attribute

worker_shutting_down = Signal(name='worker_shutting_down')

celeryd_init module-attribute

celeryd_init = Signal(
    name="celeryd_init",
    providing_args={"instance", "conf", "options"},
)

celeryd_after_setup module-attribute

celeryd_after_setup = Signal(
    name="celeryd_after_setup",
    providing_args={"instance", "conf"},
)

Beat signals

Celery Signals.

This module defines the signals (Observer pattern) sent by both workers and clients.

Functions can be connected to these signals, and connected functions are called whenever a signal is called.

.. seealso::

:ref:`signals` for more information.

beat_init module-attribute

beat_init = Signal(name='beat_init')

beat_embedded_init module-attribute

beat_embedded_init = Signal(name='beat_embedded_init')

heartbeat_sent module-attribute

heartbeat_sent = Signal(name='heartbeat_sent')

Logging signals

Celery Signals.

This module defines the signals (Observer pattern) sent by both workers and clients.

Functions can be connected to these signals, and connected functions are called whenever a signal is called.

.. seealso::

:ref:`signals` for more information.

setup_logging module-attribute

setup_logging = Signal(
    name="setup_logging",
    providing_args={
        "loglevel",
        "logfile",
        "format",
        "colorize",
    },
)

after_setup_logger module-attribute

after_setup_logger = Signal(
    name="after_setup_logger",
    providing_args={
        "logger",
        "loglevel",
        "logfile",
        "format",
        "colorize",
    },
)

after_setup_task_logger module-attribute

after_setup_task_logger = Signal(
    name="after_setup_task_logger",
    providing_args={
        "logger",
        "loglevel",
        "logfile",
        "format",
        "colorize",
    },
)