Depurar aplicativos sem servidor usando oAWSSAM Local - AWS Toolkit for Eclipse

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á.

Depurar aplicativos sem servidor usando oAWSSAM Local

Este tutorial orienta você durante a depuração de um projeto de aplicativo sem servidor com o Toolkit for Eclipse usandoAWSSAM Local. O SAM Local é oAWSFerramenta CLI para gerenciar aplicativos sem servidor escritos com oAWSModelo de aplicativo sem servidor daAWSSAM). Para obter mais informações, consulte o arquivo LEIA-ME do SAM Local.

Pré-requisitos

Para usar este tutorial, você deve ter o Toolkit for Eclipse, Docker eAWSInstalado o SAM Local. Consulte oAWSSAM LocalLEIAMEPara obter instruções de instalação do Docker e SAM Local. Consulte oConceitos básicosPara obter instruções sobre como instalar e configurar o Toolkit for Eclipse.

nota

Para usar aAWSPara o recurso SAM Local do Toolkit for Eclipse, seu projeto deve ser um projeto Maven válido com um arquivo pom.xml.

Após instalar as ferramentas necessárias, abra a caixa de diálogo Preferences (Preferências) do Eclipse no menu Eclipse. Configure o caminho SAM Local Executable (Executável do SAM Local), conforme mostrado. Isso permite que o Toolkit for Eclipse saiba onde encontrar a instalação do SAM Local.


            Caixa de diálogo do SAM Local

Importe o aplicativo SAM do AWS CodeStar

Para este tutorial, você precisa de um projeto de amostra no AWS CodeStar. Consulte oCriar um projeto sem servidor noAWSCodeStartutorial noGuia do usuário do AWS CodeStarPara criar um projeto de amostra do.

Para importar o aplicativo SAM do AWS CodeStar

  1. Na barra de ferramentas do Eclipse, abra o menu do Amazon Web Services (identificado peloAWSícone homepage) e, em seguida, escolhaImportaçãoAWSProjeto CodeStar. Ou, na barra de menus do Eclipse, escolhaArquivo,Importação,AWS,AWSProjeto CodeStar.

  2. Escolha a região em que o aplicativo de amostra foi criado.

  3. Escolha seu projeto de amostra na lista Project Name (Nome do projeto).

  4. Adicionar a suas credenciais do Git. Consulte oAWSGuia do usuário do CodeCommitPara saber como obter credenciais do Git para o CodeCommit.

    
                  Importação do SAM Local noAWSCaixa de diálogo Seleção de projeto do CodeStar
  5. Escolha Next (Próximo).

  6. Selecione Next (Próximo) na página Branch Selection (Seleção de ramificação).

  7. Selecione Finish (Concluir) na página Local Destination (Destino local).

Em seguida, você pode depurar este aplicativo sem servidor localmente usando o SAM Local no Eclipse.

Depurar a função do Lambda localmente

Crie uma configuração de depuração para seu aplicativo sem servidor e use o SAM Local para executar o aplicativo localmente.

Para depurar a função do Lambda localmente

  1. No Project Explorer (Explorador do projeto) do Eclipse, abra HelloWorldHandler.java.

  2. Clique com o botão direito na janela de código do Eclipse e selecioneDepurar comoe, depois, escolhaAWSSAM Local.

    
                  Caixa de diálogo de depuração do SAM Local
  3. Para este exemplo, deixe Project (Projeto) e Template (Modelo) como estão.

  4. Selecione Lambda Function (Função do Lambda) no campo Run as (Executar como).

  5. Selecione GetHelloWorld no campo Function identifier (Identificador da função).

  6. Para este exemplo, forneceremos um evento do Amazon S3. Selecione Generate (Gerar) ao lado da caixa de entrada Event (Evento).

    
                  Caixa de diálogo de depuração do SAM Local
  7. Escolha uma região com o bucket do Amazon S3.

  8. Insira um nome de bucket do Amazon S3.

  9. Insira uma chave de objeto do Amazon S3 válida e selecioneOK.

  10. Na página Save As (Salvar como), selecione o projeto atual e insira um nome para o arquivo de evento. Neste exemplo, usamos s3-event.json.

    
                  Caixa de diálogo de depuração do SAM Local
  11. Selecione OK para salvar o arquivo de evento e volte para a caixa de diálogo principal.

  12. Deixe as configurações avançadas como estão. Consulte Configurações avançadas para saber mais sobre esses campos.

  13. Escolha Apply e selecione Debug.

Isso executa a função do Lambda localmente. Você pode definir pontos de interrupção como faria para outros aplicativos ao depurar o código.

Testar o API Gateway localmente

Você também pode testar a funcionalidade de solicitação/resposta de HTTP com o SAM local.

Para testar a API Gateway localmente

  1. Clique com o botão direito na janela de código do Eclipse, selecione Debug As (Depurar como), Debug Configuration (Configuração de depuração).

    
                  Caixa de diálogo de depuração do SAM Local
  2. Crie uma nova configuração de depuração nessa execução e atribua um nome diferente a ela.

  3. Selecione API Gateway no campo Run as (Executar como).

  4. Ao deixar todos os outros campos como estão, sua configuração deve ficar parecida com essa:

    
                  Caixa de diálogo de depuração do SAM Local
  5. Escolha Apply e selecione Debug.

Isso gera um API gateway local que você pode usar para testar seu aplicativo. O resultado da depuração contém links de HTTP que podem ser usados para verificar a funcionalidade de solicitação/resposta do seu código.


            Exemplo de resultado de depuração do SAM Local para gateway de api

Configurações avançadas

Esta seção descreve as opções avançadas disponíveis na página de configuração de depuração do SAM Local.


            Opções avançadas da caixa de diálogo de depuração do SAM Local

Configuração do AWS

Selecionar perfil

(Obrigatório) O perfil usadoAWSCredenciais da .

(Padrão) O perfil padrão

Selecione a região

(Obrigatório) A região na qual o aplicativo é implementado.

(Padrão) Leste dos EUA (Virgínia)

Configuração do SAM Local

Objetivos do Maven

(Obrigatório) Os objetivos do Maven para executar ao criar o aplicativo. Você deve personalizar esses objetivos se os padrão não gerarem um arquivo Jar com todas as dependências inclusas (fat Jar). Consulte Plugin do Maven Shade no projeto Maven para saber como usar o plug-in para criar um fat Jar.

(Padrão) Pacote de limpeza

Tempo de execução do SAM

(Obrigatório) Caminho do executável do SAM.

(Padrão) /usr/local/bin/sam

Porta de depuração

(Obrigatório) Porta que o depurador do Eclipse usa para se conectar ao SAM Local.

(Padrão) 5858

Env vars

(Opcional) Caminho para um arquivo JSON que contém valores para variáveis de ambiente usadas pelas funções do Lambda. Consulte os arquivos de variável de ambiente no guia do usuário do SAM Local para conhecer a sintaxe necessária para este arquivo.

(Padrão) Vazio

Configuração da função do Lambda

URI do código

(Opcional) Caminho do arquivo de código. Para o exemplo nesta página, seria o caminho do arquivo .jar.

(Padrão) Caminho no arquivo template.yml

Tempo limite

(Obrigatório) Tempo limite de tempo de execução da função do Lambda.

(Padrão) 300

Mais informações

Para obter mais informações sobreAWSSAM Local, veja oAWSSAM Localguia do usuário no GitHub. Para obter mais informações sobre oAWSModelo de aplicativo sem servidor (SAM), consulte oAWSSAMprojeto no GitHub.