Dataflow ジョブのリスト

Dataflow ジョブのリストを表示するには、 Google Cloud コンソールの [Dataflow] > [ジョブ] ページに移動します。

[ジョブ] に移動

Dataflow ジョブのリストとそれぞれのステータスが表示されます。

ジョブの状態として「実行中」、「失敗」、「成功」が示された Dataflow ジョブのリスト。
図 1: Google Cloud コンソールの Dataflow ジョブのリスト。ジョブのステータス(開始中失敗成功)が表示されています。

ジョブのステータスは以下のとおりです。

  • -: モニタリング インターフェースはまだ Dataflow サービスからステータスを受け取っていません。
  • 実行中: ジョブは実行中です。
  • 開始しています...: ジョブは作成されていますが、起動する前に準備の時間が必要です。
  • キューに格納済み: FlexRS ジョブがキューに格納されているか、Flex テンプレート ジョブの起動中です(数分かかる場合があります)。
  • キャンセルしています...: ジョブはキャンセル中です。
  • キャンセルしました: ジョブはキャンセルされています。
  • ドレインしています...: ジョブはドレイン中です。
  • ドレインされました: ジョブはドレインされます。
  • 更新しています...: ジョブは更新中です。
  • 更新しました: ジョブが更新されます。
  • 完了しました: ジョブは正常に終了しました。
  • 失敗しました: ジョブは完了しませんでした。

ジョブ ビジュアライザーにアクセスする

ジョブをモニタリングするグラフにアクセスするには、Dataflow モニタリング インターフェース内でジョブの名前をクリックします。[ジョブの詳細] ページが表示されます。このページには、次の情報が含まれています。

  • ジョブグラフ: パイプラインの視覚的表現
  • 実行の詳細: パイプラインのパフォーマンスを最適化するツール
  • ジョブの指標: ジョブの実行に関する指標
  • 費用: ジョブの推定費用に関する指標
  • 自動スケーリング: ストリーミング ジョブの自動スケーリング イベントに関連する指標
  • ジョブの情報パネル: パイプラインに関する記述情報
  • ジョブのログ: Dataflow サービスによってジョブレベルで生成されたログ
  • ワーカーログ: Dataflow サービスによってワーカーレベルで生成されたログ
  • 診断: 選択したタイムラインでエラーが発生した場所と、パイプラインに対して発生する可能性のある推奨事項を示すテーブル
  • データ サンプリング: パイプラインの各ステップでデータをモニタリングできるツール

[ジョブの詳細] ページでは、[ジョブのグラフ] タブ、[実行の詳細] タブ、[ジョブの指標] タブ、[費用]、[自動スケーリング] タブでジョブビューを切り替えることができます。

Google Cloud CLI を使用してジョブを一覧表示する

Google Cloud CLI を使用して、Dataflow ジョブのリストを取得することもできます。

プロジェクト内の Dataflow ジョブを一覧表示するには、dataflow jobs list コマンドを使用します。

gcloud dataflow jobs list

このコマンドは、現在のジョブのリストを返します。出力例を次に示します。

  ID                                        NAME                                    TYPE   CREATION_TIME        STATE   REGION
  2015-06-03_16_39_22-4020553808241078833   wordcount-janedoe-0603233849            Batch  2015-06-03 16:39:22  Done    us-central1
  2015-06-03_16_38_28-4363652261786938862   wordcount-johndoe-0603233820            Batch  2015-06-03 16:38:28  Done    us-central1
  2015-05-21_16_24_11-17823098268333533078  bigquerytornadoes-johndoe-0521232402    Batch  2015-05-21 16:24:11  Done    europe-west1
  2015-05-21_13_38_06-16409850040969261121  bigquerytornadoes-johndoe-0521203801    Batch  2015-05-21 13:38:06  Done    us-central1
  2015-05-21_13_17_18-18349574013243942260  bigquerytornadoes-johndoe-0521201710    Batch  2015-05-21 13:17:18  Done    europe-west1
  2015-05-21_12_49_37-9791290545307959963   wordcount-johndoe-0521194928            Batch  2015-05-21 12:49:37  Done    us-central1
  2015-05-20_15_54_51-15905022415025455887  wordcount-johndoe-0520225444            Batch  2015-05-20 15:54:51  Failed  us-central1
  2015-05-20_15_47_02-14774624590029708464  wordcount-johndoe-0520224637            Batch  2015-05-20 15:47:02  Done    us-central1

ジョブの詳細情報を表示するには、dataflow jobs describe コマンドを使用します。

gcloud dataflow jobs describe JOB_ID

JOB_ID は、ジョブ ID に置き換えます。このコマンドの出力は次のようになります。

createTime: '2015-02-09T19:39:41.140Z'
currentState: JOB_STATE_DONE
currentStateTime: '2015-02-09T19:56:39.510Z'
id: 2015-02-09_11_39_40-15635991037808002875
name: tfidf-bchambers-0209193926
projectId: google.com:clouddfe
type: JOB_TYPE_BATCH

結果を JSON 形式にフォーマットする場合は、--format=json オプションを指定してコマンドを実行します。

gcloud --format=json dataflow jobs describe JOB_ID

リストから Dataflow ジョブをアーカイブ(非表示)する

Dataflow ジョブをアーカイブすると、そのジョブはコンソールの Dataflow の [ジョブ] ページのジョブリストから削除されます。ジョブは、アーカイブされたジョブのリストに移動します。アーカイブできるのは完了したジョブのみです。これには、次の状態のジョブが含まれます。

  • JOB_STATE_CANCELLED
  • JOB_STATE_DRAINED
  • JOB_STATE_DONE
  • JOB_STATE_FAILED
  • JOB_STATE_UPDATED

これらの状態の確認の詳細については、Dataflow ジョブの完了を検出するをご覧ください。

ジョブのアーカイブ時のトラブルシューティング情報については、「Dataflow エラーのトラブルシューティング」のアーカイブ ジョブ エラーをご覧ください。

アーカイブされたジョブはすべて、30 日間の保持期間後に削除されます。

ジョブをアーカイブする

Dataflow の [ジョブ] ページのメイン ジョブリストから完了したジョブを削除するには、次の操作を行います。

コンソール

  1. Google Cloud コンソールで、Dataflow の [ジョブ] ページに移動します。

    [ジョブ] に移動

    Dataflow ジョブのリストとそれぞれのステータスが表示されます。

  2. ジョブを選択します。

  3. [ジョブの詳細] ページで、[アーカイブ] をクリックします。ジョブが完了していない場合、[アーカイブ] オプションは使用できません。

REST

API を使用してジョブをアーカイブするには、projects.locations.jobs.update メソッドを使用します。

このリクエストでは、更新された JobMetadata オブジェクトを指定する必要があります。JobMetadata.userDisplayProperties オブジェクトで、Key-Value ペア "archived":"true" を使用します。

更新された JobMetadata オブジェクトに加えて、API リクエストにはリクエスト URL に updateMask クエリ パラメータも含める必要があります。

https://dataflow.googleapis.com/v1b3/[...]/jobs/JOB_ID/?updateMask=job_metadata.user_display_properties.archived

リクエストのデータを使用する前に、次のように置き換えます。

HTTP メソッドと URL:

PUT https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/REGION/jobs/JOB_ID/?updateMask=job_metadata.user_display_properties.archived

リクエストの本文(JSON):

{
  "job_metadata": {
    "userDisplayProperties": {
      "archived": "true"
    }
  }
}

リクエストを送信するには、次のいずれかのオプションを選択します。

curl

リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。

curl -X PUT \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/REGION/jobs/JOB_ID/?updateMask=job_metadata.user_display_properties.archived"

PowerShell

リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method PUT `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/REGION/jobs/JOB_ID/?updateMask=job_metadata.user_display_properties.archived" | Select-Object -Expand Content

次のような JSON レスポンスが返されます。

{
  "id": "JOB_ID",
  "projectId": "PROJECT_ID",
  "currentState": "JOB_STATE_DONE",
  "currentStateTime": "2025-05-20T20:54:41.651442Z",
  "createTime": "2025-05-20T20:51:06.031248Z",
  "jobMetadata": {
    "userDisplayProperties": {
      "archived": "true"
    }
  },
  "startTime": "2025-05-20T20:51:06.031248Z"
}

アーカイブされたジョブを表示して復元する

アーカイブされたジョブを表示するか、アーカイブされたジョブを Dataflow の [ジョブ] ページのメイン ジョブリストに復元するには、次の操作を行います。

コンソール

  1. Google Cloud コンソールで、Dataflow の [ジョブ] ページに移動します。

    [ジョブ] に移動

  2. [アーカイブ済み] 切り替えボタンをクリックします。アーカイブされた Dataflow ジョブのリストが表示されます。

  3. ジョブを選択します。

  4. ジョブを Dataflow の [ジョブ] ページのメイン ジョブリストに復元するには、[ジョブの詳細] ページで [復元] をクリックします。

REST

API を使用してアーカイブされたジョブを復元するには、projects.locations.jobs.update メソッドを使用します。

このリクエストでは、更新された JobMetadata オブジェクトを指定する必要があります。JobMetadata.userDisplayProperties オブジェクトで、Key-Value ペア "archived":"false" を使用します。

更新された JobMetadata オブジェクトに加えて、API リクエストにはリクエスト URL に updateMask クエリ パラメータも含める必要があります。

https://dataflow.googleapis.com/v1b3/[...]/jobs/JOB_ID/?updateMask=job_metadata.user_display_properties.archived

リクエストのデータを使用する前に、次のように置き換えます。

HTTP メソッドと URL:

PUT https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/REGION/jobs/JOB_ID/?updateMask=job_metadata.user_display_properties.archived

リクエストの本文(JSON):

{
  "job_metadata": {
    "userDisplayProperties": {
      "archived": "false"
    }
  }
}

リクエストを送信するには、次のいずれかのオプションを選択します。

curl

リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。

curl -X PUT \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/REGION/jobs/JOB_ID/?updateMask=job_metadata.user_display_properties.archived"

PowerShell

リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method PUT `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/REGION/jobs/JOB_ID/?updateMask=job_metadata.user_display_properties.archived" | Select-Object -Expand Content

次のような JSON レスポンスが返されます。

{
  "id": "JOB_ID",
  "projectId": "PROJECT_ID",
  "currentState": "JOB_STATE_DONE",
  "currentStateTime": "2025-05-20T20:54:41.651442Z",
  "createTime": "2025-05-20T20:51:06.031248Z",
  "jobMetadata": {
    "userDisplayProperties": {
      "archived": "false"
    }
  },
  "startTime": "2025-05-20T20:51:06.031248Z"
}