Tutorial: usar o AWS Lambda com eventos programados - AWS Lambda

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Tutorial: usar o AWS Lambda com eventos programados

Neste tutorial, você faz o seguinte:

  • Crie uma função do Lambda usando o esquema Agende uma verificação periódica de qualquer URL. Você configura a função do Lambda para execução a cada minuto. Observe que, se a função retornar um erro, o Lambda registra as métricas de erro na Amazon. CloudWatch

  • Configure um CloudWatch alarme na Errors métrica da sua função Lambda para publicar uma mensagem no tópico do Amazon SNS AWS Lambda ao emitir métricas de erro para. CloudWatch Você se inscreve nos tópicos do Amazon SNS para receber notificação por e-mail. Neste tutorial, você faz o seguinte para configurar isso:

    • Crie um tópico do Amazon SNS.

    • Registre-se no tópico de forma que possa receber notificações por e-mail quando uma nova mensagem for publicada no tópico.

    • Na Amazon CloudWatch, defina um alarme na Errors métrica da sua função Lambda para publicar uma mensagem no tópico do SNS quando ocorrerem erros.

Pré-requisitos

Este tutorial presume que você tenha algum conhecimento de operações básicas do Lambda e do console do Lambda. Caso ainda não tenha feito isso, siga as instruções em Criar uma função do Lambda com o console para criar sua primeira função do Lambda.

Criar uma função do Lambda

  1. Faça login no AWS Management Console e abra o console AWS Lambda em https://console.aws.amazon.com/lambda/.

  2. Escolha a opção Criar função.

  3. Selecione Use o esquema.

  4. Abra a lista suspensa Selecionar esquema e escolha o esquema Agende uma verificação periódica de qualquer URL.

  5. Configure as definições a seguir.

    • Nome da função: lambda-canary.

    • Perfil de execução: Crie um novo perfil com base em modelos de política da AWS.

    • Role name (Nome da função): lambda-eventbridge-role.

    • Policy templates (Modelos de política): Simple microservice permissions.

    • Rule (Regra): Crie uma nova regra.

    • Rule name: CheckWebsiteScheduledEvent.

    • Rule description (Descrição da regra): CheckWebsiteScheduledEvent trigger.

    • Tipo de regraSchedule expression.

    • Schedule expression (Expressão de programação): rate(1 minute).

    • Variáveis de ambiente

      • site (local): https://docs.aws.amazon.com/lambda/latest/dg/welcome.html

      • expected (esperado): What is AWS Lambda?

  6. Escolha a opção Criar função.

EventBridge (CloudWatch Eventos) emite um evento a cada minuto, com base na expressão da programação. O evento aciona a função do Lambda, que verifica se a string esperada aparece na página especificada. Para obter mais informações sobre programações de expressões, consulte Programar expressões usando rate ou cron.

Testar a função do Lambda

Teste a função com um evento de exemplo fornecido pelo console do Lambda.

  1. Abra a página Funções do console do Lambda.

  2. Escolha a função lambda-canary.

  3. Escolha Testar.

  4. Crie um novo evento usando o modelo de CloudWatchevento (cloudwatch-scheduled-event).

  5. Escolha Create event (Criar evento).

  6. Escolha Invocar o .

A saída da execução da função é mostrada na parte superior da página.

Criar um tópico do Amazon SNS e inscrever-se nele

Crie um tópico do Amazon Simple Notification Service (Amazon SNS) para receber notificações quando a função canary retornar um erro.

Para criar um tópico
  1. Abra o console do Amazon SNS.

  2. Alterne para a Região da AWS na qual você criou a função do Lambda.

  3. Escolha Topics (Tópicos) e escolha Create topic (Criar tópico).

  4. Crie um tópico com as configurações a seguir.

    • Type (Tipo): Standard (Padrão).

    • Namelambda-canary-notifications.

    • Display name (Nome de exibição): Canary.

  5. Escolha Criar tópico.

  6. Na página do lambda-canary-notificationstópico, escolha Criar assinatura.

  7. Crie uma inscrição com as configurações a seguir.

    • Protocol (Protocolo): Email.

    • Endpoint: seu endereço de e-mail.

  8. Selecione Criar assinatura.

O Amazon SNS envia um e-mail de Canary <no-reply@sns.amazonaws.com>, refletindo o nome do tópico que é fácil de lembrar. Use o link no e-mail para confirmar seu endereço.

Configurar um alarme

Configure um alarme na Amazon CloudWatch que monitore a função Lambda e envie uma notificação quando ela falhar.

Para criar um alarme
  1. Abra o console de CloudWatch .

  2. Alterne para a Região da AWS na qual você criou a função do Lambda.

  3. Escolha All alarms (Todos os alarmes).

  4. Selecione Create alarm (Criar alarme).

  5. Na página Specify metric and conditions (Especificar métrica e condições), selecione Select metric (Selecionar métrica).

  6. Na caixa de pesquisa Metrics (Métricas), digite lambda-canary Errors (Erros lambda-canary).

  7. Escolha Lambda > By Function 1 Name (Lambda > por nome da função 1).

  8. Selecione a métrica lambda-canary Errors (Erros lambda-canary).

  9. Na página Specify metric and conditions (Especificar métrica e condições), no menu suspenso Statistic (Estatística), escolha Sum (Soma).

  10. Defina o limite como Greater/Equal (Superior/Igual) a 1.

  11. Na página Configure actions (Configurar ações), adicione uma notificação com as configurações a seguir:

    • Acionador de estado de alarme: In alarm (Em alarme)

    • Send notification to... (Enviar notificação para…): lambda-canary-notifications

  12. Na página Add name and description (Adicionar nome e descrição), insira o seguinte:

    • Nome: lambda-canary-alarm

    • Description (Descrição): Lambda canary alarm

  13. Selecione Criar alarme.

Testar o alarme

Atualize a configuração da função para fazer com que a função retorne um erro, o que aciona o alarme.

Como acionar um alarme
  1. Abra a página Funções do console do Lambda.

  2. Escolha a função lambda-canary.

  3. Role para baixo. Em Environment variables (Variáveis de ambiente), selecione Edit (Editar).

  4. Defina expected (esperado) como 404.

  5. Escolha Salvar.

Espere um minuto e verifique se há uma mensagem do Amazon SNS em seu e-mail.

Limpe os recursos

Agora você pode excluir os recursos criados para este tutorial, a menos que queira mantê-los. Excluindo os recursos da AWS que você não está mais usando, você evita cobranças desnecessárias em sua conta da AWS.

Como excluir a função do Lambda
  1. Abra a página Functions (Funções) no console do Lambda.

  2. Selecione a função que você criou.

  3. Escolha Ações, Excluir.

  4. Digite delete no campo de entrada de texto e escolha Delete (Excluir).

Para excluir o CloudWatch alarme
  1. Abra a página Todos os alarmes do CloudWatch console.

  2. Selecione o alarme que você criou.

  3. Escolha Ações, Excluir.

  4. Escolha Excluir.

Para excluir a inscrição do Amazon SNS
  1. Abrir oPágina AssinaturasNo console do Amazon SNS.

  2. Selecione a assinatura que você criou.

  3. Escolha Delete (Excluir), Yes, Delete (Sim, excluir).

Para excluir o tópico do Amazon SNS
  1. Abra a página Topics (Tópicos) no console do Amazon SNS.

  2. Selecione o tópico que você criou.

  3. Escolha Excluir.

  4. Digite delete me no campo de entrada de texto.

  5. Escolha Excluir.