Como agendar funções do AWS Lambda com eventos do CloudWatch
Se você deseja executar o código regularmente, como uma tarefa cron, pode usar o CloudWatch Events da AWS para executar automaticamente as Funções Lambda sem servidor em intervalos de tempo fixos, sem usar nenhum servidor real. >
O que são os eventos do CloudWatch?
O CloudWatch é um serviço da AWS que monitora e responde a alterações na sua infraestrutura de nuvem. É mais comumente usado para registro e monitoramento, mas geralmente atua como a cola que mantém muitas aplicações juntas.
Um desses recursos é o CloudWatch Events, um serviço que basicamente mapeia a causa. Há várias ações diferentes que podem disparar eventos, como interrupção de instância local para EC2, operações de bucket e nível de objeto para S3 etc. Então, pode desencadear outras ações, como executar uma função lambda, publicar na fila do SNS ou muitas outras ações.
O truque, neste caso, é que o evento não precisa ser desencadeado por algo. Há outra opção para executar eventos periodicamente, por um intervalo de tempo fixo, como a cada cinco minutos, ou usando a sintaxe cron para definir um período específico. Você pode vincular esse evento automático à função Lambda para executá-lo automaticamente.
Configurando uma função recorrente
Você, é claro, precisará de uma função que deseja executar. Você pode criá-los no Lambda Management Console. Se você deseja que uma função Hello World seja testada com o CloudWatch Events, será necessário registrar o evento para ter um registro de alguma saída.
'use strict'; export. handler = (evento, contexto, retorno de chamada) = > {console. log ('LogScheduledEvent'); console. log ('Evento recebido:', JSON. stringify (evento, nulo, 2)); retorno de chamada (nulo, 'Finalizado'); };[/PRÉ]Configure a função e teste-a com as ferramentas incorporadas, e visualize os logs e invocações recentes sob o "Monitoramento" ” guia.
Vá para o CloudWatch Management Console para criar uma nova regra, em Events > Regras na barra lateral.
Para a Fonte de Eventos, mude-a de "Padrão de Eventos" ” para a "Agenda" ” para configurar eventos automáticos. Você pode usar a taxa fixa ou a sintaxe cron para especificar um horário mais preciso. Você pode ler nosso guia para cron ou usar esta ferramenta on-line para ajudá-lo com a sintaxe, mas o formato geral é:
minuto hora dia mês dia da semana
Para o destino, adicione um novo destino e escolha "Função Lambda". ” Selecione o nome da função que você deseja executar.
Clique em "Configurar detalhes", ” dê um nome e crie a regra. Sua função Lambda deve começar a ser executada e você pode visualizar os logs na guia de monitoramento do Lambda ou nos logs do CloudWatch.
Via: How to Geek
Nenhum comentário