Amazon CloudWatch の Airflow ログの表示 - Amazon Managed Workflows for Apache Airflow

Amazon CloudWatch の Airflow ログの表示

Amazon MWAA は Apache Airflow ログを Amazon CloudWatch に送信できます。追加のサードパーティツールを必要とせずに、Apache Airflow のタスクの遅延やワークフローエラーを簡単に特定するために、単一の場所から複数の環境のログを表示できます。CloudWatch で Apache Airflow DAG 処理、タスク、ウェブサーバー、ワーカーログを表示するには、Amazon Managed Workflows for Apache Airflow コンソールで Apache Airflow ログを有効にする必要があります。

料金

  • CloudWatch Logs の一般料金が適用されます。詳細については、「CloudWatch 料金表」を参照してください。

開始する前に

ログタイプ

Amazon MWAA は、有効にする Airflow ロギングオプションごとにロググループを作成し、そのログを環境に関連付けられた CloudWatch Logs グループにプッシュします。ロググループの名前は以下の形式に従います: YourEnvironmentName-LogType たとえば、お使いの環境に Airflow-v202-Public という名前が付けられている場合、Apache Airflow タスクログは Airflow-v202-Public-Task に送信されます。

ログタイプ 説明

YourEnvironmentName-DAGProcessing

DAG プロセッサマネージャー (DAG ファイルを処理するスケジューラーの一部) のログ。

YourEnvironmentName-Scheduler

Airflow スケジューラーが生成するログ。

YourEnvironmentName-Task

DAG が生成するタスクログ。

YourEnvironmentName-WebServer

Airflow ウェブインターフェイスが生成するログ。

YourEnvironmentName-Worker

ワークフローと DAG 実行の一部として生成されたログ。

Apache Airflow ログを有効にする

Apache Airflow ログは INFOWARNINGERROR または CRITICAL レベルで有効にできます。ログレベルを選択すると、Amazon MWAA はそのレベルとそれ以上の重要度レベルのすべてのログを送信します。たとえば、INFO レベルでログを有効にすると、Amazon MWAA は INFO ログと WARNINGERRORCRITICAL のログレベルを CloudWatch Logs に送信します。

  1. Amazon MWAA コンソールで、環境ページを開きます。

  2. 環境を選択します。

  3. [編集] を選択します。

  4. [次へ] を選択します。

  5. 以下のロギングオプションのうち 1 つ以上を選択します。

    1. [モニタリング] ペインで [Airflow スケジューラーロググループ] を選択します。

    2. [監視] ペインで [Airflow ウェブサーバーのロググループ] を選択します。

    3. [監視] ペインで [Airflow ワーカーロググループ] を選択します。

    4. [監視] ペインで [Airflow DAG 処理ロググループ] を選択します。

    5. [監視] ペインで [Airflow タスクロググループ] を選択します。

    6. [ログレベル] でログレベルを選択します。

  6. [次へ] を選択します。

  7. [保存] を選択します。

Apache Airflow ログを表示する

以下のセクションでは、CloudWatch コンソールで Apache Airflow のログを表示する方法について説明します。

  1. Amazon MWAA コンソールで、環境ページを開きます。

  2. 環境を選択します。

  3. [モニタリング] ペインでロググループを選択します。

  4. ログストリームを選択します。

スケジューラーログの例

ワークフローのスケジュール設定と dags フォルダーの解析を行うスケジューラーの Apache Airflow ログを表示できます。次のステップでは、Amazon MWAA コンソールでスケジューラーのロググループを開き、CloudWatch Logs コンソールで Apache Airflow ログを表示する方法について説明します。

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

次のステップ