キューとタスクの管理

キューとタスクは次の方法で管理できます。

  • Google Cloud Console の場合
  • ターミナルまたは Cloud Shell で Google Cloud CLI を使用する
  • Cloud Tasks API にリクエストを送信する

キューからタスクを削除する

タスクは、スケジュール設定されているかディスパッチされている場合に削除できます。たとえば、何回再試行しても正常に完了できないタスクの削除が必要になることがあります。タスクが正常に完了した場合や、再試行がすべて失敗した後に再試行回数が上限に達した場合は、タスクを削除できません。

コンソール

  1. Google Cloud コンソールで、[Cloud Tasks] > [キュー] ページに移動します。

    [キュー] に移動

  2. 削除するタスクのキューの名前をクリックします。

  3. 削除するタスクのチェックボックスをオンにします。

  4. [タスクを削除] をクリックします。

  5. [削除] をクリックして確定します。

gcloud

gcloud tasks delete コマンドを使用してタスクを削除します。

gcloud tasks delete TASK_NAME \
    --queue=QUEUE_ID \
    --location=LOCATION

次のように置き換えます。

  • TASK_NAME: 削除するタスクの名前
  • QUEUE_ID: タスクが属するキューの名前
  • LOCATION: キューがデプロイされているリージョン(例: us-central1

REST

タスクを削除するには、projects.locations.queues.tasks.delete メソッドを使用します。

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

  • QUEUE_ID: タスクが属するキューの名前
  • TASK_NAME: 削除するタスクの名前
  • PROJECT_ID: Google Cloudプロジェクト ID
  • LOCATION: キューが存在するリージョン(例: us-central1

リクエストの本文は空にする必要があります。

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

成功すると、レスポンスの本文は空になります。

キューからすべてのタスクを削除する

パージすると、キューからすべてのタスクを削除できます。パージ呼び出しの前に作成されたすべてのタスクは完全に削除されます。ただし、パージ オペレーションが有効になるまでに最大で 1 分かかることがあり、パージが有効になる前にタスクがディスパッチされることがあります。

コンソール

  1. Google Cloud コンソールで、[Cloud Tasks] > [キュー] ページに移動します。

    [キュー] に移動

  2. 削除するタスクのキューの名前をクリックします。

  3. [キューを消去] をクリックします。

  4. プロンプトが表示されたら、[Purge] をクリックします。

gcloud

gcloud tasks queues purge コマンドを使用してキューをパージします。

gcloud tasks queues purge QUEUE_ID \
    --location=LOCATION

次のように置き換えます。

  • QUEUE_ID: パージするキューの名前
  • LOCATION: キューがデプロイされているリージョン(例: us-central1

REST

キューをパージするには、projects.locations.queues.purge メソッドを使用します。

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

  • QUEUE_ID: パージするキューの名前
  • PROJECT_ID: Google Cloudプロジェクト ID
  • LOCATION: キューがデプロイされているリージョン(例: us-central1

リクエストの本文は空にする必要があります。

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

成功した場合、レスポンスの本文には Queue のインスタンスが含まれます。

{
  "name": "projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID",
  "rateLimits": {
    "maxDispatchesPerSecond": 500,
    "maxBurstSize": 100,
    "maxConcurrentDispatches": 1000
  },
  "retryConfig": {
    "maxAttempts": 100,
    "minBackoff": "0.100s",
    "maxBackoff": "3600s",
    "maxDoublings": 16
  },
  "state": "RUNNING",
  "purgeTime": "2025-03-28T13:06:30.110255Z"
}

キューを一時停止または再開する

キューは一時停止または再開できます。キューを一時停止すると、タスクの実行と配信が停止します。タスクを作成してキューに push または追加することはできますが、タスクは処理されません。キューが再開されると、バックログに追加された順にバックログ内のタスクが処理されます。

コンソール

  1. Google Cloud コンソールで、[Cloud Tasks] > [キュー] ページに移動します。

    [キュー] に移動

  2. 一時停止するキューのチェックボックスをオンにします。

  3. [キューを一時停止] をクリックします。

  4. プロンプトが表示されたら、[一時停止] をクリックします。

  5. キューを再開するには、 [キューの再開] をクリックします。

gcloud

  1. gcloud tasks queues pause コマンドを使用してキューを一時停止します。

    gcloud tasks queues pause QUEUE_ID \
        --location=LOCATION

    次のように置き換えます。

    • QUEUE_ID: 一時停止するキューの名前
    • LOCATION: キューがデプロイされているリージョン(例: us-central1
  2. gcloud tasks queues resume コマンドを使用してキューを再開します。

    gcloud tasks queues resume QUEUE_ID \
        --location=LOCATION

REST

  1. キューを一時停止するには、projects.locations.queues.pause メソッドを使用します。

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

    • QUEUE_ID: 一時停止するキューの名前
    • PROJECT_ID: Google Cloudプロジェクト ID
    • LOCATION: キューがデプロイされているリージョン(例: us-central1

    リクエストの本文は空にする必要があります。

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

    成功した場合、レスポンスの本文には Queue のインスタンスが含まれます。

    {
      "name": "projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID",
      "rateLimits": {
        "maxDispatchesPerSecond": 500,
        "maxBurstSize": 100,
        "maxConcurrentDispatches": 1000
      },
      "retryConfig": {
        "maxAttempts": 100,
        "minBackoff": "0.100s",
        "maxBackoff": "3600s",
        "maxDoublings": 16
      },
      "state": "PAUSED"
    }
    

  2. キューを再開するには、projects.locations.queues.resume メソッドを使用します。

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

    • QUEUE_ID: 再開するキューの名前
    • PROJECT_ID: Google Cloudプロジェクト ID
    • LOCATION: キューがデプロイされているリージョン(例: us-central1

    リクエストの本文は空にする必要があります。

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

    成功した場合、レスポンスの本文には Queue のインスタンスが含まれます。

    {
      "name": "projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID",
      "rateLimits": {
        "maxDispatchesPerSecond": 500,
        "maxBurstSize": 100,
        "maxConcurrentDispatches": 1000
      },
      "retryConfig": {
        "maxAttempts": 100,
        "minBackoff": "0.100s",
        "maxBackoff": "3600s",
        "maxDoublings": 16
      },
      "state": "RUNNING"
    }
    

キューを削除する

キューを削除できます。キュー内のタスクも削除されます。キューを削除した場合は、同じ名前で再作成するまで 3 日間待つ必要があります。この待機時間により、削除時に実行中のタスクや実行待ちのタスクで予期しない動作が発生するのを防ぐことができます。また、削除または再作成サイクルでの内部プロセスの障害も回避できます。

コンソール

  1. Google Cloud コンソールで、[Cloud Tasks] > [キュー] ページに移動します。

    [キュー] に移動

  2. 削除するキューのチェックボックスをオンにします。

  3. [キューを削除] をクリックします。

  4. プロンプトが表示されたら、キュー名を入力し、[確認] をクリックします。

gcloud

gcloud tasks queues delete コマンドを使用してキューを削除します。

gcloud tasks queues delete QUEUE_ID \
    --location=LOCATION

次のように置き換えます。

  • QUEUE_ID: 削除するキューの名前
  • LOCATION: キューがデプロイされているリージョン(例: us-central1

REST

キューを削除するには、projects.locations.queues.delete メソッドを使用します。

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

  • QUEUE_ID: 削除するキューの名前
  • PROJECT_ID: Google Cloudプロジェクト ID
  • LOCATION: キューがデプロイされているリージョン(例: us-central1

リクエストの本文は空にする必要があります。

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

成功すると、レスポンスの本文は空になります。