PT
EspañolEnglishFrançaisDeutschPortuguêsItaliano
Entrar Comece grátis
Lambda

Como agendar uma função Lambda para que se execute sozinha todas as noites

Tem uma tarefa que deve acontecer todos os dias a uma hora: limpar, enviar um resumo, verificar algo. Como fazer com que uma função Lambda se execute sozinha com o EventBridge Scheduler, no seu fuso horário, e como saber se foi executada. Explicado para quem nunca agendou uma tarefa na nuvem.

⏱ 15 minutos ◎ Para todos Atualizado em 26/10/2026

Há tarefas que ninguém lança: acontecem todas as noites. Apagar ficheiros temporários, enviar o resumo do dia, verificar que um site responde, fazer uma cópia. Num servidor clássico usava-se o cron; na AWS, quando a tarefa é um programa pequeno, a forma limpa é uma função Lambda (o código) mais um agendador (o despertador) que a chame à hora que disser. O agendador chama-se EventBridge Scheduler e é grátis na prática para umas poucas execuções por dia. Este guia liga as duas coisas.

Antes de começar: o que significa cada coisa

Função Lambda
Um pedaço de código seu guardado na Amazon que se executa quando algo o chama. Paga por execução, não por ter nada ligado.
EventBridge Scheduler
O despertador da AWS: executa uma ação (por exemplo, chamar a sua função) às horas que agendar.
Agendamento
Cada "alarme" do despertador: quando e a quem chamar.
Expressão cron
A forma clássica de escrever horários repetitivos com números: minuto, hora, dia do mês, mês, dia da semana. O guia dá-lhe as expressões feitas.
Fuso horário
O Scheduler permite escolher o seu (Europe/Madrid), por isso as 3:00 são as 3:00 também com a mudança de hora.
Função (role) de execução
A permissão de que o despertador precisa para chamar a sua função. O Scheduler cria-a sozinho se lho pedir.
CloudWatch Logs
Onde a função escreve o seu diário de cada vez que se executa. É como verifica que funcionou.

Passo a passo

  1. Prepare a função para que funcione sem ninguém à frente

    Abra a função na consola do Lambda e teste-a com o botão Testar com um evento vazio ({}): deve terminar sem erro. Se precisar de dados (uma palavra-passe, um endereço), ponha-os nas variáveis de ambiente da função (Configuração), não no código. E verifique o tempo limite (Configuração geral): se a tarefa demora dois minutos e o limite é de três segundos, vai falhar todas as noites.

  2. Abra o agendador

    Procure Amazon EventBridge na consola e, no menu da esquerda, Scheduler, Programações, Criar programação. Nome: limpieza-nocturna. Grupo: o predefinido.

  3. Diga quando

    Padrão: Programação recorrente, tipo Programação baseada em cron. Para todas as noites às 3:00:

    cron(0 3 * * ? *)

    Para as 8:00 de segunda a sexta: cron(0 8 ? * MON-FRI *). Para o dia 1 de cada mês às 7:00: cron(0 7 1 * ? *). Por baixo, Fuso horário: escolha o seu (Europe/Madrid). O ecrã mostra-lhe as próximas dez execuções para que confirme que são as que espera. Janela flexível: Desativada se quiser a hora exata.

  4. Diga a quem chamar

    Destino: Modelos de destino, AWS Lambda - Invoke. Selecione a sua função na lista. Em Carga (payload) pode deixar {} ou passar dados que a função leia do evento, por exemplo {"modo": "nocturno"}: assim a mesma função pode fazer coisas diferentes consoante quem a chama.

  5. Permissões e novas tentativas

    Em Configurações, deixe Criar uma nova função para esta programação: o Scheduler dar-lhe-á exatamente a permissão de invocar essa função. Na política de novas tentativas, 2 ou 3 tentativas estão bem para uma tarefa que não faz mal repetir; para uma que envia e-mails, ponha 0 para não enviar duas vezes. Deixe a ação após a conclusão em NENHUMA (o agendamento recorrente não se apaga). Seguinte, reveja e Criar programação.

  6. Verifique a primeira execução

    No dia seguinte (ou ponha uma execução de teste daqui a cinco minutos e depois mude-a), abra a função, separador Monitorar: o gráfico de invocações deve mostrar uma à hora agendada, e Visualizar logs do CloudWatch mostra o que escreveu. Se não houver nada, veja o agendamento no Scheduler: o seu estado deve ser "Habilitada" e o separador de detalhes mostra a última execução e se falhou.

O que pode correr mal

Não se executou à hora que pus

Deixou o fuso horário em UTC: no inverno é uma hora a menos do que em Espanha, no verão duas. Edite o agendamento e escolha Europe/Madrid. Ou a expressão cron tem os campos trocados: na AWS a ordem é minuto, hora, dia do mês, mês, dia da semana, ano, e um dos dois "dia" tem de ser ?.

Executa-se mas a função falha

O problema é a função, não o despertador. Veja os registos do CloudWatch: a exceção está lá. O habitual: falta-lhe uma permissão para fazer o que faz (a sua própria função de execução), ou esgota o tempo limite.

Executa-se duas vezes

Novas tentativas: a primeira execução falhou ou demorou demasiado e o Scheduler voltou a tentar. Baixe as tentativas para 0 se repetir for um problema, e faça com que a função não demore mais do que o seu limite.

Quero parar a tarefa uns dias

No Scheduler, selecione o agendamento e Desabilitar. Fica guardado; volta a habilitá-lo quando quiser. Não é preciso apagá-lo.

No Simplio

No Simplio cada função Lambda mostra a sua última execução, se correu bem e o que escreveu, e agendá-la é escolher "todos os dias", "todas as semanas" ou "todos os meses" e uma hora no seu fuso horário: o Simplio cria o agendamento e a permissão. Se uma execução falhar, avisa-o por e-mail. E pode executá-la agora mesmo com um botão e ver a resposta, sem sair do ecrã.

O mesmo, na AWS e no Simplio

Na consola da AWSNo Simplio
Agendar a funçãoEventBridge Scheduler: expressão cron, fuso horário, destino, função, tentativas: 6 passosNa função: "todos os dias às 3:00" numa lista e uma hora, no seu fuso horário
Saber se foi executadaGráfico de Monitorar e registos do CloudWatchÚltima execução, resultado e registos no cartão da função; aviso por e-mail se falhar
Testá-la à mãoBotão Testar no Lambda com um evento JSONBotão Executar agora, com a resposta e os registos no mesmo ecrã

Experimentar grátis 15 dias Ver como funciona

Tudo isto, sem a consola da AWS

O Simplio é um painel em português para gerir as suas contas AWS: máquinas, cópias programadas, bases de dados, domínios, e-mail e o que a AWS lhe cobra, com permissões por pessoa e duplo fator. Sem instalar nada nos seus servidores.

Comece grátis 15 dias, sem cartão

Já é cliente? Acesso de clientes.