在 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 服务器、Worker 登录情况。 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

任务日志 a 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 日志。以下步骤介绍如何在亚马逊MWAA控制台上打开计划程序的日志组,以及如何在日志控制台上查看 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))

接下来做什么?