在 Amazon 中查看气流日志 CloudWatch - Amazon Managed Workflows for Apache Airflow
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

在 Amazon 中查看气流日志 CloudWatch

亚马逊 MWAA 可以向亚马逊发送 Apache Airflow 日志。 CloudWatch您可以从一个位置查看多个环境的日志,从而轻松识别 Apache Airflow 任务延迟或工作流程错误,而无需其他第三方工具。需要在适用于 Apache Airflow 的亚马逊托管工作流程控制台上启用 Apache Airflow 日志,才能查看 Apache Airflow DAG 处理、任务、Web 服务器、工作器登录情况。 CloudWatch

定价

  • 收取标准 CloudWatch 日志费用。有关更多信息,请参阅CloudWatch 定价

开始前的准备工作

日志类型

Amazon MWAA 会为您启用的每个 Airflow 日志选项创建一个日志组,并将日志推送到与环境关联的 CloudWatch 日志组。日志组以 YourEnvironmentName-LogType 格式命名。例如,如果环境名为 Airflow-v202-Public,则 Apache Airflow 任务日志将发送到 Airflow-v202-Public-Task

日志类型 描述

YourEnvironmentName-DAGProcessing

DAG 处理器管理器(计划程序中处理 DAG 文件的部分)的日志。

YourEnvironmentName-Scheduler

Airflow 计划程序生成的日志。

YourEnvironmentName-Task

DAG 生成的任务日志。

YourEnvironmentName-WebServer

Airflow Web 界面生成的日志。

YourEnvironmentName-Worker

作为工作流程和 DAG 执行的一部分生成的日志。

启用 Apache Airflow 日志

您可以启用 INFOWARNINGERRORCRITICAL 级别的 Apache Airflow 日志。当您选择日志级别时,Amazon MWAA 会发送该级别和所有更高级别的严重性级别的日志。例如,如果您在INFO级别启用日志,Amazon MWAA 会向INFO日志发送日志WARNINGERROR、和CRITICAL日志级别。 CloudWatch

  1. 在 Amazon MWAA 控制台上打开环境页面

  2. 选择环境。

  3. 选择编辑

  4. 选择下一步

  5. 选择下列一个或多个选项:

    1. 监控窗格上选择 Airflow 计划程序日志组

    2. 监控窗格上选择 Airflow Web 服务器日志组

    3. 监控窗格上选择 Airflow 工作线程日志组

    4. 监控窗格上选择 Airflow DAG 处理日志组

    5. 监控窗格上选择 Airflow 任务日志组

    6. 日志级别中选择日志级别。

  6. 选择下一步

  7. 选择保存

查看 Apache Airflow 日志

以下部分介绍如何在控制台中查看 Apache Airflow 日志。 CloudWatch

  1. 在 Amazon MWAA 控制台上打开环境页面

  2. 选择环境。

  3. 监控窗格中选择一个日志组。

  4. 日志流中选择日志。

示例计划程序日志

您可以查看调度工作流程并解析 dags 文件夹的计划程序的 Apache Airflow 日志。以下步骤介绍如何在 Amazon MWAA 控制台上打开计划程序的日志组,以及如何在 Logs 控制台上查看 Apache Airflow 日志。 CloudWatch

要查看 requirements.txt 的日志,请执行以下操作
  1. 在 Amazon MWAA 控制台上打开环境页面

  2. 选择环境。

  3. 监控窗格上选择 Airflow 计划程序日志组

  4. 日志流中选择 requirements_install_ip 日志。

  5. 您应该可以在 /usr/local/airflow/.local/bin 上看到环境中安装的程序包列表。例如:

    Collecting appdirs==1.4.4 (from -r /usr/local/airflow/.local/bin (line 1)) Downloading https://files.pythonhosted.org/packages/3b/00/2344469e2084fb28kjdsfiuyweb47389789vxbmnbjhsdgf5463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl Collecting astroid==2.4.2 (from -r /usr/local/airflow/.local/bin (line 2))
  6. 查看程序包列表以及其中任何程序包在安装过程中是否遇到错误。如果出现问题,您可能会看到类似以下内容的错误:

    2021-03-05T14:34:42.731-07:00 No matching distribution found for LibraryName==1.0.0 (from -r /usr/local/airflow/.local/bin (line 4)) No matching distribution found for LibraryName==1.0.0 (from -r /usr/local/airflow/.local/bin (line 4))

接下来做什么?