AWS Lambda e AWS X-Ray - AWS X-Ray

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

AWS Lambda e AWS X-Ray

Você pode usar AWS X-Ray para rastrear suas AWS Lambda funções. O Lambda executa o daemon do X-Ray e registra um segmento com detalhes sobre como invocar e executar a função. Para ampliar a instrumentação, você pode empacotar o X-Ray SDK com sua função para registrar chamadas de saída e adicionar anotações e metadados.

Se a função do Lambda for chamada por outro serviço instrumentado, o Lambda rastreará as solicitações que já foram amostradas sem nenhuma configuração adicional. O serviço precedente pode ser uma aplicação web instrumentada ou outra função do Lambda. Seu serviço pode invocar a função diretamente com um cliente AWS SDK instrumentado ou chamando uma API do API Gateway com um cliente HTTP instrumentado.

AWS X-Ray suporta o rastreamento de aplicativos orientados por eventos usando o Amazon AWS Lambda SQS. Use o CloudWatch console para ver uma visão conectada de cada solicitação conforme ela é enfileirada com o Amazon SQS e processada por uma função Lambda downstream. Os rastreamentos dos produtores de mensagens upstream são automaticamente vinculados aos rastreamentos dos nós consumidores do Lambda downstream, criando uma end-to-end visão do aplicativo. Para obter mais informações, consulte Rastrear aplicações orientadas a eventos.

nota

Se você tiver rastreamentos habilitados para uma função Lambda downstream, também deverá habilitar rastreamentos para a função Lambda raiz que chama a função downstream para que a função downstream gere rastreamentos.

Se a função do Lambda for executada de acordo com uma programação ou invocada por um serviço que não está instrumentado, você poderá configurar o Lambda para coletar amostras e registrar invocações por meio do rastreamento ativo.

Para configurar a integração do X-Ray em uma AWS Lambda função
  1. Abra o console de AWS Lambda.

  2. Selecione Funções no painel de navegação à esquerda.

  3. Escolha a função.

  4. Na guia Configuração, role para baixo até o cartão Ferramentas adicionais de monitoramento. Você também pode encontrar esse cartão selecionando Ferramentas de monitoramento e operações no painel de navegação esquerdo.

  5. Selecione Edit (Editar).

  6. Em AWS X-Ray, habilite o Rastreamento ativo.

Em runtimes com um X-Ray SDK correspondente, o Lambda também executa o daemon do X-Ray.

X-Ray SDKs no Lambda
  • X-Ray SDK para Go: Go 1.7 e runtimes mais recentes

  • X-Ray SDK para Java: runtime Java 8

  • X-Ray SDK para Node.js: Node.js 4.3 e runtimes mais recentes

  • X-Ray SDK para Python: Python 2.7, Python 3.6 e runtimes mais novos

  • X-Ray SDK para .NET: .NET Core 2.0 e runtimes mais recentes

Para usar o X-Ray SDK no Lambda, empacote-o com o código da função toda vez que você criar uma versão. É possível instrumentar as funções do Lambda com os mesmos métodos usados para instrumentar aplicações em execução em outros serviços. A principal diferença é que você não usa o SDK para instrumentar solicitações de entrada, tomar decisões de amostragem e criar segmentos.

A outra diferença entre a instrumentação de funções do Lambda e de aplicações web é que o segmento criado pelo Lambda e enviado para o X-Ray não pode ser modificado pelo código da função. Você pode criar subsegmentos e gravar anotações e metadados neles, mas não é possível adicionar anotações e metadados ao segmento pai.

Para obter mais informações, consulte Using AWS X-Ray no Guia do desenvolvedor do AWS Lambda .