Application logging setup (app.log).
Constructor
Signature
Parameters
| Name | Type | Description |
|---|
| app | Any | The application instance containing configuration settings for logging. |
Signature
def Logging(
app: [Celery](../base/celery.md?sid=celery_app_base_celery)
)
Parameters
| Name | Type | Description |
|---|
| app | [Celery](../base/celery.md?sid=celery_app_base_celery) | The Celery application instance providing configuration for log formats and color settings |
Methods
setup()
@classmethod
def setup(
loglevel: str|int = None,
logfile: str|file = None,
redirect_stdouts: bool = False,
redirect_level: str = 'WARNING',
colorize: bool = None,
hostname: str = None
) - > list
Configures the global logging subsystem, handles stdout redirection, and updates environment variables for child processes.
Parameters
| Name | Type | Description |
|---|
| loglevel | `str | int` = None |
| logfile | `str | file` = None |
| redirect_stdouts | bool = False | Whether to capture and redirect standard output and error to the logger |
| redirect_level | str = 'WARNING' | The log level used for messages captured from redirected standard streams |
| colorize | bool = None | Explicit override to enable or disable ANSI color codes in logs |
| hostname | str = None | The worker hostname used to format the log file name |
Returns
| Type | Description |
|---|
list | A list of signal receivers that handled the logging setup, or None if already configured |
redirect_stdouts()
@classmethod
def redirect_stdouts(
loglevel: str|int = None,
name: string = 'celery.redirected'
)
Redirects standard output streams to a specific logger and updates environment flags.
Parameters
| Name | Type | Description |
|---|
| loglevel | `str | int` = None |
| name | string = 'celery.redirected' | The name of the logger that will receive the redirected stream data |
setup_logging_subsystem()
@classmethod
def setup_logging_subsystem(
loglevel: str|int = None,
logfile: str|file = None,
format: str = None,
colorize: bool = None,
hostname: str = None
) - > list
Performs the low-level configuration of root, multiprocessing, and task loggers while triggering setup signals.
Parameters
| Name | Type | Description |
|---|
| loglevel | `str | int` = None |
| logfile | `str | file` = None |
| format | str = None | The log message format string |
| colorize | bool = None | Whether to use colors in the output |
| hostname | str = None | The hostname used for log file name expansion |
Returns
| Type | Description |
|---|
list | The list of signal receivers that responded to the setup_logging signal |
setup_task_loggers()
@classmethod
def setup_task_loggers(
loglevel: str|int = None,
logfile: str|file = None,
format: str = None,
colorize: bool = None,
propagate: bool = False
) - > logging.Logger
Setup the task logger. If logfile is not specified, then sys.stderr is used. Will return the base task logger object.
Parameters
| Name | Type | Description |
|---|
| loglevel | `str | int` = None |
| logfile | `str | file` = None |
| format | str = None | The format string for task log messages |
| colorize | bool = None | Whether to enable color in task logs |
| propagate | bool = False | Whether task logs should propagate to the root logger |
Returns
| Type | Description |
|---|
logging.Logger | The configured logger instance for celery tasks |
redirect_stdouts_to_logger()
@classmethod
def redirect_stdouts_to_logger(
logger: logging.Logger,
loglevel: int|str = None,
stdout: bool = True,
stderr: bool = True
) - > [LoggingProxy](../../utils/log/loggingproxy.md?sid=celery_utils_log_loggingproxy)
Redirect :class:sys.stdout and :class:sys.stderr to logger.
Parameters
| Name | Type | Description |
|---|
| logger | logging.Logger | Logger instance to redirect to. |
| loglevel | `int | str` = None |
| stdout | bool = True | Whether to redirect sys.stdout |
| stderr | bool = True | Whether to redirect sys.stderr |
Returns
| Type | Description |
|---|
[LoggingProxy](../../utils/log/loggingproxy.md?sid=celery_utils_log_loggingproxy) | The proxy object that replaced the standard streams |
supports_color()
@classmethod
def supports_color(
colorize: bool = None,
logfile: str|file = None
) - > bool
Determines if the current environment and configuration support ANSI color output.
Parameters
| Name | Type | Description |
|---|
| colorize | bool = None | The requested color setting |
| logfile | `str | file` = None |
Returns
| Type | Description |
|---|
bool | True if colors are supported and enabled, False otherwise |
colored()
@classmethod
def colored(
logfile: str|file = None,
enabled: bool = None
) - > [colored](../../utils/term/colored.md?sid=celery_utils_term_colored)
Returns a colorizer object based on whether color support is enabled for the given logfile.
Parameters
| Name | Type | Description |
|---|
| logfile | `str | file` = None |
| enabled | bool = None | Explicit override for color enablement |
Returns
| Type | Description |
|---|
[colored](../../utils/term/colored.md?sid=celery_utils_term_colored) | An object used to wrap strings in ANSI color codes |
setup_handlers()
@classmethod
def setup_handlers(
logger: logging.Logger,
logfile: str|file,
format: str,
colorize: bool,
formatter: logging.Formatter = ColorFormatter
) - > logging.Logger
Attaches a configured log handler to the provided logger if it does not already have one.
Parameters
| Name | Type | Description |
|---|
| logger | logging.Logger | The logger to which the handler will be added |
| logfile | `str | file` |
| format | str | The format string for the handler's formatter |
| colorize | bool | Whether the formatter should use color |
| formatter | logging.Formatter = ColorFormatter | The formatter class to instantiate for the handler |
Returns
| Type | Description |
|---|
logging.Logger | The logger instance with the new handler attached |
get_default_logger()
@classmethod
def get_default_logger(
name: str = 'celery'
) - > logging.Logger
Fetches a logger instance by name, defaulting to the 'celery' namespace.
Parameters
| Name | Type | Description |
|---|
| name | str = 'celery' | The name of the logger to retrieve |
Returns
| Type | Description |
|---|
logging.Logger | The requested logger instance |
already_setup()
@classmethod
def already_setup() - > bool
Returns whether the logging subsystem has already been initialized in the current process.
Returns
| Type | Description |
|---|
bool | The current setup status flag |