

# OPERAÇÕES 4. Como implementar a observabilidade em sua workload?
<a name="ops-04"></a>

Implemente a observabilidade na workload para que você possa entender seu estado e tomar decisões baseadas em dados com base nos requisitos de negócios.

**Topics**
+ [OPS04-BP01 Identificar os indicadores-chave de performance](ops_observability_identify_kpis.md)
+ [OPS04-BP02 Implementar a telemetria de aplicações](ops_observability_application_telemetry.md)
+ [OPS04-BP03 Implementar a telemetria da experiência do usuário](ops_observability_customer_telemetry.md)
+ [OPS04-BP04 Implementar a telemetria de dependências](ops_observability_dependency_telemetry.md)
+ [OPS04-BP05 Implementar rastreamento distribuído](ops_observability_dist_trace.md)

# OPS04-BP01 Identificar os indicadores-chave de performance
<a name="ops_observability_identify_kpis"></a>

 A implementação da observabilidade em sua workload começa com a compreensão de seu estado e a tomada de decisões baseadas em dados conforme os requisitos de negócios. Uma das formas mais eficazes de garantir o alinhamento entre as atividades de monitoramento e os objetivos de negócios é definir e monitorar os indicadores-chave de performance (KPIs). 

 **Resultado desejado:** Práticas de observabilidade eficientes que estão estreitamente alinhadas aos objetivos de negócios, garantindo que os esforços de monitoramento estejam sempre a serviço de resultados comerciais tangíveis. 

 **Antipadrões comuns:** 
+  KPIs indefinidos: trabalhar sem KPIs claros pode levar ao monitoramento excessivo ou insuficiente, perdendo sinais vitais. 
+  KPIs estáticos: não revisitar ou refinar os KPIs à medida que a workload ou os objetivos de negócios evoluem. 
+  Desalinhamento: foco em métricas técnicas que não se correlacionam diretamente com os resultados comerciais ou são mais difíceis de correlacionar com problemas do mundo real. 

 **Benefícios de estabelecer esta prática recomendada:** 
+  Facilidade de identificação de problemas: os KPIs de negócios geralmente mostram os problemas com mais clareza do que as métricas técnicas. Uma queda em um KPI comercial pode identificar um problema com mais eficiência do que analisar várias métricas técnicas. 
+  Alinhamento comercial: garante que as atividades de monitoramento apoiem diretamente os objetivos de negócios. 
+  Eficiência: priorize os recursos de monitoramento e a atenção nas métricas que importam. 
+  Proatividade: reconheça e resolva os problemas antes que eles tenham implicações comerciais mais amplas. 

 **Nível de risco exposto se esta prática recomendada não for estabelecida:** alto 

## Orientação para implementação
<a name="implementation-guidance"></a>

 Para definir com eficácia os KPIs da workload: 

1.  **Comece com os resultados comerciais:** Antes de mergulhar nas métricas, entenda o resultado comercial desejado. É aumento de vendas, maior engajamento do usuário ou tempos de resposta mais rápidos? 

1.  **Correlacione métricas técnicas com objetivos de negócios:** Nem todas as métricas técnicas têm um impacto direto nos resultados comerciais. Identifique aquelas que têm, mas geralmente é mais fácil identificar um problema usando um KPI comercial. 

1.  **Use o [Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html):** Empregue o CloudWatch para definir e monitorar métricas que representam seus KPIs. 

1.  **Revise e atualize regularmente os KPIs:** À medida que sua workload e seus negócios evoluem, mantenha seus KPIs relevantes. 

1.  **Envolva as partes interessadas:** Envolva as equipes técnicas e comerciais na definição e revisão dos KPIs. 

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

## Recursos
<a name="resources"></a>

 **Práticas recomendadas relacionadas:** 
+ [OPS04-BP02 Implementar a telemetria de aplicações](ops_observability_application_telemetry.md)
+ [OPS04-BP03 Implementar a telemetria da experiência do usuário](ops_observability_customer_telemetry.md)
+ [OPS04-BP04 Implementar a telemetria de dependências](ops_observability_dependency_telemetry.md)
+ [OPS04-BP05 Implementar rastreamento distribuído](ops_observability_dist_trace.md)

 **Documentos relacionados:** 
+ [AWS Observability Best Practices (Práticas recomendadas de observabilidade da AWS ) ](https://aws-observability.github.io/observability-best-practices/)
+ [ Guia do usuário do CloudWatch ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html)
+ [AWS Observability Skill Builder Course (Curso de desenvolvimento de habilidades de observabilidade da AWS) ](https://explore.skillbuilder.aws/learn/course/external/view/elearning/14688/aws-observability)

 **Vídeos relacionados:** 
+ [ Developing an observability strategy (Desenvolvimento de uma estratégia de observabilidade) ](https://www.youtube.com/watch?v=Ub3ATriFapQ)

 **Exemplos relacionados:** 
+  [Um workshop de observabilidade](https://catalog.workshops.aws/observability/en-US) 

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

 A telemetria de aplicações serve como base para a observabilidade da workload. É fundamental emitir uma telemetria que ofereça informações práticas sobre o estado de sua aplicação e a obtenção de resultados técnicos e comerciais. Da solução de problemas à medição do impacto de um novo recurso ou à garantia do alinhamento com os indicadores-chave de performance (KPIs) de negócios, a telemetria de aplicações informa a maneira como você cria, opera e desenvolve sua workload. 

 Métricas, logs e rastreamentos formam os três pilares principais da observabilidade. Eles servem como ferramentas de diagnóstico que descrevem o estado de sua aplicação. Com o tempo, eles auxiliam na criação de linhas de base e na identificação de anomalias. No entanto, para garantir o alinhamento entre as atividades de monitoramento e os objetivos de negócios, é fundamental definir e monitorar os KPIs. Os KPIs de negócios geralmente facilitam a identificação de problemas em comparação com métricas técnicas isoladas. 

 Outros tipos de telemetria, como monitoramento de usuários reais (RUM) e transações sintéticas, complementam essas fontes de dados primárias. O RUM oferece informações sobre as interações do usuário em tempo real, enquanto as transações sintéticas simulam possíveis comportamentos do usuário, ajudando a detectar gargalos antes que usuários reais os encontrem. 

 **Resultado desejado:** Obtenha insights acionáveis sobre o desempenho de sua workload. Esses insights permitem que você tome decisões proativas sobre otimização de desempenho, obtenha maior estabilidade da workload, simplifique os processos de CI/CD e utilize recursos de forma eficaz. 

 **Antipadrões comuns:** 
+  Observabilidade incompleta: negligência da incorporação da observabilidade em todas as camadas da workload, resultando em pontos cegos que podem obscurecer insights vitais sobre desempenho e comportamento do sistema. 
+  Visualização fragmentada dos dados: quando os dados estão espalhados por várias ferramentas e sistemas, torna-se difícil manter uma visão holística da integridade e do desempenho de sua workload. 
+  Problemas relatados pelo usuário: um sinal de que falta a detecção proativa de problemas por meio da telemetria e do monitoramento de KPI de negócios. 

 **Benefícios de estabelecer esta prática recomendada:** 
+  Tomada de decisão informada: com insights de telemetria e KPIs de negócios, você pode tomar decisões baseadas em dados. 
+  Eficiência operacional aprimorada: a utilização de recursos baseada em dados leva à economia de custos. 
+  Estabilidade aprimorada da workload: detecção e resolução de problemas mais rápidas, levando a um melhor tempo de atividade. 
+  Processos simplificados de CI/CD: os insights dos dados de telemetria facilitam o refinamento dos processos e a entrega confiável do código. 

 **Nível de risco exposto se esta prática recomendada não for estabelecida:** alto 

## Orientação para implementação
<a name="implementation-guidance"></a>

 Para implementar a telemetria de aplicações para sua workload, use serviços da AWS, como o [Amazon CloudWatch](https://aws.amazon.com/cloudwatch/) e o [AWS X-Ray](https://aws.amazon.com/xray/). O Amazon CloudWatch fornece um conjunto abrangente de ferramentas de monitoramento, permitindo que você observe seus recursos e aplicações em ambientes da AWS e on-premises. Ele coleta, rastreia e analisa métricas, consolida e monitora dados de log e responde às mudanças em seus recursos, aprimorando sua compreensão de como a workload opera. Em conjunto, o AWS X-Ray permite rastrear, analisar e depurar suas aplicações, oferecendo uma compreensão profunda do comportamento da sua workload. Com recursos como mapas de serviços, distribuições de latência e cronogramas de rastreamento, o X-Ray fornece informações sobre o desempenho da workload e os gargalos que a afetam. 

### Etapas da implementação
<a name="implementation-steps"></a>

1.  **Identifique quais dados coletar:** Garanta as métricas, os logs e os rastreamentos essenciais que ofereceriam informações substanciais sobre a integridade, o desempenho e o comportamento de sua workload. 

1.  **Implemente o agente do [CloudWatch](https://aws.amazon.com/cloudwatch/) :** O agente do CloudWatch é fundamental na aquisição de métricas do sistema e da aplicação e de logs de sua workload e de sua infraestrutura subjacente. O agente do CloudWatch também pode ser usado para coletar OpenTelemetry ou rastreamentos do X-Ray e enviá-los para o X-Ray. 

1.  **Defina e monitore os KPIs de negócios:** Estabeleça [métricas personalizadas](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html) que se alinham com os seus [resultados empresariais](https://aws-observability.github.io/observability-best-practices/guides/operational/business/monitoring-for-business-outcomes/). 

1.  **Instrumente sua aplicação com o AWS X-Ray:** além de implantar o agente do CloudWatch, é fundamental [instrumentar sua aplicação](https://docs.aws.amazon.com/xray/latest/devguide/xray-instrumenting-your-app.html) para emitir dados de rastreamento. Esse processo pode fornecer mais informações sobre o comportamento e o desempenho da sua workload. 

1.  **Padronize a coleta de dados em sua aplicação:** Padronize as práticas de coleta de dados em toda a sua aplicação. A uniformidade ajuda a correlacionar e analisar dados, fornecendo uma visão abrangente do comportamento de sua aplicação. 

1.  **Analise e aja com base nos dados:** Depois que a coleta e a normalização de dados estiverem em vigor, use o [Amazon CloudWatch](https://aws.amazon.com/cloudwatch/features/) para análise de métricas e logs e o [AWS X-Ray](https://aws.amazon.com/xray/features/) para análise de rastreamentos. Essa análise pode gerar informações cruciais sobre a integridade, o desempenho e o comportamento de sua workload, orientando o processo de tomada de decisão. 

 **Nível de esforço do plano de implementação:** Alto 

## Recursos
<a name="resources"></a>

 **Práticas recomendadas relacionadas:** 
+  [OPS04-BP01 Identificar os indicadores-chave de performance](ops_observability_identify_kpis.md) 
+  [OPS04-BP03 Implementar a telemetria da experiência do usuário](ops_observability_customer_telemetry.md) 
+  [OPS04-BP04 Implementar a telemetria de dependências](ops_observability_dependency_telemetry.md) 
+  [OPS04-BP05 Implementar rastreamento distribuído](ops_observability_dist_trace.md) 

 **Documentos relacionados:** 
+ [AWS Observability Best Practices (Práticas recomendadas de observabilidade da AWS ) ](https://aws-observability.github.io/observability-best-practices/)
+ [ Guia do usuário do CloudWatch ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html)
+ [ Guia do desenvolvedor do AWS X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html)
+ [ Instrumentação de sistemas distribuídos para visibilidade operacional ](https://aws.amazon.com/builders-library/instrumenting-distributed-systems-for-operational-visibility)
+ [AWS Observability Skill Builder Course (Curso de desenvolvimento de habilidades de observabilidade da AWS) ](https://explore.skillbuilder.aws/learn/course/external/view/elearning/14688/aws-observability)
+ [ Quais são as novidades do Amazon CloudWatch? ](https://aws.amazon.com/about-aws/whats-new/management-and-governance/?whats-new-content.sort-by=item.additionalFields.postDateTime&whats-new-content.sort-order=desc&awsf.whats-new-products=general-products%23amazon-cloudwatch)
+ [ Quais são as novidades do AWS X-Ray? ](https://aws.amazon.com/about-aws/whats-new/developer-tools/?whats-new-content.sort-by=item.additionalFields.postDateTime&whats-new-content.sort-order=desc&awsf.whats-new-products=general-products%23aws-x-ray)

 **Vídeos relacionados:** 
+ [AWS re:Invent 2022 - Observability best practices at Amazon (AWS re:Invent 2022: práticas recomendadas de observabilidade na Amazon) ](https://youtu.be/zZPzXEBW4P8)
+ [AWS re:Invent 2022 - Developing an observability strategy (AWS re:Invent 2022: desenvolvimento de uma estratégia de observabilidade) ](https://youtu.be/Ub3ATriFapQ)

 **Exemplos relacionados:** 
+  [Um workshop de observabilidade](https://catalog.workshops.aws/observability/en-US) 
+ [ Biblioteca de soluções da AWS: monitoramento de aplicações com Amazon CloudWatch ](https://aws.amazon.com/solutions/implementations/application-monitoring-with-cloudwatch)

# OPS04-BP03 Implementar a telemetria da experiência do usuário
<a name="ops_observability_customer_telemetry"></a>

 É essencial obter insights profundos sobre as experiências dos clientes e as interações com sua aplicação. O monitoramento de usuários reais (RUM) e as transações sintéticas servem como ferramentas poderosas para essa finalidade. O RUM fornece dados sobre interações reais do usuário, oferecendo uma perspectiva não filtrada da satisfação do usuário, enquanto as transações sintéticas simulam as interações do usuário, ajudando a detectar possíveis problemas antes mesmo que eles afetem os usuários reais. 

 **Resultado desejado:** Uma visão holística da experiência do cliente, detecção proativa de problemas e otimização das interações do usuário para oferecer experiências digitais perfeitas. 

 **Antipadrões comuns:** 
+  Aplicações sem monitoramento de usuários reais (RUM): 
  +  Detecção atrasada de problemas: sem o RUM, talvez você não fique ciente dos gargalos ou problemas de desempenho até que os usuários reclamem. Essa abordagem reativa pode levar à insatisfação do cliente. 
  +  Falta de insights sobre a experiência do usuário: não usar o RUM significa perder dados cruciais que mostram como usuários reais interagem com sua aplicação, limitando sua capacidade de otimizar a experiência do usuário. 
+  Aplicações sem transações sintéticas: 
  +  Casos extremos perdidos: transações sintéticas ajudam você a testar caminhos e funções que podem não ser usados com frequência por usuários comuns, mas são essenciais para determinadas funções de negócios. Sem eles, esses caminhos podem ter problemas de funcionamento e passar despercebidos. 
  +  Verificação de problemas quando a aplicação não está sendo usada: testes sintéticos regulares podem simular momentos em que usuários reais não estão interagindo ativamente com sua aplicação, garantindo que o sistema sempre funcione corretamente. 

 **Benefícios de estabelecer esta prática recomendada:** 
+  Detecção proativa de problemas: identifique e resolva possíveis problemas antes que eles afetem usuários reais. 
+  Experiência otimizada do usuário: o feedback contínuo do RUM ajuda a refinar e aprimorar a experiência geral do usuário. 
+  Informações sobre o desempenho do dispositivo e do navegador: entenda o desempenho da sua aplicação em vários dispositivos e navegadores, permitindo uma maior otimização. 
+  Fluxos de trabalho de negócios validados: transações sintéticas regulares garantem que as principais funcionalidades e os caminhos críticos permaneçam operacionais e eficientes. 
+  Desempenho aprimorado da aplicação: utilize as informações coletadas de dados reais do usuário para melhorar a capacidade de resposta e a confiabilidade da aplicação. 

 **Nível de risco exposto se esta prática recomendada não for estabelecida:** alto 

## Orientação para implementação
<a name="implementation-guidance"></a>

 Para aproveitar o RUM e as transações sintéticas para a telemetria da atividade do usuário, a AWS oferece serviços como [Amazon CloudWatch RUM](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html) e [Amazon CloudWatch Synthetics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html). Métricas, logs e rastreamentos, juntamente com dados de atividades do usuário, fornecem uma visão abrangente do estado operacional da aplicação e da experiência do usuário. 

### Etapas da implementação
<a name="implementation-steps"></a>

1.  **Implemente o Amazon CloudWatch RUM:** integre sua aplicação ao CloudWatch RUM para coletar, analisar e apresentar dados reais do usuário. 

   1.  Use a [biblioteca em JavaScript do CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html) para integrar o RUM à sua aplicação. 

   1.  Configure painéis para visualizar e monitorar dados reais do usuário. 

1.  **Configuração do CloudWatch Synthetics:** crie canários ou rotinas com script que simulem as interações do usuário com sua aplicação. 

   1.  Defina fluxos de trabalho e caminhos de aplicação críticos. 

   1.  Projete canários usando [scripts do CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html) para simular as interações do usuário nesses caminhos. 

   1.  Programe e monitore os canários para serem executados em intervalos específicos, garantindo verificações de desempenho consistentes. 

1.  **Analise e aja com base nos dados:** Utilize dados de RUM e transações sintéticas para obter insights e tomar medidas corretivas quando anomalias forem detectadas. Use painéis do CloudWatch e alarmes para se manter informado. 

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

## Recursos
<a name="resources"></a>

 **Práticas recomendadas relacionadas:** 
+  [OPS04-BP01 Identificar os indicadores-chave de performance](ops_observability_identify_kpis.md) 
+  [OPS04-BP02 Implementar a telemetria de aplicações](ops_observability_application_telemetry.md) 
+  [OPS04-BP04 Implementar a telemetria de dependências](ops_observability_dependency_telemetry.md) 
+  [OPS04-BP05 Implementar rastreamento distribuído](ops_observability_dist_trace.md) 

 **Documentos relacionados:** 
+ [ Guia do Amazon CloudWatch RUM ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html)
+ [ Guia do Amazon CloudWatch Synthetics ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html)

 **Vídeos relacionados:** 
+ [ Optimize applications through end user insights with Amazon CloudWatch RUM (Otimização de aplicações por meio de insights sobre o usuário final com o Amazon CloudWatch RUM) ](https://www.youtube.com/watch?v=NMaeujY9A9Y)
+ [AWS on Air ft. Real-User Monitoring for Amazon CloudWatch (Monitoramento de usuários reais do Amazon CloudWatch) ](https://www.youtube.com/watch?v=r6wFtozsiVE)

 **Exemplos relacionados:** 
+ [ Um workshop de observabilidade ](https://catalog.workshops.aws/observability/en-US/intro)
+ [ Repositório Git do Amazon CloudWatch RUM Web Client ](https://github.com/aws-observability/aws-rum-web)
+ [ Uso do Amazon CloudWatch Synthetics para medir o tempo de carregamento da página ](https://github.com/aws-samples/amazon-cloudwatch-synthetics-page-performance)

# OPS04-BP04 Implementar a telemetria de dependências
<a name="ops_observability_dependency_telemetry"></a>

 A telemetria de dependências é essencial para monitorar a integridade e a performance dos serviços e componentes externos dos quais a workload depende. Ela fornece informações valiosas sobre acessibilidade, tempos limite e outros eventos críticos relacionados a dependências, como DNS, bancos de dados ou APIs de terceiros. Ao instrumentar sua aplicação para emitir métricas, logs e rastreamentos sobre essas dependências, você obtém uma compreensão mais clara dos possíveis gargalos, problemas de performance ou falhas que podem afetar a workload. 

 **Resultado desejado:** As dependências das quais a workload depende estão funcionando conforme o esperado, permitindo que você resolva problemas de forma proativa e garanta a performance ideal da workload. 

 **Antipadrões comuns:** 
+  Negligenciar as dependências externas: focar apenas nas métricas internas da aplicação e negligenciar as métricas relacionadas às dependências externas. 
+  Falta de monitoramento proativo: aguardar o surgimento de problemas em vez de monitorar continuamente a integridade e a performance da dependência. 
+  Monitoramento em silos: usar várias ferramentas de monitoramento diferentes, o que pode resultar em visualizações fragmentadas e inconsistentes da integridade da dependência. 

 **Benefícios de estabelecer esta prática recomendada:** 
+  Maior confiabilidade da workload: garantindo que as dependências externas estejam consistentemente disponíveis e tenham uma performance ideal. 
+  Detecção e resolução mais rápidas de problemas: identificação e resolução proativa de problemas com dependências antes que elas afetem a workload. 
+  Visão abrangente: obtendo uma visão holística dos componentes internos e externos que influenciam a integridade da workload. 
+  Escalabilidade aprimorada da workload: entendendo os limites de escalabilidade e as características de performance das dependências externas. 

 **Nível de risco exposto se esta prática recomendada não for estabelecida:** alto 

## Orientação para implementação
<a name="implementation-guidance"></a>

 Implemente a telemetria de dependências começando com a identificação dos serviços, da infraestrutura e dos processos dos quais a workload depende. Quantifique quais são as boas condições quando essas dependências estão funcionando conforme o esperado e determine quais dados são necessários para medi-las. Com essas informações, você pode criar painéis e alertas que fornecem insights para suas equipes de operações sobre o estado dessas dependências. Use ferramentas da AWS para descobrir e quantificar os impactos quando as dependências não puderem desempenhar conforme necessário. Revise continuamente sua estratégia para considerar as mudanças nas prioridades, metas e insights obtidos. 

### Etapas da implementação
<a name="implementation-steps"></a>

 Para implementar a telemetria de dependências de forma eficaz: 

1.  **Identifique dependências externas:** colabore com as partes interessadas para identificar as dependências externas das quais a workload depende. As dependências externas podem abranger serviços como bancos de dados externos, APIs de terceiros, rotas de conectividade de rede para outros ambientes e serviços de DNS. O primeiro passo para uma telemetria de dependências eficaz é entender de forma abrangente quais são essas dependências. 

1.  **Desenvolva uma estratégia de monitoramento:** depois de ter uma visão clara de suas dependências externas, elabore uma estratégia de monitoramento personalizada para elas. Isso envolve entender a importância de cada dependência, seu comportamento esperado e quaisquer contratos ou metas de nível de serviço associados (SLA ou SLTs). Configure alertas proativos para receber notificações sobre mudanças de status ou desvios de performance. 

1.  **Utilize o [Amazon CloudWatch Internet Monitor](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-InternetMonitor.html):** ele oferece informações sobre a internet global, ajudando a entender interrupções que podem afetar suas dependências externas. 

1.  **Mantenha-se informado com o [AWS Health Dashboard](https://aws.amazon.com/premiumsupport/technology/aws-health-dashboard/):** ele fornece alertas e orientações de correção quando a AWS está enfrentando eventos que podem impactar seus serviços. 

1.  **Instrumente sua aplicação com o [AWS X-Ray](https://aws.amazon.com/xray/):** o AWS X-Ray fornece informações sobre a performance das aplicações e de suas respectivas dependências subjacentes. Ao rastrear as solicitações do início ao fim, você pode identificar gargalos ou falhas nos serviços ou componentes externos dos quais sua aplicação depende. 

1.  **Use o [Amazon DevOps Guru](https://aws.amazon.com/devops-guru/):** esse serviço orientado por machine learning identifica problemas operacionais, prevê quando problemas críticos podem ocorrer e recomenda ações específicas a serem tomadas. Ele é inestimável para obter informações sobre dependências e determinar que elas não são a fonte dos problemas operacionais. 

1.  **Monitore regularmente:** monitore continuamente métricas e logs relacionados a dependências externas. Configure alertas para comportamento inesperado ou diminuição de performance. 

1.  **Valide após as alterações:** sempre que houver uma atualização ou alteração em qualquer uma das dependências externas, valide sua performance e verifique o alinhamento com os requisitos da sua aplicação. 

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

## Recursos
<a name="resources"></a>

 **Práticas recomendadas relacionadas:** 
+  [OPS04-BP01 Identificar os indicadores-chave de performance](ops_observability_identify_kpis.md) 
+  [OPS04-BP02 Implementar a telemetria de aplicações](ops_observability_application_telemetry.md) 
+  [OPS04-BP03 Implementar a telemetria da experiência do usuário](ops_observability_customer_telemetry.md) 
+  [OPS04-BP05 Implementar rastreamento distribuído](ops_observability_dist_trace.md) 

 **Documentos relacionados:** 
+ [ O que é o AWS Health? ](https://docs.aws.amazon.com/health/latest/ug/what-is-aws-health.html)
+ [ Uso do Amazon CloudWatch Internet Monitor ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-InternetMonitor.html)
+ [Guia do desenvolvedor do AWS X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html)
+ [ Guia do usuário do Amazon DevOps Guru ](https://docs.aws.amazon.com/devops-guru/latest/userguide/welcome.html)

 **Vídeos relacionados:** 
+ [ Visibility into how internet issues impact app performance ](https://www.youtube.com/watch?v=Kuc_SG_aBgQ)
+ [ Introduction to Amazon DevOps Guru (Introdução ao Amazon DevOps Guru) ](https://www.youtube.com/watch?v=2uA8q-8mTZY)

 **Exemplos relacionados:** 
+ [ Gaining operational insights with AIOps using Amazon DevOps Guru ](https://catalog.us-east-1.prod.workshops.aws/workshops/f92df379-6add-4101-8b4b-38b788e1222b/en-US)
+ [AWS Health Aware ](https://github.com/aws-samples/aws-health-aware/)

# OPS04-BP05 Implementar rastreamento distribuído
<a name="ops_observability_dist_trace"></a>

 O rastreamento distribuído oferece uma maneira de monitorar e visualizar solicitações à medida que elas percorrem vários componentes de um sistema distribuído. Ao capturar dados de rastreamento de várias fontes e analisá-los em uma visão unificada, as equipes podem entender melhor como as solicitações fluem, onde existem gargalos e onde os esforços de otimização devem se concentrar. 

 **Resultado desejado:** Obtenha uma visão holística das solicitações que fluem pelo seu sistema distribuído, permitindo depuração precisa, desempenho otimizado e experiências de usuário aprimoradas. 

 **Antipadrões comuns:** 
+  Instrumentação inconsistente: nem todos os serviços em um sistema distribuído são instrumentados para rastreamento. 
+  Ignorar a latência: foco apenas nos erros e sem considerar a latência ou as degradações graduais do desempenho. 

 **Benefícios de estabelecer esta prática recomendada:** 
+ Visão geral abrangente do sistema: visualização de todo o caminho das solicitações, da entrada à saída.
+  Depuração aprimorada: identificação rápida de onde ocorrem falhas ou problemas de desempenho. 
+  Experiência de usuário aprimorada: monitoramento e otimização com base nos dados reais do usuário, garantindo que o sistema atenda às demandas do mundo real. 

 **Nível de risco exposto se esta prática recomendada não for estabelecida:** alto 

## Orientação para implementação
<a name="implementation-guidance"></a>

 Comece identificando todos os elementos da workload que exigem instrumentação. Depois que todos os componentes forem contabilizados, utilize ferramentas como o AWS X-Ray e o OpenTelemetry para coletar dados de rastreamento para análise com ferramentas como o X-Ray e o Amazon CloudWatch ServiceLens Map. Faça avaliações regulares com desenvolvedores e complemente essas discussões com ferramentas como Amazon DevOps Guru X-Ray Analytics e X-Ray Insights para ajudar a fazer descobertas mais profundas. Estabeleça alertas a partir de dados de rastreamento para notificar quando os resultados, conforme definido no plano de monitoramento da workload, estiverem em risco. 

### Etapas da implementação
<a name="implementation-steps"></a>

 Para implementar o rastreamento distribuído de forma eficaz: 

1.  **Use o [AWS X-Ray](https://aws.amazon.com/xray/):** integre o X-Ray à sua aplicação para obter informações sobre seu comportamento, entender seu desempenho e identificar gargalos. Utilize o X-Ray Insights para análise automática de rastreamento. 

1.  **Instrumente seus serviços:** verifique se cada serviço, de uma função do [AWS Lambda](https://aws.amazon.com/lambda/) a uma [instância do EC2](https://aws.amazon.com/ec2/), envia dados de rastreamento. Quanto mais serviços você instrumentar, mais clara será a visão completa. 

1.  **incorpore o [monitoramento de usuários reais do CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html) e [o monitoramento sintético](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html):** integre o monitoramento de usuários reais (RUM) e o monitoramento sintético com o X-Ray. Isso permite capturar experiências reais do usuário e simular as interações do usuário para identificar possíveis problemas. 

1.  **Use o [agente do CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Install-CloudWatch-Agent.html):** o agente pode enviar rastreamentos a partir do X-Ray ou do OpenTelemetry, aumentando a profundidade dos insights obtidos. 

1.  **Use o [Amazon DevOps Guru](https://aws.amazon.com/devops-guru/):** o DevOps Guruusa dados do X-Ray, CloudWatch, AWS Config e AWS CloudTrail para fornecer recomendações práticas. 

1.  **Analise os rastreamentos:** analise regularmente os dados de rastreamento para discernir padrões, anomalias ou gargalos que possam afetar o desempenho de sua aplicação. 

1.  **Configure alertas:** configure os alarmes no [CloudWatch](https://aws.amazon.com/cloudwatch/) para padrões incomuns ou latências estendidas, permitindo o tratamento proativo de problemas. 

1.  **Melhoria contínua:** revise sua estratégia de rastreamento à medida que os serviços são adicionados ou modificados para capturar todos os pontos de dados relevantes. 

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

## Recursos
<a name="resources"></a>

 **Práticas recomendadas relacionadas:** 
+  [OPS04-BP01 Identificar os indicadores-chave de performance](ops_observability_identify_kpis.md) 
+  [OPS04-BP02 Implementar a telemetria de aplicações](ops_observability_application_telemetry.md) 
+  [OPS04-BP03 Implementar a telemetria da experiência do usuário](ops_observability_customer_telemetry.md) 
+  [OPS04-BP04 Implementar a telemetria de dependências](ops_observability_dependency_telemetry.md) 

 **Documentos relacionados:** 
+ [ Guia do desenvolvedor do AWS X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html)
+ [ Guia do usuário do agente do Amazon CloudWatch ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Install-CloudWatch-Agent.html)
+ [ Guia do usuário do Amazon DevOps Guru ](https://docs.aws.amazon.com/devops-guru/latest/userguide/welcome.html)

 **Vídeos relacionados:** 
+ [ Use AWS X-Ray Insights (Use o AWS X-Ray Insights) ](https://www.youtube.com/watch?v=tl8OWHl6jxw)
+ [AWS on Air ft. Observability: Amazon CloudWatch and AWS X-Ray (Observabilidade: Amazon CloudWatch e AWS X-Ray) ](https://www.youtube.com/watch?v=qBDBnPkZ-KI)

 **Exemplos relacionados:** 
+ [ Instrumentação da aplicação com AWS X-Ray](https://aws.amazon.com/getting-started/hands-on/distributed-tracing-with-xray/)