查看 Airflow 日志

本页面介绍如何访问和查看 Cloud Composer 的 Apache Airflow 日志。

日志类型

Cloud Composer 包含以下 Airflow 日志:

登录 Cloud Storage

当您创建环境时,Cloud Composer 会创建一个 Cloud Storage 存储分区,并将该存储分区关联至您的环境。Cloud Composer 将单一 DAG 任务的日志存储在该存储分区的 logs 文件夹中。如需了解存储分区名称,请参阅确定存储分区名称

日志文件夹目录结构

logs 文件夹包含与在环境中运行过的每个工作流对应的文件夹。每个工作流文件夹都包含一个对应于其 DAG 和子 DAG 的文件夹。 每个文件夹都包含对应的每个任务的日志文件。任务文件名指示任务的开始时间。

以下示例展示了某个环境的日志目录结构。

us-central1-my-environment-60839224-bucket
   └───dags
   |   │
   |   |   dag_1
   |   |   dag_2
   |   |   ...
   |
   └───logs
       │
       └───dag_1
       |   │
       |   └───task_1
       |   |   │   datefile_1
       |   |   │   datefile_2
       |   |   │   ...
       |   |
       |   └───task_2
       |       │   datefile_1
       |       │   datefile_2
       |       │   ...
       |
       └───dag_2
           │   ...

日志保留

为了防止数据丢失,在您删除环境后,保存在 Cloud Storage 中的日志仍会保留。您必须手动从 Cloud Storage 删除这些日志。

准备工作

如需访问 Cloud Composer 环境的 Cloud Storage 存储分区中的 Airflow 日志,必须具有 storage.objectAdmin 权限。如需了解详情,请参阅 Cloud Composer 访问权限控制

查看 Cloud Storage 中的任务日志

如需查看 DAG 任务的日志文件,请执行以下操作:

  1. 如需查看日志文件,请输入以下命令,并将 VARIABLES 替换为适当的值:

    gsutil ls -r gs://BUCKET/logs

  2. (可选)要复制单个日志或子文件夹,请输入以下命令,并将 VARIABLES 替换为适当的值:

    gsutil cp -r gs://BUCKET/logs/PATH_TO_LOG_FILE LOCAL_FILE_OR_DIRECTORY

在 Cloud Console 中查看流日志

Cloud Composer 可生成以下日志:

  • airflow:Airflow pod 生成的未分类日志。
  • airflow-database-init-job:Airflow 数据库初始化作业生成的日志。
  • airflow-scheduler:Airflow 调度程序生成的日志。
  • airflow-webserver:Airflow 网页界面生成的日志。
  • airflow-worker:在工作流和 DAG 执行过程中生成的日志。
  • cloudaudit.googleapis.com/activity管理员活动生成的日志。
  • composer-agent:创建和更新环境操作过程中生成的日志。
  • gcs-syncd:文件同步过程生成的日志。
  • build-log-worker-scheduler:来自 Airflow 工作器映像的本地构建的日志(升级和 Python 软件包安装期间)。
  • build-log-webserver:来自 Airflow webserver 映像构建的日志(升级和 Python 软件包安装期间)。
  • airflow-monitoring:Airflow 监控生成的日志。

如需查看流日志文件,请执行以下操作:

  1. 在 Cloud Console 中,转到 Google Cloud 运营套件日志查看器。
    转到“日志查看器”页面

  2. 选择想要查看的日志。

    您可以按日志文件和级别、预定义标签、任务名称、工作流和执行日期等属性进行过滤。如需详细了解如何选择和过滤日志,请参阅查看日志。如需了解如何导出日志,请参阅使用日志查看器进行导出

后续步骤