

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

 **Exemplo de clientes** 

A AnyCompany Retail 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. A telemetria é enviada ao Amazon CloudWatch para armazenamento e análise. 

 **Etapas da implementação** 

1.  1Identifique um local central para armazenamento da telemetria para as aplicações da workload. O local deve ser compatível com os recursos de coleta de telemetria e análise. A detecção de anomalias e os insights automatizados são recursos recomendados. 

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

1.  Para identificar de qual telemetria você necessita, comece respondendo a esta pergunta: qual é o estado da minha aplicação? A aplicação deve emitir logs e métricas que respondam coletivamente a essa pergunta. Se não for possível responder a essas perguntas com a telemetria de aplicações existentes, trabalhe com os stakeholders da empresa e da engenharia para criarem uma lista de requisitos de telemetria. 

   1.  É possível solicitar consultoria técnica especializada da equipe da Conta da AWS ao identificar e desenvolver nova telemetria de aplicações. 

1.  Quando a telemetria adicional de aplicações estiver identificada, trabalhe com os stakeholders da engenharia para instrumentar as aplicações. 

   1.  O [AWS Distro para 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). 

   1.  bSe você quiser entender os serviços de observabilidade que a AWS oferece, trabalhe no [One Observability Workshop ](https://catalog.workshops.aws/observability/en-US) ou solicite suporte à sua equipe da Conta da AWS. 

   1.  Para mergulhar mais profundamente na telemetria de aplicações, leia o artigo [Como instrumentar sistemas distribuídos para obter visibilidade operacional](https://aws.amazon.com/builders-library/instrumenting-distributed-systems-for-operational-visibility/) na Amazon Builder’s Library, que 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:** alto. Instrumentar sua aplicação e centralizar o armazenamento de telemetria pode exigir um investimento significativo. 

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

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

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

 **Serviços relacionados:** 
+ [ Amazon CloudWatch ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html)