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á.
Uso do AWS X-Ray para rastrear solicitações no AWS AppSync
Você pode usar AWS X-Ray para rastrear solicitações à medida que são executadas no AWS AppSync. Você pode usar o X-Ray com AWS AppSync em todas as regiões da AWS onde o X-Ray está disponível. O X-Ray oferece uma visão geral detalhada de uma solicitação GraphQL inteira. Dessa forma, é possível analisar latências em suas APIs e seus resolvedores e fontes de dados subjacentes. Você pode usar um mapa de serviço do X-Ray para visualizar a latência de uma solicitação, incluindo todos os serviços da AWS integrados ao X-Ray. Também é possível configurar regras de amostragem para informar ao X-Ray quais solicitações registrar e com quais taxas de amostragem, de acordo com os critérios especificados.
Para obter mais informações sobre amostragem no X-Ray, consulte Configuração de regras de amostragem no console AWS X-Ray.
Definição e configuração
É possível habilitar o rastreamento do X-Ray para uma API GraphQL por meio do console do AWS AppSync.
-
Faça logon no console do AWS AppSync.
-
Selecione Configurações no painel de navegação.
-
Em X-Ray, ative a opção Habilitar o X-Ray.
-
Escolha Salvar. O rastreamento do X-Ray agora está habilitado para sua API.
Se estiver usando AWS CLI ou AWS CloudFormation, você também poderá ativar o rastreamento do X-Ray ao criar uma API do AWS AppSync ou atualizar uma API do AWS AppSync existente, definindo a propriedade xrayEnabled como true.
Quando o rastreamento do X-Ray está habilitado para uma API do AWS AppSync, uma função AWS Identity and Access Management vinculada ao serviço é criada automaticamente em sua conta com as permissões apropriadas. Isso permite que o AWS AppSync envie rastreamentos para o X-Ray de forma segura.
Rastreamento da sua API com o X-Ray
Amostragem
Ao usar regras de amostragem, é possível controlar a quantidade de dados gravados no AWS AppSync e modificar o comportamento de amostragem instantaneamente, sem modificar nem reimplantar o código. Por exemplo, esta regra faz amostragem de solicitações para a API GraphQL com o ID da API 3n572shhcpfokwhdnq1ogu59v6.
-
Rule name (Nome da regra —
test-sample -
Prioridade —
10 -
Tamanho do reservatório —
10 -
Taxa fixa —
10 -
Nome do serviço —
* -
Tipo de serviço —
AWS::AppSync::GraphQLAPI -
Método HTTP —
* -
ARN do recurso —
arn:aws:appsync:us-west-2:123456789012:apis/3n572shhcpfokwhdnq1ogu59v6 -
Host —
*
Noções básicas sobre rastreamentos
Ao habilitar o rastreamento do X-Ray para sua API GraphQL, é possível usar a página de detalhes de rastreamento do X-Ray para examinar informações detalhadas de latência sobre solicitações feitas para a API. O exemplo a seguir mostra a exibição de rastreamento junto com o mapa de serviço para essa solicitação específica. A solicitação foi feita para uma API chamada postAPI com um tipo Post, cujos dados estão contidos em uma tabela do Amazon DynamoDB chamada PostTable-Example.
A imagem de rastreamento a seguir corresponde à seguinte consulta do GraphQL:
query getPost { getPost(id: "1") { id title } }
O resolvedor para a consulta getPost usa a fonte de dados subjacente do DynamoDB. A exibição de rastreamento a seguir mostra a chamada para o DynamoDB, bem como as latências de várias partes da execução da consulta:
-
Na imagem anterior,
/getPostrepresenta o caminho completo para o elemento que está sendo resolvido. Nesse caso, comogetPosté um campo no tipo raizQuery, ele é exibido diretamente após a raiz do caminho. -
requestMappingTemplateEvaluationrepresenta o tempo gasto pelo AWS AppSync para avaliar o modelo de mapeamento de solicitação para esse elemento na consulta. -
Query.getPostrepresenta um tipo e um campo (no formatoType.field). Ele pode conter vários subsegmentos, dependendo da estrutura da API e da solicitação que está sendo rastreada.-
DynamoDBrepresenta a fonte de dados associada a esse resolvedor. Ele contém a latência para a chamada de rede para o DynamoDB resolver o campo. -
responseMappingTemplateEvaluationrepresenta o tempo gasto pelo AWS AppSync para avaliar o modelo de mapeamento de resposta para esse elemento na consulta.
-
Ao exibir rastreamentos no X-Ray, é possível obter informações contextuais e de metadados adicionais sobre os subsegmentos no segmento do AWS AppSync escolhendo os subsegmentos e explorando a exibição detalhada.
Para determinadas consultas profundamente aninhadas ou complexas, o segmento entregue ao X-Ray pelo AWS AppSync pode ser maior do que o tamanho máximo permitido para documentos de segmento, conforme definido nos Documentos de segmento do AWS X-Ray. O X-Ray não exibe segmentos que excedam o limite.