Programar e executar um cron job

Neste guia de início rápido, mostramos como executar algumas operações básicas usando o Cloud Scheduler.

Neste guia de início rápido, você fará as seguintes tarefas:

  1. Criar um cron job usando o Cloud Scheduler.
  2. Definir uma programação recorrente para um job.
  3. Especificar um tópico do Pub/Sub como destino do job.
  4. Executar um job.
  5. Verificar se o job foi concluído com sucesso.

O Cloud Scheduler inclui um nível gratuito, por isso seguir este guia de início rápido não gerará custos. Para mais informações, consulte Preços.


Para seguir as instruções detalhadas desta tarefa diretamente no console do Google Cloud, clique em Orientação:

Orientações


Antes de começar

  1. Faça login na sua conta do Google Cloud. Se você começou a usar o Google Cloud agora, crie uma conta para avaliar o desempenho de nossos produtos em situações reais. Clientes novos também recebem US$ 300 em créditos para executar, testar e implantar cargas de trabalho.
  2. No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar o seletor de projetos

  3. Verifique se a cobrança está ativada para o seu projeto do Google Cloud.

  4. Instale a CLI do Google Cloud.
  5. Para inicializar a CLI gcloud, execute o seguinte comando:

    gcloud init
  6. No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar o seletor de projetos

  7. Verifique se a cobrança está ativada para o seu projeto do Google Cloud.

  8. Instale a CLI do Google Cloud.
  9. Para inicializar a CLI gcloud, execute o seguinte comando:

    gcloud init
  10. Se você não estiver usando o Cloud Shell, atualize os componentes da Google Cloud CLI:
    gcloud components update
  11. Faça login usando sua conta:
    gcloud auth login
  12. Ative as APIs Cloud Scheduler e Pub/Sub:

    gcloud services enable cloudscheduler.googleapis.com pubsub.googleapis.com

Criar um tópico e uma assinatura do Pub/Sub

Um tópico do Pub/Sub é um recurso que recebe mensagens enviadas pelos editores. Para receber mensagens publicadas em um tópico, você precisa criar uma assinatura nele.

  1. Configure um tópico Pub/Sub para usar como destino para seu trabalho cron:

    gcloud pubsub topics create cron-topic
    

    Isso criará um tópico chamado cron-topic.

  2. Para ver os resultados do job, crie uma assinatura do Pub/Sub:

    gcloud pubsub subscriptions create cron-sub --topic cron-topic
    

Criar um cron job usando o Cloud Scheduler

Configure uma unidade de trabalho programada, conhecida como cron job, que é enviada a um destino em uma programação recorrente.

  1. No console do Google Cloud, acesse a página Cloud Scheduler.

    Acessar o Cloud Scheduler

  2. Clique em Criar job.

  3. Dê um nome ao job.

  4. Na lista Região, selecione uma região para o job.

  5. Especifique uma Frequência para o job usando um formato baseado em unix-cron. Exemplo:

    30 16 * * 7
    

    Para mais informações, consulte Configurar programações de cron job.

  6. Na lista Fuso horário, selecione um fuso horário.

    Em alguns fusos horários, o horário de verão pode fazer com que jobs sejam executados ou não de forma inesperada. Para mais informações, consulte Fuso horário.

  7. Clique em Continuar.

  8. Na lista Tipo de destino, selecione Pub/Sub.

  9. Selecione o tópico que você criou anteriormente: cron-topic.

  10. No campo Corpo da mensagem, insira uma string a ser enviada para o tópico de destino do Pub/Sub. Por exemplo: "Hello world!"

  11. Clique em Criar.

Você criou um job que envia uma mensagem para um tópico do Pub/Sub às 16h30 aos domingos. Agora você pode executar o job.

Executar o job

Além de executar de acordo com a programação especificada, é possível forçar a execução do job imediatamente.

  1. No console do Google Cloud, acesse a página Cloud Scheduler.

    Acessar o Cloud Scheduler

    O job será listado.

  2. Na linha do job, clique em Ações > Forçar a execução de um job.

    Devido a algumas configurações iniciais, a execução do primeiro job criado em um projeto pode levar alguns minutos.

  3. Na coluna Status da última execução, o status Success indica que o cron job foi executado com sucesso.

Em seguida, verifique se o Pub/Sub recebeu a mensagem.

Verifique os resultados no Pub/Sub

Verifique se o tópico do Pub/Sub está recebendo mensagens do job.

  1. Receber mensagens de Pub/Sub de uma assinatura:

    gcloud pubsub subscriptions pull cron-sub --limit 5
    

    Se nenhuma mensagem for extraída inicialmente, execute o comando novamente.

  2. Veja os resultados da execução do job. A saída será semelhante a:

    DATA: Hello world!
    MESSAGE_ID: 5028933846601543
    ORDERING_KEY:
    ATTRIBUTES:
    DELIVERY_ATTEMPT:
    ACK_ID: RFAGFixdRkhRNxkIaFEOT14jPzUgKEUQAgVPAihdeTFXLkFacGhRDRlyfWB9[...]
    

Limpar

Para evitar cobranças na sua conta do Google Cloud pelos recursos usados nesta página, siga estas etapas.

  1. Exclua o cron job criado:

    1. No console do Google Cloud, acesse a página do Cloud Scheduler.

      Acessar o Cloud Scheduler

    2. Marque a caixa de seleção do seu job.

    3. Clique em Delete (Excluir) e confirme a exclusão.

  2. Exclua o tópico Pub/Sub:

    1. No console do Google Cloud, acesse a página Pub/Sub.

      Ir para o Pub/Sub

    2. Marque a caixa de seleção do seu tópico.

    3. Clique em Delete (Excluir) e confirme a exclusão.

  3. Excluir o projeto:

    1. No Console do Google Cloud, acesse a página Gerenciar recursos.

      Acessar "Gerenciar recursos"

    2. Na lista de projetos, selecione o projeto que você quer excluir e clique em Excluir .
    3. Na caixa de diálogo, digite o ID do projeto e clique em Encerrar para excluí-lo.

A seguir