

# OPS04-BP05 분산 추적 구현
<a name="ops_observability_dist_trace"></a>

 분산 추적은 분산 시스템의 다양한 구성 요소를 통과하는 요청을 모니터링하고 시각화하는 방법을 제공합니다. 여러 소스에서 추적 데이터를 캡처하고 통합 보기에서 분석함으로써 팀은 요청의 흐름, 병목 현상, 최적화 작업이 집중되는 위치를 더 잘 이해할 수 있습니다. 

 **원하는 결과:** 분산 시스템을 통해 흐르는 요청을 전체적으로 파악하여 정확한 디버깅, 최적화된 성능 및 향상된 사용자 경험을 제공합니다. 

 **일반적인 안티 패턴:** 
+  일관되지 않은 계측: 분산 시스템의 일부 서비스가 추적을 위해 계측되지 않습니다. 
+  지연 시간 무시: 오류에만 초점을 맞추고 지연 시간이나 점진적인 성능 저하는 고려하지 않습니다. 

 **이 모범 사례 확립의 이점:** 
+ 포괄적인 시스템 개요: 시작부터 종료까지 요청의 전체 경로를 시각화합니다.
+  향상된 디버깅: 장애 또는 성능 문제가 발생한 위치를 신속하게 식별합니다. 
+  향상된 사용자 경험: 실제 사용자 데이터를 기반으로 모니터링 및 최적화하여 시스템이 실제 요구 사항을 충족하는지 확인합니다. 

 **이 모범 사례가 확립되지 않을 경우 노출되는 위험 수준:** 높음 

## 구현 가이드
<a name="implementation-guidance"></a>

 먼저 계측이 필요한 워크로드의 모든 요소를 식별하십시오. 모든 구성 요소가 고려되면 AWS X-Ray OpenTelemetry와 같은 도구를 활용하여 ServiceLens X-Ray Map과 Amazon CloudWatch 같은 도구를 사용하여 분석에 사용할 추적 데이터를 수집할 수 있습니다. 개발자와 정기적으로 검토하고 X-Ray 분석 및 X-Ray 인사이트와 같은 Amazon DevOps Guru 도구를 사용하여 이러한 논의를 보완하여 더 심층적인 결과를 발견하세요. 추적 데이터로부터 알림을 설정하여 워크로드 모니터링 계획에 정의된 대로 결과가 위험에 처했을 때 이를 알립니다. 

### 구현 단계
<a name="implementation-steps"></a>

 분산 추적을 효과적으로 구현하려면: 

1.  **AWS X-Ray [채택](https://aws.amazon.com/xray/):** X-Ray을 애플리케이션에 통합하여 애플리케이션 동작에 대한 인사이트를 얻고 성능을 이해하며 병목 현상을 정확히 찾아내세요. 자동 추적 분석을 위해 X-Ray Insights를 활용하세요. 

1.  **서비스 계측:** 다음의 [AWS Lambda](https://aws.amazon.com/lambda/) 함수에서 [EC2 인스턴스에](https://aws.amazon.com/ec2/)이르기까지 모든 서비스가 추적 데이터를 전송하는지 확인하세요. 더 많은 서비스를 계측할수록 엔드투엔드 뷰가 더 명확해집니다. 

1.  **실제 [CloudWatch 사용자 모니터링](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html) 및 [합성 모니터링을 통합합니다](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html):** 실제 사용자 모니터링(RUM) 및 합성 모니터링과 X-Ray를 통합하세요. 이를 통해 실제 사용자 경험을 캡처하고 사용자 상호 작용을 시뮬레이션하여 잠재적 문제를 식별할 수 있습니다. 

1.  **CloudWatch 에이전트를 [사용하세요](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Install-CloudWatch-Agent.html):** 에이전트는 X-Ray 또는 OpenTelemetry 중 하나에서 트레이스를 전송하여 더 심도 깊은 통찰력을 얻을 수 있습니다. 

1.  **Amazon DevOps Guru [사용](https://aws.amazon.com/devops-guru/):** DevOps Guru는 X-Ray, CloudWatch, AWS Config 및 AWS CloudTrail의 데이터를 사용하여 실행 가능한 권장 사항을 제공합니다. 

1.  **트레이스 분석:** 추적 데이터를 정기적으로 검토하여 애플리케이션 성능에 영향을 줄 수 있는 패턴, 이상 또는 병목 현상을 식별하세요. 

1.  **알림 설정:** 비정상적인 패턴이나 지연 시간 연장에 대해 [CloudWatch에서](https://aws.amazon.com/cloudwatch/) 알람을 구성하여 선제적으로 문제를 해결할 수 있습니다. 

1.  **지속적인 개선:** 모든 관련 데이터 포인트를 캡처하도록 서비스가 추가 또는 수정되면 추적 전략을 다시 검토하세요. 

 **구현 계획의 작업 수준:** 보통 

## 리소스
<a name="resources"></a>

 **관련 모범 사례:** 
+  [OPS04-BP01 핵심 성과 지표 파악](ops_observability_identify_kpis.md) 
+  [OPS04-BP02 애플리케이션 원격 측정 구현](ops_observability_application_telemetry.md) 
+  [OPS04-BP03 사용자 경험 원격 측정 구현](ops_observability_customer_telemetry.md) 
+  [OPS04-BP04 종속성 원격 측정 구현](ops_observability_dependency_telemetry.md) 

 **관련 문서:** 
+ [AWS X-Ray 개발자 가이드 ](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html)
+ [ Amazon CloudWatch 에이전트 사용 설명서 ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Install-CloudWatch-Agent.html)
+ [ Amazon DevOps Guru 사용 설명서 ](https://docs.aws.amazon.com/devops-guru/latest/userguide/welcome.html)

 **관련 동영상:** 
+ [ Use AWS X-Ray Insights ](https://www.youtube.com/watch?v=tl8OWHl6jxw)
+ [AWS On Air ft. Observability: Amazon CloudWatch and AWS X-Ray](https://www.youtube.com/watch?v=qBDBnPkZ-KI)

 **관련 예시:** 
+ [AWS X-Ray을 사용하여 애플리케이션 계측 ](https://aws.amazon.com/getting-started/hands-on/distributed-tracing-with-xray/)