AWS X-Ray 기능

X-Ray를 선택해야 하는 이유

AWS X-Ray에서는 개발자가 엔드 투 엔드 추적 기능을 통해 프로덕션 분산 애플리케이션의 동작을 손쉽게 분석할 수 있습니다. X-Ray를 사용하여 성능 병목, 엣지 케이스 오류 및 기타 탐지하기 어려운 문제를 식별할 수 있습니다. X-Ray는 간단한 비동기식 이벤트 호출과 3-티어 웹 애플리케이션에서부터 마이크로 서비스 아키텍처로 구축된 복잡한 분산 애플리케이션에 이르기까지 유형이나 크기와 관계없이 모든 개발 또는 프로덕션 단계의 애플리케이션을 지원합니다. 그러므로 개발자는 애플리케이션의 문제를 신속하게 찾아 해결하고 애플리케이션의 최종 사용자 경험을 개선할 수 있습니다.

간단한 설정

AWS X-Ray는 Amazon Elastic Compute Cloud(EC2), Amazon EC2 Container Service(Amazon ECS), AWS Lambda, AWS Elastic Beanstalk에서 실행되는 애플리케이션에서 사용할 수 있습니다. 쉽게 X-Ray를 시작할 수 있습니다. X-Ray SDK를 애플리케이션에 통합하고 X-Ray 에이전트를 설치하기만 하면 됩니다. AWS Elastic Beanstalk의 경우 X-Ray 에이전트가 Elastic Beanstalk에 미리 설치되어 있으므로 X-Ray SDK를 애플리케이션에 통합하기만 하면 됩니다.

엔드 투 엔드 추적

AWS X-Ray는 애플리케이션으로 보낸 요청에 대한 엔드 투 엔드 교차 서비스 뷰를 제공합니다. 애플리케이션의 개별 서비스에서 수집된 데이터를 트레이스라고 부르는 단일 유닛에 집계함으로써 애플리케이션을 통과하는 요청에 대한 애플리케이션 중심의 뷰를 제공합니다. 개별 요청이 애플리케이션의 각 서비스 또는 티어를 통과함에 따라 이 트레이스를 사용하여 해당 경로를 따라갈 수 있으므로 문제가 발생한 지점을 정확히 찾아낼 수 있습니다.

AWS X-Ray는 Amazon Elastic Compute Cloud(EC2), Amazon EC2 Container Service(ECS), AWS Lambda 및 AWS Elastic Beanstalk에서 실행되는 애플리케이션을 지원합니다. X-Ray SDK는 MySQL 및 PostgreSQL 데이터베이스(자체 호스팅, Amazon RDS, Amazon Aurora) 및 Amazon DynamoDB로 보낸 요청에 대한 메타데이터를 캡처합니다. 또한, Amazon Simple Queue Service 및 Amazon Simple Notification Service로 보낸 요청에 대한 메타데이터도 캡처합니다.

프로덕션 애플리케이션 또는 개발 중인 애플리케이션에 가장 적합한 트레이스 샘플링 비율을 설정할 수 있습니다. X-Ray는 계속해서 애플리케이션으로 보낸 요청을 추적하고 분석을 위해 요청 샘플링을 저장합니다. 이를 통해 과도한 데이터 볼륨을 저장하고 관리하는 오버헤드 부담은 덜면서 분석을 신뢰하기에 충분한 양의 데이터를 제공할 수 있습니다.

AWS X-Ray는 Node.js, Java 및 .NET으로 작성된 애플리케이션에 대한 추적을 지원합니다.

서비스 맵

AWS X-Ray가 특정 서비스 또는 문제를 자세히 파악하는 데 사용할 수 있는 트레이스 데이터로 서비스 맵을 생성하고 애플리케이션에서 이를 사용할 수 있습니다. 이를 통해 애플리케이션의 서비스와 각 서비스에 대해 집계된 데이터 간 관계를 확인할 수 있습니다(평균 지연 시간, 실패율 등). 종속성 트리를 만들고, 교차 가용 영역 또는 리전 호출 탐지 등을 수행할 수 있습니다.

서버 측 및 클라이언트 측 지연 시간 확인

AWS X-Ray를 사용하면 서비스 맵에서 바로 노드와 엣지 지연 시간 분포를 시각적으로 확인할 수 있습니다. 신속하게 이상값, 그래프 패턴 및 추세를 분리하고, 트레이스를 드릴 다운하고, 내장된 키와 사용자 지정 주석별로 필터링하여 애플리케이션과 최종 사용자에 영향을 주는 성능 문제를 더 잘 이해할 수 있습니다.

데이터 주석 및 필터링

AWS X-Ray를 사용하면 애플리케이션의 특정 구성 요소 또는 서비스에서 내보낸 데이터에 주석을 달 수 있습니다. 이 기능을 사용하여 문제를 진단하는 데 도움이 되도록 비즈니스별 메타데이터를 추가할 수 있습니다. 또한, 주석 값, 평균 지연 시간, HTTP 응답 상태, 타임스탬프, 사용된 데이터베이스 테이블 등 속성별로 트레이스 데이터를 보고 필터링할 수 있습니다.

콘솔 및 프로그래밍 방식 액세스

AWS Management Console, AWS CLI 및 AWS SDK를 통해 AWS X-Ray를 사용할 수 있습니다. X-Ray API를 사용하면 프로그래밍 방식으로 서비스에 액세스할 수 있으므로 손쉽게 트레이스 데이터를 내보내거나 데이터를 자체 도구 및 사용자 지정 분석 대시보드로 수집할 수 있습니다.

보안

AWS X-Ray는 AWS Identity and Access Management(IAM)와 통합되므로 어떤 사용자 및 리소스가 트레이스에 액세스할 권한이 있는지와 액세스 방법을 제어할 수 있습니다.