Configurar programações de cron job

Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

Os cron jobs são programados em intervalos recorrentes, especificados usando um formato baseado em unix-cron. É possível definir uma programação para que o job seja executado várias vezes por dia ou em dias e meses específicos. Embora não seja mais recomendado o uso dele, a sintaxe cron do App Engine legada ainda é compatível com jobs existentes.

Formato de cron job

Uma programação é definida usando o formato de string unix-cron (* * * * *), que é um conjunto de cinco campos em uma linha, indicando quando o job precisa ser executado.

Formato de string unix-cron

Para isso, use o Console do Google Cloud, a CLI do Google Cloud ou a API REST do Cloud Scheduler.

Os campos de horário têm o seguinte formato e possíveis valores e precisam seguir esta ordem:

Campo Valores válidos
Minuto 0-59
Hora 0-23
dia do mês 1-31
Mês 1-12 (ou JAN a DEC)
Dia da semana 0 a 6 (ou domingo a sábado ou 7 para domingo)

Caracteres especiais

  • Um campo pode conter um asterisco (*), que sempre representa "first-last".
  • Os intervalos são dois números separados por um hífen (-), e o intervalo especificado é inclusivo.
  • Seguir um intervalo com /NUMBER especifica"pular"o valor do número pelo intervalo. Por exemplo, 0-23/2 e */2 podem ser usados no campo Hour para especificar a execução a cada duas horas.
  • Uma lista é um conjunto de números (ou intervalos) separados por vírgulas (,). Por exemplo, 1,2,5,6 no campo Day of the month especifica uma execução no primeiro, segundo, quinto e sexto dias do mês.

Fuso horário

Selecione o fuso horário para avaliar a programação no Console do Google Cloud (na página Criar um job, selecione um Fuso horário na lista) ou use a sinalização gcloud --time-zone ao criar o job. O fuso horário padrão é Etc/UTC.

Em alguns fusos horários, o horário de verão pode causar a execução inesperada de jobs. Isso ocorre porque o Cloud Scheduler é executado no horário do relógio fixo. Nos casos em que um horário pode ocorrer duas vezes (como quando os relógios voltam para trás) e o job é programado nesse momento, o job programado pode observar anomalias de execução.

Se o job exigir uma cadência muito específica, considere escolher um fuso horário que não observe o horário de verão. Especificamente, o UTC é recomendado para o Cloud Scheduler evitar o problema completamente.

Exemplos de programação

A tabela a seguir mostra alguns exemplos de programações de cron jobs e a descrição deles:

Exemplo de programação Formato de cron job
A cada minuto * * * * *
Todo sábado às 23h45 45 23 * * 6
Todas as segundas-feiras às 9h (9h) 0 9 * * 1
Todos os domingos às 4h05 (4h05) 5 4 * * SUN
Todos os dias da semana (seg-sex) às 22h (22h) 0 22 * * 1-5