52

在 Airflow 中写入日志的一种方法是从 PythonOperator 返回一个字符串,如第 44 行此处

还有其他方法可以让我写入气流日志文件吗?我发现打印语句没有保存到日志中。

4

3 回答 3

64

您可以将日志记录模块导入您的代码并以这种方式写入日志

import logging

logging.info('Hello')

这里还有一些选项

import logging    

logging.debug('This is a debug message')
logging.info('This is an info message')
logging.warning('This is a warning message')
logging.error('This is an error message')
logging.critical('This is a critical message')
于 2017-01-12T18:24:42.353 回答
16

您可能会使用气流记录器

import logging


logger = logging.getLogger("airflow.task")
logger.error("Your custom error")
于 2020-05-12T08:02:12.920 回答
1

您可以使用一个记录器混合类:

https://github.com/apache/airflow/blob/main/airflow/utils/log/logging_mixin.py

from airflow.utils.log.logging_mixin import LoggingMixin

LoggingMixin().log.info("Hello")

然后在气流日志中你会看到:

[2021-07-07 15:55:42,370] {{logging_mixin.py:112}} INFO - Hello
于 2021-07-07T16:45:45.507 回答