추적 - AWS 권장 가이드

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

추적

추적에는 프로그램 프로세스에 대한 로깅 정보를 전문적으로 사용하는 것이 포함됩니다. 엔지니어는 로그를 통해 개별 트랜잭션을 디버깅하고 병목 현상을 식별할 수 있습니다. 추적은 자동으로 활성화하거나 수동 계측을 사용하여 활성화할 수 있습니다.

애플리케이션은 다양한 서비스와 통합되므로 애플리케이션과 기본 서비스가 어떻게 작동하는지 식별하는 것이 중요합니다. 트레이스는 트레이스 및 스팬과 함께 작동합니다. 추적은 전체 요청 프로세스이며 각 추적은 범위로 구성됩니다. 범위는 태그가 지정된 시간 간격이며 시스템의 개별 구성 요소 또는 서비스 내에서의 활동입니다. 추적은 애플리케이션에 요청이 들어왔을 때 어떤 일이 발생하는지에 대한 큰 그림을 제공합니다.

애플리케이션 팀

애플리케이션 개발자는 인바운드 및 아웃바운드 요청과 애플리케이션 내 기타 이벤트에 대한 추적 데이터를 각 요청에 대한 메타데이터와 함께 전송하여 애플리케이션을 계측합니다. 트레이스를 생성하려면 애플리케이션이 트레이스를 생성하도록 인스트루먼트되어야 합니다. 계측은 자동 또는 수동일 수 있습니다.

자동 계측

소스 코드를 수정할 필요 없이 자동 계측을 사용하여 애플리케이션에서 원격 분석을 수집할 수 있습니다. 자동 계측 에이전트는 애플리케이션 또는 서비스의 애플리케이션 트레이스를 생성할 수 있습니다. 일반적으로 구성 변경을 사용하여 에이전트나 다른 메커니즘을 추가합니다.

라이브러리 계측에는 사전 빌드된 계측을 추가하기 위해 애플리케이션 코드를 최소한으로 변경하는 작업이 포함됩니다. 계측은 AWS SDK, Apache HTTP 클라이언트 또는 SQL 클라이언트와 같은 특정 라이브러리 또는 프레임워크를 대상으로 합니다.

수동 구성

이 접근 방식에서 애플리케이션 개발자는 추적 정보를 수집하려는 각 위치의 애플리케이션에 계측 코드를 추가합니다. 예를 들어, AOP (종횡지향 프로그래밍) 를 사용하여 추적 데이터를 수집할 수 있습니다. AWS X-Ray 개발자는 SDK를 사용하여 애플리케이션을 계측할 수 있습니다.

샘플링

트레이스 데이터는 대량으로 생성되는 경우가 많습니다. 트레이스 데이터를 내보낼지 여부를 결정하는 메커니즘을 갖추는 것이 중요합니다. 샘플링은 어떤 데이터를 내보낼지 결정하는 프로세스입니다. 이는 일반적으로 비용을 절감하기 위한 것입니다. 샘플링 규칙을 사용자 지정하여 기록하는 데이터의 양을 제어할 수 있습니다. 코드를 변경하거나 재배포하지 않고도 샘플링 동작을 변경할 수도 있습니다. 적절한 양의 트레이스를 생성하려면 샘플링 속도를 제어하는 것이 중요합니다.

애플리케이션 개발자는 메타데이터를 키-값 쌍으로 추가하여 트레이스에 주석을 달 수 있습니다. 주석은 트레이스를 강화하고 백엔드의 필터링을 구체화하는 데 도움이 됩니다.

DevOps 팀

DevOps 엔지니어는 애플리케이션 개발자가 인프라 및 애플리케이션의 트레이스를 시각화할 수 있는 추적 환경을 설정해 달라는 요청을 받는 경우가 많습니다. 추적 환경 설정에는 다양한 소스에서 추적 데이터를 수집하여 시각화를 위해 중앙 저장소로 보내는 작업이 포함됩니다.

추적 백엔드

추적 백엔드는 애플리케이션이 처리하는 요청에 대한 데이터를 AWS X-Ray 수집하는 서비스입니다. 데이터를 보고, 필터링하고, 통찰력을 확보하여 최적화를 위한 문제와 기회를 식별하는 데 사용할 수 있는 도구를 제공합니다. 애플리케이션에 대한 추적된 요청의 경우 요청 및 응답에 대한 자세한 정보와 애플리케이션이 다운스트림 AWS 리소스, 마이크로서비스, 데이터베이스 및 웹 API에 대해 수행하는 기타 호출에 대한 세부 정보를 볼 수 있습니다.

추적 자동화

애플리케이션마다 추적 요구 사항이 다르기 때문에 추적 인프라의 구성 및 운영을 자동화하는 것이 중요합니다. IaC 도구를 사용하여 추적 인프라의 백엔드를 프로비저닝하세요.

CD 파이프라인을 사용하여 다음을 자동화하십시오.

  • 필요에 따라 추적 인프라를 배포하고 필요하지 않을 때는 해체하세요.

  • 추적 구성을 애플리케이션 전체에 배포하세요.

추적 도구

AWS 추적 및 관련 시각화를 위해 다음과 같은 서비스를 제공합니다.