🔊
Cloud ComposerでDAGの実行ログをLog Explorerから確認する
概要
- DAGのログってログエクスプローラーから探しづらくないですか?
- 実は環境の詳細から飛べます
- 内容はそれだけです
対象読者
- Composerのログの扱いに困っている人
- Composerの環境の詳細からログエクスプローラーを開けることをご存知の方は読み飛ばしてください🙏
前提
- Cloud Composer
- Google Cloudのコンソール
- Airflowの技術的な話はしません。
実現したいこと
- 楽にDAGのログを全て見る方法を知りたい!
- Airflow UIから確認できるDAGのログは便利
- しかし、フィルタやログエクスプローラーのクエリのような機能が無い。
- 詳細を把握するときはログエクスプローラーで確認したい。
- しかし、フィルタやログエクスプローラーのクエリのような機能が無い。
背景
- Composerはウェブサーバー・スケジューラー・ワーカー・データベースなど多機能
- そのため愚直にロギングからDAGの実行ログを探すのは骨が折れる。
- 私の場合、DAGのログが大量だと途中のログがゴソッと抜け落ちてしまいました。
- GCSに保存されているログファイルを確認しても同様
- Composerのバケットのlogsフォルダ
gs://<REGION>-<COMPOSER_ID>-bucket/logs/dag_id=<DAG_NAME>/run_id=<RUN_ID>/task_id=<TASK_ID>/attempt=<N>.log
- Composerのバケットのlogsフォルダ
- こんな感じでした
-
[2023-04-20T04:44:51.543+0000] {pod_manager.py:228} INFO [2023-04-27T12:35:38.264+0000] {pod_manager.py:230} WARNING # 1週間分のログはどこやねん🙄
-
- GCSに保存されているログファイルを確認しても同様
本題
ログエクスプローラーでDAGのログを読む手順
- Composerの環境
- 環境の詳細
- タブからDAGの項目を選択
- DAGを選択
- ログエクスプローラーを開く
- DAGを選択
- タブからDAGの項目を選択
- 環境の詳細
念のため画像も
-
環境の詳細でタブからDAGの項目を選択
-
DAGを選択し、ログエクスプローラーを開く
これだけです!
- 無事にログを確認できました🙌
さいごに
- 意外と知られていない機能ではないでしょうか?
- 私はもっと早く教えてもらいたかった!!
- おしまい
Discussion
本記事とは関係ありませんが、Cloud Composerのアーキテクチャを見るとGKEで構成されていて、Cloud SQLを利用しているのでそれなりにコストがかかるのは納得しました。