View a markdown version of this page

OPS04-BP05 Implementar a capacidade de rastreamento das transações - AWS Well-Architected Framework

OPS04-BP05 Implementar a capacidade de rastreamento das transações

Implemente o código da aplicação e configure os componentes da workload para emitir eventos, que são acionados como resultado de operações lógicas únicas e consolidadas em vários limites da workload. Gere mapas para ver como o rastreamento é feito na workload e nos serviços. Obtenha informações sobre a relação entre os componentes, identifique e analise os problemas. Use as informações coletadas para determinar quando uma resposta é necessária e para identificar os fatores que causam um problema.

Resultado desejado:

  • Colete rastreamentos de transação na workload para obter informações sobre a relação entre os componentes.

  • Gere mapas para obter uma compreensão melhor de como as transações e os eventos fluem pela workload.

Antipadrões comuns:

  • Você implementou uma arquitetura de microsserviços sem servidor que abrange várias contas. Seus clientes estão enfrentando problemas de performance intermitente. Você não consegue descobrir qual função ou componente é responsável, pois não possui rastreabilidade de transações.

  • Há um gargalo de desempenho na workload. Como você não possui rastreabilidade de transações, não é possível ver a relação entre os componentes da aplicação e identificar o gargalo.

  • O identificador usado para rastreamentos não é exclusivo globalmente, resultando em uma colisão de rastreamento ao analisar o comportamento da workload.

Benefícios do estabelecimento desta prática recomendada:

  • Compreender o fluxo de transações entre a workload fornece informações sobre o comportamento esperado das transações da workload.

  • É possível ver variações do comportamento esperado na workload e reagir a elas, se necessário.

  • É possível localizar as transações pelo identificador gerado exclusivo independentemente de onde elas foram geradas.

Nível de exposição a riscos quando esta prática recomendada não é estabelecida: baixo

Orientações para a implementação

Projete seu aplicativo e carga de trabalho para emitir informações sobre o fluxo de transações entre os componentes do sistema. Os dados a serem incluídos nas transações são um identificador exclusivo da transação, o estágio da transação, o componente ativo e o tempo para concluir a atividade. Use essas informações para determinar o que está em andamento, o que está concluído e quais são os resultados das atividades concluídas.

Exemplo de clientes

Na Loja UmaEmpresa, todas as transações ganham um UUID global exclusivo. Esse UUID é transmitido entre microsserviços durante as transações. O UUID é usado para criar rastreamentos de transações à medida que os usuários interagem com a workload. É gerado um mapa da topologia da workload com os rastreamentos, depois usado para solucionar problemas da workload e melhorar o desempenho.

Etapas da implementação

  1. Equipe as aplicações na workload para emitir rastreamentos de transações. Isso pode ser feito gerando um identificador exclusivo para cada transação e transmitindo o identificador entre as aplicações.

    1. É possível usar a autoinstrumentação no AWS Distro para OpenTelemetry a fim de implementar rastreamentos nas aplicações existentes sem modificar o código da aplicação.

  2. Gere mapas da topologia da aplicação. Use esses mapas para melhorar o desempenho, obter informações e auxiliar na resolução de problemas.

    1. O AWS X-Ray pode gerar mapas das aplicações na workload.

Nível de esforço do plano de implementação: médio. Implementar rastreamentos de transações pode exigir um esforço de desenvolvimento moderado.

Recursos

Práticas recomendadas relacionadas:

Documentos relacionados:

Vídeos relacionados:

Exemplos relacionados:

Serviços relacionados: