写日志
用户可以使用在中的base_log_folder
指定日志文件夹。默认情况下,它位于AIRFLOW_HOME
目录中。
此外,用户也可以提供远程位置,以便在云存储中存储日志和日志备份。
在Airflow Web UI中,本地日志优先于远程日志。 如果找不到或访问本地日志,将显示远程日志。 请注意,只有在任务完成(包括失败)后才会将日志发送到远程存储。 换句话说,运行任务的远程日志不可用。日志以{dag_id}/{task_id}/{execution_date}/{try_number}.log
的路径格式存储在日志文件夹中。
远程日志记录使用现有的Airflow连接来读取/写入日志。如果没有正确设置连接,则会失败。
启用远程日志记录
要启用此功能,必须按照此示例配置airflow.cfg
:
在Azure Blob Storage中Airflow可以为配置读取和写入任务日志。 可以按照以下步骤启用Azure Blob Storage日志记录。
Airflow的日志记录系统需要将一个自定义的 .py文件 放在
PYTHONPATH
,以便可以从Airflow导入。首先创建一个存储配置文件的目录。建议使用$AIRFLOW_HOME/config
。创建名为
$AIRFLOW_HOME/config/log_config.py
和$AIRFLOW_HOME/config/__init__.py
的空文件。将的内容复制到刚刚在上面的步骤中创建的
log_config.py
文件中。自定义模板的以下部分:
重新启动 Airflow webserver 和 scheduler,并触发(或等待)新任务执行。
验证日志是否显示在您定义的bucket中新执行的任务中。
请按照以下步骤启用Google Cloud Storage日志记录。
要启用此功能,必须按照此示例配置airflow.cfg:
- 首先安装
gcp_api
安装包,。 - 确保已在Airflow中定义了Google Cloud Platform连接hook。该hook应具有对remote_base_log_folder中上面定义的Google Cloud Storage bucket的读写访问权限。
- 重新启动Airflow webserver 和 scheduler,并触发(或等待)新任务执行。
- 确认Google Cloud Storage查看器在UI中正常运行。拉出新执行的任务,并验证您是否看到类似的内容