

# 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/)