Gerenciar filas e tarefas

É possível gerenciar filas e tarefas das seguintes maneiras:

  • No console do Google Cloud
  • Usando a Google Cloud CLI no terminal ou no Cloud Shell
  • Enviando uma solicitação para a API Cloud Tasks

Excluir uma tarefa de uma fila

É possível excluir uma tarefa se ela estiver agendada ou enviada. Por exemplo, talvez seja necessário excluir uma tarefa que não pode ser concluída, não importa quantas tentativas sejam feitas. Não é possível excluir uma tarefa se ela foi concluída com sucesso ou se as tentativas acabaram após falhas constantes.

Console

  1. No Google Cloud console, acesse a página Cloud Tasks > Filas.

    Acessar "Filas"

  2. Clique no nome da fila da tarefa que você quer excluir.

  3. Marque a caixa de seleção da tarefa que você quer excluir.

  4. Clique em Excluir tarefa.

  5. No prompt, clique em Excluir.

gcloud

Exclua uma tarefa usando o comando gcloud tasks delete:

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

Substitua:

  • TASK_NAME: o nome da tarefa que você quer excluir
  • QUEUE_ID: o nome da fila a que a tarefa pertence
  • LOCATION: a região em que a fila é implantada, por exemplo, us-central1

REST

Para excluir uma tarefa, use o método projects.locations.queues.tasks.delete.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • QUEUE_ID: o nome da fila a que a tarefa pertence
  • TASK_NAME: o nome da tarefa que você quer excluir
  • PROJECT_ID: o ID do projeto Google Cloud
  • LOCATION: a região em que a fila existe, por exemplo, us-central1.

O corpo da solicitação precisa estar vazio.

Para enviar a solicitação, expanda uma destas opções:

Se a solicitação for concluída, o corpo da resposta estará vazio.

Limpar todas as tarefas de uma fila

É possível excluir todas as tarefas de uma fila limpando-as. Todas as tarefas criadas antes da chamada de limpeza são excluídas permanentemente. No entanto, as operações de limpeza podem levar até um minuto para entrar em vigor, e as tarefas podem ser enviadas antes da limpeza.

Console

  1. No Google Cloud console, acesse a página Cloud Tasks > Filas.

    Acessar "Filas"

  2. Clique no nome da fila com as tarefas que você quer excluir.

  3. Clique em Limpar fila.

  4. No prompt, clique em Limpar.

gcloud

Limpe uma fila usando o comando gcloud tasks queues purge:

gcloud tasks queues purge QUEUE_ID \
    --location=LOCATION

Substitua:

  • QUEUE_ID: o nome da fila que você quer limpar.
  • LOCATION: a região em que a fila é implantada, por exemplo, us-central1

REST

Para limpar uma fila, use o método projects.locations.queues.purge.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • QUEUE_ID: o nome da fila que você quer limpar
  • PROJECT_ID: o ID do projeto Google Cloud
  • LOCATION: a região em que a fila é implantada, por exemplo, us-central1.

O corpo da solicitação precisa estar vazio.

Para enviar a solicitação, expanda uma destas opções:

Se houver êxito, o corpo da resposta conterá uma instância de 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"
}

Pausar ou retomar filas

Você pode pausar ou retomar uma fila. Pausar uma fila significa que a execução e a entrega de tarefas são interrompidas. Você ainda pode criar tarefas e enviá-las ou anexá-las à fila, mas elas não serão processadas. Quando a fila é retomada, todas as tarefas pendentes são processadas na ordem em que foram adicionadas ao backlog.

Console

  1. No Google Cloud console, acesse a página Cloud Tasks > Filas.

    Acessar "Filas"

  2. Marque a caixa de seleção da fila que você quer pausar.

  3. Clique em Pausar fila.

  4. Na solicitação, clique em Pausar.

  5. Para retomar a fila, clique em Retomar fila.

gcloud

  1. Pause uma fila usando o comando gcloud tasks queues pause:

    gcloud tasks queues pause QUEUE_ID \
        --location=LOCATION

    Substitua:

    • QUEUE_ID: o nome da fila que você quer pausar
    • LOCATION: a região em que a fila é implantada, por exemplo, us-central1
  2. Retome uma fila usando o comando gcloud tasks queues resume:

    gcloud tasks queues resume QUEUE_ID \
        --location=LOCATION

REST

  1. Para pausar uma fila, use o método projects.locations.queues.pause.

    Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

    • QUEUE_ID: o nome da fila que você quer pausar
    • PROJECT_ID: o ID do projeto Google Cloud
    • LOCATION: a região em que a fila é implantada, por exemplo, us-central1.

    O corpo da solicitação precisa estar vazio.

    Para enviar a solicitação, expanda uma destas opções:

    Se houver êxito, o corpo da resposta conterá uma instância de 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. Para retomar uma fila, use o método projects.locations.queues.resume.

    Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

    • QUEUE_ID: o nome da fila que você quer retomar.
    • PROJECT_ID: o ID do projeto Google Cloud
    • LOCATION: a região em que a fila é implantada, por exemplo, us-central1.

    O corpo da solicitação precisa estar vazio.

    Para enviar a solicitação, expanda uma destas opções:

    Se houver êxito, o corpo da resposta conterá uma instância de 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"
    }
    

Listar filas

É possível listar filas. Ao listar filas, alguns detalhes de limite de taxa e parâmetro de nova tentativa são retornados. Os seguintes campos são equivalentes:

  • Taxa máxima (console), MAX_RATE (gcloud), maxDispatchesPerSecond (REST)
  • Máximo de simultâneas (console), MAX_NUM_OF_TASKS (gcloud), maxConcurrentDispatches (REST)

Console

  1. No Google Cloud console, acesse a página Cloud Tasks > Filas.

    Acessar "Filas"

    Todas as filas no seu projeto Google Cloud são listadas.

  2. Para mais detalhes, clique no nome de uma fila e na guia Configuração.

    Os detalhes da limitação de taxa e do parâmetro de nova tentativa são mostrados.

gcloud

Liste as filas usando o comando gcloud tasks queues list:

gcloud tasks queues list \
    --location=LOCATION

Substitua LOCATION pela região em que a fila é implantada, por exemplo, us-central1. Se um local não for especificado, o local do aplicativo do App Engine do projeto Google Cloud será usado, se existir. Caso contrário, especifique um local.

A saída será semelhante a esta:

QUEUE_NAME: my-queue
STATE: PAUSED
MAX_NUM_OF_TASKS: 1000
MAX_RATE (/sec): 500.0
MAX_ATTEMPTS: 100
...

REST

Para listar as filas, use o método projects.locations.queues.list.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • PROJECT_ID: o ID do projeto do Google Cloud.
  • LOCATION: a região em que as filas são criadas, por exemplo, us-central1.

Para enviar a solicitação, expanda uma destas opções:

Se a operação for bem-sucedida, o corpo da resposta vai conter instâncias de recursos Queue, e a resposta será semelhante a esta:

{
  "queues": [
    {
      "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",
      "purgeTime": "2025-03-28T13:37:32.292552Z"
    },
    ...
  ],
  "nextPageToken": "CjQKCHppcHBlcjIAEgwI9-GExAYQ_oDc1AMaGioLeWlrZXMtYWdhaW4yC3VzLWNlbnRyYWwx"
}

Excluir filas

É possível excluir uma fila. Todas as tarefas na fila também são excluídas. Se você excluir uma fila, aguarde três dias antes de recriar com o mesmo nome. Esse período de espera evita comportamentos inesperados em tarefas que estão em execução ou aguardando para serem executadas no momento da exclusão. Isso também evita falhas no processo interno no ciclo de exclusão ou recriação.

Console

  1. No Google Cloud console, acesse a página Cloud Tasks > Filas.

    Acessar "Filas"

  2. Marque a caixa de seleção da fila que você quer excluir.

  3. Clique em Excluir fila.

  4. No prompt, digite o nome da fila e clique em Confirmar.

gcloud

Exclua uma fila usando o comando gcloud tasks queues delete:

gcloud tasks queues delete QUEUE_ID \
    --location=LOCATION

Substitua:

  • QUEUE_ID: o nome da fila que você quer excluir
  • LOCATION: a região em que a fila é implantada, por exemplo, us-central1

REST

Para excluir uma fila, use o método projects.locations.queues.delete.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • QUEUE_ID: o nome da fila que você quer excluir
  • PROJECT_ID: o ID do projeto Google Cloud
  • LOCATION: a região em que a fila é implantada, por exemplo, us-central1.

O corpo da solicitação precisa estar vazio.

Para enviar a solicitação, expanda uma destas opções:

Se a solicitação for concluída, o corpo da resposta estará vazio.