Airflow ログの表示

このページでは、Cloud Composer の Apache Airflow ログにアクセスして表示する方法について説明します。

ログタイプ

Cloud Composer には、次の Airflow ログが含まれます。

  • Airflow ログ: これらのログは 1 つの DAG タスクに関連付けられています。タスクのログは、Cloud Composer 環境に関連付けられている Cloud Storage logs フォルダで表示できます。また、Airflow ウェブ インターフェースでログを表示することもできます。
  • ストリーミング ログ: これらのログは、Airflow のログのスーパーセットです。ストリーミング ログにアクセスするには、Google Cloud Console の Cloud Logging ログビューアを使用するか、Cloud Monitoring を使用します。

    Cloud Composer 環境のヘルスチェックを行うなど、Monitoring でログベースの指標を使用してアラート ポリシーをセットアップすることもできます。Logging と Monitoring の割り当てが適用されます。 Cloud Composer 環境の Cloud Logging と Cloud Monitoring の詳細については、Cloud Monitoring による環境のモニタリングをご覧ください。

Cloud Storage におけるログ

環境を作成するときに、Cloud Composer によって Cloud Storage バケットが作成され、環境に関連付けられます。Cloud Composer は、1 つの 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: 環境オペレーションの作成と更新の一部として生成されるログ。
  • airflow-monitoring: Airflow モニタリングによって生成されるログ。

ストリーミング ログファイルを表示するには:

  1. Cloud Console で、Google Cloud のオペレーション スイートのログビューアに移動します。
    ログビューア ページに移動

  2. 表示するログを選択します。

    ログファイル、レベル、定義済みラベル、タスク名、ワークフロー、実行日などのプロパティでフィルタリングできます。ログの選択とフィルタリングの詳細については、ログの表示をご覧ください。ログのエクスポートの詳細については、ログビューアによるエクスポートをご覧ください。

次のステップ