Scheduler Trigger
Saiba mais sobre o Scheduler Trigger e como usá-lo na Digibee Integration Platform.
Visão geral
O Scheduler Trigger executa um pipeline em um agendamento recorrente definido por uma expressão cron. Ele é útil quando a fonte de dados não consegue enviar dados para a Digibee via webhooks ou triggers baseados em eventos, e o pipeline precisa buscar os dados em um intervalo fixo.
O campo Cron Expression também aceita Globals, permitindo que diferentes ambientes (por exemplo, Test e Prod) executem o mesmo pipeline em agendamentos distintos sem precisar duplicar a definição do pipeline.
Variáveis do Scheduler Trigger
O Scheduler Trigger possui quatro tipos:
5-Minute Scheduler: Pré-configurado para executar a cada 5 minutos.
30-Minute Scheduler: Pré-configurado para executar a cada 30 minutos.
Midnight Scheduler: Pré-configurado para executar à meia-noite no fuso horário selecionado.
Custom Scheduler: Sem pré-configuração. Aceita uma expressão cron personalizada.
Parâmetros
Cron Expression
Expressão que define segundos, minutos, horas e a recorrência de um pipeline em dias. Aceita um valor estático ou uma Global do tipo Cron usando a sintaxe Double Braces (por exemplo, {{global.myCronExpression}}).
Para detalhes sobre o formato da expressão, consulte a documentação do Quartz Scheduler. Para construir expressões de forma interativa, utilize o CronMaker.
String
✅
N/A
Time Zone
Fuso horário sob o qual o pipeline é executado. Se não especificado, o UTC é utilizado. Por exemplo, 12:00 UTC corresponde às 09:00 no fuso horário de São Paulo.
String
❌
N/A
Maximum Timeout
Tempo máximo de processamento do pipeline antes de encerrar a execução, em milissegundos.
Integer
❌
30000
Retries
Número máximo de tentativas de reexecução em caso de falha.
Integer
❌
0
Allow Redelivery Of Messages
Quando habilitado, permite que mensagens sejam reenviadas caso o Pipeline Engine falhe.
Boolean
❌
false
Allow Concurrent Scheduling
Quando habilitado, uma nova execução é iniciada mesmo que uma execução anterior ainda esteja em andamento.
Boolean
❌
false
Informações adicionais dos parâmetros
Allow Concurrent Scheduling
Se um pipeline está configurado para executar a cada 3 minutos e uma execução anterior leva 4 minutos, este parâmetro determina se a próxima execução será iniciada imediatamente ou aguardará.
Habilitado: A próxima execução inicia no horário agendado, independentemente de a execução anterior ter sido concluída.
Desabilitado: A próxima execução fica em espera até que a execução anterior seja concluída.
Cron Expression com Globals
É possível referenciar uma Global no campo Cron Expression para aplicar agendamentos diferentes por ambiente usando uma única definição de pipeline. Por exemplo, o ambiente de Test pode executar a cada 5 minutos, enquanto o ambiente de Prod executa uma vez ao dia.
Como configurar
Antes de referenciar uma Global no trigger, crie uma na área de gerenciamento de Globals.
Acesse a página Build na plataforma.
Acesse Globals.
Clique em Criar.
Selecione a categoria Cron.
Defina o valor da expressão cron para cada ambiente (Test, Prod).
Preencha os campos restantes conforme descrito na documentação de Globals.
Clique em Salvar.

Após criar a Global, abra o pipeline e acesse a configuração do trigger. No campo Cron Expression, digite {{global. e selecione a variável desejada. Apenas variáveis da categoria Cron serão listadas. Após a seleção, o campo será preenchido com {{global.global-name}}.
Note que a resolução da variável acontece no momento do deploy. Ao fazer o deploy do pipeline, o sistema valida e aplica a Global referenciada para aquele ambiente.
Scheduler Trigger em ação
Este trigger é útil quando uma fonte de dados não consegue enviar dados para a Digibee via HTTP, REST, HTTP File, Kafka, RabbitMQ ou JMS. Casos de uso comuns incluem:
Busca de arquivos em SFTP, FTP, Amazon S3, Google Cloud Storage e serviços similares de armazenamento de arquivos.
Consultas diretas a bancos de dados (neste caso, utilize o conector Stream DB com paginação).
Verificação do status de endpoints da Digibee Integration Platform que não suportam notificações baseadas em webhook.
Cenário: Pipeline executado a cada 30 segundos, sem sobreposição, usando uma fonte de dados estática
O exemplo a seguir mostra como configurar um Scheduler Trigger para executar um pipeline a cada 30 segundos sem sobreposição de execuções. Um timeout de 2 minutos é definido utilizando o fuso horário de São Paulo (UTC-3).
Crie um novo pipeline e configure o trigger com os seguintes valores:
Cron Expression:
0/30 ** ? ***Time Zone:
America/Sao_PauloMaximum Timeout:
120000Retries:
0Allow Redelivery Of Messages: desabilitado
Allow Concurrent Scheduling: desabilitado
Em seguida, adicione um conector JSON Generator (Mock) ao pipeline e conecte-o ao trigger. Configure-o com o seguinte JSON para que o pipeline retorne um payload estático a cada execução:
A cada execução do pipeline, o JSON configurado é retornado automaticamente.
Atualizado
Isto foi útil?