

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

# 访问 Amazon 中的 Airflow 日志 CloudWatch
<a name="monitoring-airflow"></a>

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

**Contents**
+ [定价](#monitoring-airflow-pricing)
+ [开始前的准备工作](#monitoring-airflow-before)
+ [日志类型](#monitoring-airflow-log-groups)
+ [启用 Apache Airflow 日志](#monitoring-airflow-enable)
+ [访问 Apache Airflow 日志](#monitoring-airflow-view)
+ [示例计划程序日志](#monitoring-airflow-example)
+ [接下来做什么？](#monitoring-airflow-next-up)

## 定价
<a name="monitoring-airflow-pricing"></a>
+ 收取标准 CloudWatch 日志费用。有关更多信息，请参阅 [CloudWatch 定价](https://aws.amazon.com/cloudwatch/pricing/)。

## 开始前的准备工作
<a name="monitoring-airflow-before"></a>
+ 您必须拥有可以访问登录的角色 CloudWatch。有关更多信息，请参阅[访问 Amazon MWAA 环境](access-policies.md)。

## 日志类型
<a name="monitoring-airflow-log-groups"></a>

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 日志
<a name="monitoring-airflow-enable"></a>

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

1. 在 Amazon MWAA 控制台上打开[环境页面](https://console.aws.amazon.com/mwaa/home#/environments)。

1. 选择环境。

1. 选择**编辑**。

1. 选择**下一步**。

1. 选择下列一个或多个选项：

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

   1. 在**监控**窗格上选择 **Airflow Web 服务器日志组**。

   1. 在**监控**窗格上选择 **Airflow 工作线程日志组**。

   1. 在**监控**窗格上选择 **Airflow DAG 处理日志组**。

   1. 在**监控**窗格上选择 **Airflow 任务日志组**。

   1. 在 **日志级别**中选择日志级别。

1. 选择**下一步**。

1. 选择**保存**。

## 访问 Apache Airflow 日志
<a name="monitoring-airflow-view"></a>

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

1. 在 Amazon MWAA 控制台上打开[环境页面](https://console.aws.amazon.com/mwaa/home#/environments)。

1. 选择环境。

1. 在**监控**窗格中选择一个日志组。

1. 在**日志流**中选择日志。

## 示例计划程序日志
<a name="monitoring-airflow-example"></a>

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

**访问 `requirements.txt` 的日志**

1. 在 Amazon MWAA 控制台上打开[环境页面](https://console.aws.amazon.com/mwaa/home#/environments)。

1. 选择环境。

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

1. 在**日志流**中选择 `requirements_install_ip` 日志。

1. 请参阅 `/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))
   ```

1. 查看程序包列表以及其中任何程序包在安装过程中是否遇到错误。如果出现问题，您可能会收到类似以下内容的错误：

   ```
   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))
   ```

## 接下来做什么？
<a name="monitoring-airflow-next-up"></a>
+ 要了解如何配置 CloudWatch 警报，请参阅[使用 Amazon CloudWatch 警报](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html)。
+ 要了解如何创建 CloudWatch 仪表板，请参阅[使用 CloudWatch 仪表板](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html)。