

# OPS04-BP01 Implementar a telemetria de aplicações
<a name="ops_telemetry_application_telemetry"></a>

 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 name="implementation-guidance"></a>

 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](https://aws.amazon.com/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](https://aws-otel.github.io/) 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.](https://aws-otel.github.io/docs/getting-started/js-sdk/metric-manual-instr). 

   Os clientes que quiserem compreender os serviços de observabilidade oferecidos pela AWS podem trabalhar com o [Um workshop de observabilidade](https://catalog.workshops.aws/observability/en-US) 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](https://aws.amazon.com/builders-library/instrumenting-distributed-systems-for-operational-visibility/) 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
<a name="resources"></a>

 **Práticas recomendadas relacionadas:** 

[OPS04-BP02 Implementar e configurar a telemetria da workload](ops_telemetry_workload_telemetry.md) 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](ops_telemetry_customer_telemetry.md) 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](ops_telemetry_dependency_telemetry.md) 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](ops_telemetry_dist_trace.md) 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](ops_workload_health_design_workload_metrics.md) 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:** 
+  [AWS Builders' Library: Como instrumentar sistemas distribuídos para obter observabilidade operacional](https://aws.amazon.com/builders-library/instrumenting-distributed-systems-for-operational-visibility/) 
+  [AWS Distro for OpenTelemetry](https://aws-otel.github.io/) 
+  [AWS Whitepaper Well-Architected Operational Excellence: Design Telemetry (Excelência operacional do Well-Architected: Design de telemetria)](https://docs.aws.amazon.com/wellarchitected/latest/operational-excellence-pillar/design-telemetry.html) 
+  [Creating metrics from log events using filters (Criação de métricas de eventos de logs usando filtros)](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/MonitoringLogData.html) 
+  [Implementing Logging and Monitoring with Amazon CloudWatch (Implementação de registro em log e monitoramento com o Amazon CloudWatch)](https://docs.aws.amazon.com/prescriptive-guidance/latest/implementing-logging-monitoring-cloudwatch/welcome.html) 
+  [Monitoring application health and performance with AWS Distro for OpenTelemetry (Monitoramento da integridade e da performance das aplicações com o AWS Distro for OpenTelemetry)](https://aws.amazon.com/blogs/opensource/monitoring-application-health-and-performance-with-aws-distro-for-opentelemetry/) 
+  [New: How to better monitor your custom application metrics using Amazon CloudWatch Agent (Novidade: Como monitorar melhor as métricas de aplicações personalizadas usando o agente do CloudWatch)](https://aws.amazon.com/blogs/devops/new-how-to-better-monitor-your-custom-application-metrics-using-amazon-cloudwatch-agent/) 
+  [Observability at AWS (Observabilidade na AWS)](https://aws.amazon.com/products/management-and-governance/use-cases/monitoring-and-observability/) 
+  [Scenario – Publish metrics to CloudWatch (Cenário: Publicar métricas no CloudWatch)](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/PublishMetrics.html) 
+  [Comece a criar: Como monitorar suas aplicações com eficácia](https://aws.amazon.com/startups/start-building/how-to-monitor-applications/) 
+  [Using CloudWatch with an AWS SDK (Usar o CloudWatch com um AWS SDK)](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/sdk-general-information-section.html) 

 **Vídeos relacionados:** 
+  [AWS re:Invent 2021: Observability the open-source way (re:Invent da AWS de 2021: observabilidade por código aberto)](https://www.youtube.com/watch?v=vAnIhIwE5hY) 
+  [Collect Metrics and Logs from Amazon EC2 instances with the CloudWatch Agent (Coletar métricas e logs das instâncias do Amazon EC2 com o agente do CloudWatch)](https://www.youtube.com/watch?v=vAnIhIwE5hY) 
+  [How to Easily Setup Application Monitoring for Your AWS Workloads - AWS Online Tech Talks (Como configurar facilmente o monitoramento de aplicações para as workloads da AWS: AWS Online Tech Talks)](https://www.youtube.com/watch?v=LKCth30RqnA) 
+  [Mastering Observability of Your Serverless Applications - AWS Online Tech Talks (Domínio da observabilidade de aplicações de tecnologia sem servidor: AWS Online Tech Talks)](https://www.youtube.com/watch?v=CtsiXhiAUq8) 
+  [Open Source Observability with AWS - AWS Virtual Workshop (Observabilidade de código aberto com a AWS: Workshop virtual da AWS)](https://www.youtube.com/watch?v=vAnIhIwE5hY) 

 **Exemplos relacionados:** 
+  [Recursos de exemplo de registro em log e monitoramento da AWS](https://github.com/aws-samples/logging-monitoring-apg-guide-examples) 
+  [AWS Solution: Amazon CloudWatch Monitoring Framework (Solução da AWS: Framework de monitoramento do AWS CloudWatch)](https://aws.amazon.com/solutions/implementations/amazon-cloudwatch-monitoring-framework/?did=sl_card&trk=sl_card) 
+  [AWS Solution: Centralized Logging (Solução da AWS: Registro em log centralizado)](https://aws.amazon.com/solutions/implementations/centralized-logging/) 
+  [Um workshop de observabilidade](https://catalog.workshops.aws/observability/en-US) 