트레이스 - Amazon OpenSearch Service

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

트레이스

Amazon OpenSearch Service는 애플리케이션 성능을 이해하고 마이크로서비스 아키텍처 전반의 문제를 진단하는 데 도움이 되는 포괄적인 분산 추적 기능을 제공합니다. OpenSearch Ingestion을 사용하여 OpenTelemetry(OTel) 추적 데이터를 수집하면 OpenSearch Service는 원격 측정 정보를 자동으로 처리하고 구조화하여 분산 시스템을 통한 요청 흐름에 대한 end-to-end 가시성을 제공합니다.

추적 데이터 처리 및 수집

OpenSearch Ingestion은 수집 중에 추적 데이터를 정규화하고 보강하는 특수 프로세서를 제공하여 원격 측정이 일관된 패턴을 따르고 분석할 준비가 되도록 합니다. 트레이스 데이터의 키 프로세서는 다음과 같습니다.

  • service_map - 스팬 관계에서 서비스 종속성 그래프를 자동으로 빌드하여 요청의 서비스 간 흐름을 보여줍니다.

  • trace_group - HTTP 메서드 및 경로와 같은 진입 범위 속성을 기반으로 관련 범위를 논리적 추적 그룹으로 집계합니다.

  • otel_trace_raw - 원시 OpenTelemetry 트레이스 데이터를 처리하고 스팬 속성, 리소스 속성 및 계측 범위 정보를 검색 가능한 필드로 추출합니다.

OpenSearch UI 및 관찰성 Workspace

추적 데이터를 Amazon OpenSearch Service에 수집한 후 OpenSearch UI의 Amazon OpenSearch Service 관찰성 워크스페이스에서 제공하는 도구를 사용하여 분석합니다. 관찰성 워크스페이스는 서비스 성능을 이해하고, 병목 현상을 식별하고, 분산 아키텍처 전반의 문제를 해결하는 데 도움이 되도록 설계된 특수한 시각화 및 분석 도구를 제공합니다.

관찰성 워크스페이스에는 모든 계측된 서비스에 대한 RED 지표(속도, 오류율, 기간)를 표시하는 서비스 보기와 종속성 및 통신 패턴을 보여주는 대화형 서비스 맵이 포함되어 있습니다. 트레이스 보기를 사용하면 트레이스 IDs 또는 스팬 IDs를 사용하여 특정 트레이스를 검색한 다음 세부 폭포 차트 및 스팬 분석을 드릴다운하여 시스템을 통한 전체 요청 여정을 이해할 수 있습니다.

주요 기능

서비스 보기

서비스 보기는 다음을 통해 애플리케이션의 상태 및 성능에 대한 포괄적인 개요를 제공합니다.

  • RED 지표 대시보드 - 분산 시스템의 각 서비스에 대한 비율(초당 요청 수), 오류율(실패한 요청의 백분율) 및 기간(지연 백분위수)을 모니터링합니다. 이러한 지표는 서비스 상태에 대한 즉각적인 인사이트를 제공하고 성능 저하를 신속하게 식별하는 데 도움이 됩니다.

  • 대화형 서비스 맵 - 자동으로 생성된 종속성 그래프를 통해 서비스가 서로 통신하는 방식을 시각화합니다. 서비스 맵에는 서비스 간 요청 흐름이 표시되므로 시스템 아키텍처를 이해하고 병목 현상 또는 계단식 장애를 식별할 수 있습니다.

  • 서비스 상태 지표 - 오류율 및 지연 시간 임계값을 기반으로 문제가 있는 서비스를 빠르게 식별합니다. 서비스는 즉각적인 주의가 필요한 서비스를 강조 표시하도록 색상 코딩되므로 문제 해결 작업의 우선순위를 쉽게 지정할 수 있습니다.

  • 서비스 상관관계 대화 상자 - 모든 서비스에서 드릴다운하여 관련 로그 및 추적을 분석합니다. 이 통합 보기는 서비스 수준 지표를 세부 추적 데이터 및 관련 로그 항목과 연결하여 서로 다른 도구 간에 전환하지 않고도 더 빠른 근본 원인 분석을 가능하게 합니다.

트레이스 보기

추적 보기를 사용하면 분산 시스템을 통해 개별 요청을 심층적으로 조사할 수 있습니다.

  • HTTP 메서드 및 경로별 추적 그룹화 - API 엔드포인트를 기반으로 추적을 논리적 그룹으로 자동 구성하여 평균 지연 시간, 오류율, 시간 경과에 따른 성능 추세와 같은 집계 지표를 표시합니다. 이를 통해 문제가 발생한 엔드포인트를 식별하고 성능 개선을 추적할 수 있습니다.

  • 트레이스 ID 및 스팬 ID 검색 - 트레이스 식별자 또는 스팬 식별자를 사용하여 특정 트레이스를 빠르게 찾습니다. 이는 사용자가 보고한 문제를 조사하거나 추적 컨텍스트가 포함된 오류 로그와 상호 연관시킬 때 특히 유용합니다.

  • 폭포 차트 - 요청이 서비스를 통과할 때 요청의 전체 타임라인을 시각화합니다. 폭포 보기에는 스팬 타이밍과 지속 시간이 표시되므로 느린 작업, 순차적 처리와 병렬 처리, 분산 시스템에서 시간이 소비되는 위치를 쉽게 식별할 수 있습니다.

  • 계층적 범위 분석이 포함된 트리 보기 - 범위 간의 상위-하위 관계를 탐색하여 트레이스 내의 호출 계층 구조를 이해합니다. 이 보기는 요청이 서비스 간에 어떻게 분기되는지 확인하고 전체 지연 시간에 영향을 미치는 서비스 호출을 식별하는 데 도움이 됩니다.

  • 연결된 로그 패널 - 추적과 동일한 기간 동안 발생한 로그를 보고 관련 서비스 및 추적 컨텍스트로 필터링합니다. 추적과 로그 간의 이러한 상관관계는 단일 인터페이스에서 요청 흐름과 세부 애플리케이션 로그를 모두 제공하여 문제 해결을 크게 개선합니다.

고급 기능

  • 상관관계 분석 - 트레이스, 스팬 및 서비스를 해당 로그와 원활하게 연결합니다. 관찰성 워크스페이스는 추적 컨텍스트를 사용하여 원격 측정 데이터의 상관관계를 자동으로 파악하므로 컨텍스트를 잃지 않고 동일한 요청의 다양한 보기 간에 피벗할 수 있습니다.

  • 사용자 지정 인덱스 이름 및 클러스터 간 지원 - 사용자 지정 인덱스 패턴 또는 여러 OpenSearch 클러스터에서 추적 데이터를 읽도록 OpenSearch Service를 구성합니다. 이러한 유연성은 복잡한 배포 시나리오를 지원하며 운영 요구 사항에 따라 원격 측정 데이터를 구성할 수 있습니다.

  • 구성 가능한 서비스 맵 제한 - 서비스 맵에 표시되는 서비스 및 연결 수를 조정하여 대규모 토폴로지를 처리합니다. 수백 개의 서비스가 있는 시스템의 경우 맵을 필터링하여 특정 서비스 하위 집합에 초점을 맞추거나 렌더링 제한을 조정하여 성능을 유지할 수 있습니다.

  • Gantt 차트의 미니 맵 탐색 - 미니 맵 개요를 사용하여 대규모 트레이스 워터폴 차트를 효율적으로 탐색합니다. 이 기능은 범위가 많은 트레이스를 분석할 때 특히 유용하므로 타임라인의 다른 섹션으로 빠르게 이동할 수 있습니다.

트레이스는 OpenTelemetry(OTel) 프로토콜 데이터를 기반으로 애플리케이션 성능을 at-a-glance 파악할 수 있습니다. 서비스 전반의 end-to-end 여정을 추적하여 요청이 분산 시스템을 통과하는 방식을 이해하는 데 도움이 됩니다.