OPS04-BP01 Implementar a telemetria de aplicações - AWS Well-Architected Framework

OPS04-BP01 Implementar a telemetria de aplicações

A telemetria de aplicações é a base para a observabilidade da workload. A aplicação deve emitir telemetria que forneça insight do estado da aplicação e da aquisição dos resultados da empresa. Da solução de problemas à medição do impacto de um novo recurso, a telemetria de aplicações informa a maneira como você cria, opera e evolui a workload.

A telemetria de aplicações consiste em métricas e logs. As métricas são informações de diagnóstico, como seu pulso ou temperatura. As métricas são usadas coletivamente para descrever o estado de uma aplicação. A coleta das métricas ao longo do tempo pode ser usada para desenvolver linhas de base e detectar anomalias. Os logs são mensagens que a aplicação envia sobre seu estado interno ou os eventos que ocorrem. Códigos de erros, identificadores de transações e ações dos usuários são exemplos dos eventos registrados em log.

Resultado desejado:

  • A aplicação emite métricas e logs que fornecem insights da integridade e da aquisição de resultados dos negócios.

  • As métricas e logs são armazenados centralmente para todas as aplicações na workload.

Antipadrões comuns:

  • Seu aplicativo não emite telemetria. Você é forçado a contar com seus clientes para informar quando algo está errado.

  • Um cliente relatou que seu aplicativo não responde. Você não tem telemetria e não consegue confirmar se o problema existe ou caracterizar o problema sem usar o aplicativo para entender a experiência atual do usuário.

Benefícios do estabelecimento desta prática recomendada:

  • É possível compreender a integridade das aplicações, a experiência dos usuários e a aquisição dos resultados.

  • Reagir rapidamente às mudanças da integridade das aplicações.

  • Desenvolver a partir das tendências da integridade das aplicações.

  • Tomar decisões embasadas sobre como melhorar as aplicações.

  • E detectar e resolver problemas das aplicações mais rapidamente.

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

Orientações para a implementação

A implementação da telemetria de aplicações consiste em três etapas: a identificação de um local para armazenar a telemetria, a identificação da telemetria que descreve o estado das aplicações e a instrumentação das aplicações para emitirem telemetria.

Como exemplo, uma empresa de comércio eletrônico tem uma arquitetura baseada em microsserviços. Como parte do processo de design dessa arquitetura, a empresa identificou a telemetria de aplicações que a ajudaria a entender o estado de cada microsserviço. Por exemplo, o serviço de carrinho do usuário emite telemetria sobre eventos, como adição ao carrinho, abandono do carrinho e o tempo levado para adicionar um item ao carrinho. Todos os microsserviços registram erros, avisos e informações sobre as transações em log. A telemetria é enviada para o Amazon CloudWatch para armazenamento e análise.

Etapas da implementação

A primeira etapa é identificar um local central para armazenamento da telemetria para as aplicações da workload. Se você ainda não tiver uma plataforma, o Amazon CloudWatch fornecerá a coleta da telemetria, os painéis, a análise e os recursos para a geração de eventos.

Para identificar a telemetria necessária, comece com as seguintes perguntas:

  • Minha aplicação é íntegra?

  • Minha aplicação está trazendo resultados para os negócios.

    A aplicação deve emitir logs e métricas que respondam coletivamente a essas perguntas. Se não for possível responder a essas perguntas com a telemetria de aplicações existentes, trabalhe com as partes interessadas da empresa e da engenharia para criarem uma lista de telemetria que possa. É possível solicitar consultoria técnica especializada da equipe da Conta da AWS ao identificar e desenvolver nova telemetria de aplicações.

    Quando a telemetria adicional de aplicações estiver identificada, trabalhe com as partes interessadas da engenharia para instrumentar as aplicações. O AWS Distro for Open Telemetry fornece bibliotecas de APIs e agentes que coletam telemetria de aplicações. Este exemplo demonstra como instrumentar uma aplicação JavaScript com métricas personalizadas..

    Os clientes que quiserem compreender os serviços de observabilidade oferecidos pela AWS podem trabalhar com o Um workshop de observabilidade por conta própria ou solicitar suporte da equipe da Conta da AWS para receberem orientações. Esse workshop fornece orientações sobre as soluções de observabilidade da AWS e exemplos práticos de como elas são usadas.

    Para mergulhar mais profundamente na telemetria de aplicações leia o artigo instrumentação de sistemas distribuídos para visibilidade operacional na Amazon Builder's Library. Ele explica como a Amazon instrumenta as aplicações e pode servir como um guia para o desenvolvimento de suas próprias diretrizes de instrumentação.

Nível de esforço do plano de implementação: Médio

Recursos

Práticas recomendadas relacionadas:

OPS04-BP02 Implementar e configurar a telemetria da workload A telemetria de aplicações é um componente da telemetria de workload. Para compreender a integridade da workload geral, entenda a integridade das aplicações individuais que compõem a workload.

OPS04-BP03 Implementar a telemetria de atividades dos usuários A telemetria das atividades dos usuários geralmente é um subconjunto da telemetria de aplicações. As atividades dos usuários, como eventos de adições ao carrinho, cliques em streams ou transações concluídas fornecem insight da experiência do usuário.

OPS04-BP04 Implementar a telemetria de dependências As verificações de dependências estão relacionadas à telemetria de aplicações e podem ser instrumentadas nas aplicações. Se a aplicação contar com dependências externas, como o DNS ou um banco de dados, a aplicação poderá emitir métricas e logs sobre a acessibilidade, os tempos limite e outros eventos.

OPS04-BP05 Implementar a capacidade de rastreamento das transações O rastreamento das transações em uma workload requer que cada aplicação emita informações sobre como ela processa eventos compartilhados. A forma como as aplicações individuais tratam esses eventos é emitida por meio da telemetria de aplicações.

OPS08-BP02 Definir as métricas da workload As métricas da workload são os principais indicadores da integridade da workload. As métricas principais das aplicações são parte das métricas da workload.

Documentos relacionados:

Vídeos relacionados:

Exemplos relacionados: