트레이싱 데이터 분석하기

트레이싱 데이터 분석하기 (Analyze tracing data)

선택한 RED 메트릭에 따라 변경되는 탭으로 필터링된 스팬을 더 분석할 수 있어요. Breakdown, Comparison, Service structure, Root cause errors, Root cause latency, Exceptions, 그리고 트레이스 목록 탭(Traces, Errored traces, Slow traces)이 그것이에요. RED 메트릭을 선택하면 탭이 컨텍스트에 맞게 바뀌고, 각 탭은 제공되는 정보에 대한 간단한 설명을 보여줘요.

출처: 문서

본문

Breakdown 탭

Breakdown 탭은 선택한 메트릭을 선택한 리소스 또는 스팬 속성의 값으로 나눠요. Duration 메트릭을 사용할 때 Breakdown은 선택한 속성의 각 값에 대한 90번째 백분위 지속 시간을 보여주고 평균 지속 시간으로 값을 정렬해요. Rate를 선택하면 속성 시퀀스를 초당 요청 속도로 정렬해요.

Scope를 Resource 또는 Span으로 변경할 수 있고, Attributes 사이드바로 선택한 메트릭을 다른 속성으로 그룹화할 수 있어요. 예를 들어 Errors 메트릭을 선택하고 resource.service.name 속성을 고르면 resource.service.name별로 정렬된 오류 수가 가장 많은 매칭 순으로 표시돼요. Attributes 사이드바에서 Group by 속성을 선택해요. 검색, Resource/Span 범위 지정, Favorites 빠른 접근을 사용할 수 있어요. 이미 Filters에 있는 속성은 Attributes 사이드바 상단에 나열돼요. 기본적으로 선택 속성은 첫 번째 Favorite 또는 resource.service.name이에요. Attributes 사이드바는 cluster, environment, namespace 같은 다른 흔한 리소스 수준 속성도 표시해요.

백분위 선택 (Duration 전용)

Duration 메트릭을 선택하면 Percentiles 선택기로 플로팅·집계할 지속 시간 백분위를 고를 수 있어요. 기본값은 90번째 백분위(p90)이며, p50, p75, p90, p95, p99 중 하나 이상을 선택할 수 있어요. 모두 선택 해제하면 Traces Drilldown이 기본적으로 p90을 적용해요. 이 선택은 Breakdown 탭에서 어떤 Duration 값이 요약·표시되는지 결정해요. 선택기는 Duration이 선택됐을 때만 나타나요.

패널에서 알림 만들기

Tempo 알림을 사용할 수 있으면 Breakdown 패널에서 직접 알림 규칙을 만들 수 있어요. 패널 메뉴를 열고 Create alert를 선택하면 패널의 쿼리로 미리 채워진 Grafana Alerting이 열려, 메트릭이 임계값을 넘으면 알림을 받을 수 있어요.

Comparison 탭

Comparison 탭은 선택한 메트릭과 가장 상관관계가 높은 스팬 속성을 표면화하고 순위를 매겨, 트레이스 수준 문제를 유발하는 것을 찾게 해줘요. 메트릭을 선택하면 각 리소스·스팬 속성에 대해 그 속성 값이 선택된 하위 집합(selection)과 다른 모든 스팬(baseline) 사이에서 얼마나 강하게 다른지 계산해요. 차이가 큰 순서대로 속성-값 쌍을 나열하므로, 상위 항목이 관심 신호와 가장 고유하게 연관된 것들이에요.

비교 동작은 선택한 RED 메트릭에 따라 달라져요. Errors를 보면 오류와 상관된 속성 값을 보여주고, Duration을 보면 높은 지연과 상관된 속성을 보여줘요. Attributes 사이드바로 All(전체 차이)과 특정 속성(값별 차이) 사이를 전환할 수 있어요. Hide baseline-only를 선택하면 baseline에만 나타나는 속성 값을 숨겨 선택 항목에 있는 값에 집중할 수 있어요.

Inspect로 개별 속성에 집중

Inspect는 비교에서 개별 속성 값을 분해하고 볼 수 있게 해줘요. 개요는 각 속성의 단일 최고 차이 값과 Inspect 버튼을 보여주지만, 그 속성의 모든 값을 한 번에 볼 수는 없어요. Inspect를 선택하면 앱이 그 속성 하나에 집중하고 포함된 모든 값에 대한 시각화를 보여줘요. 예를 들어 resource.service.name에서 Inspect를 선택하면 각 서비스가 baseline과 selection 막대로 표시되어 어떤 서비스가 선택한 메트릭과 가장 상관관계가 높은지 즉시 알 수 있어요.

Structure 탭

Structure 탭은 트레이스에서 집계 데이터를 추출하고 볼 수 있게 해줘요. 탭 이름은 보는 메트릭에 따라 달라져요: Rate는 Service structure, Errors는 Root cause errors, Duration은 Root cause latency.

  • Rate: Service structure 탭은 애플리케이션들이 요청을 처리하기 위해 서로 어떻게 통신하는지 보여줘요. 현재 필터와 일치하는 트레이스의 서비스 구조를 분석하세요.
  • Errors: Root cause errors 탭은 선택한 필터 아래의 오류 구조를 보여줘요. 트레이스 위쪽에서 문제를 일으키는 오류 체인을 즉시 볼 수 있어요.
  • Duration: Root cause latency 탭은 가장 오래 실행되는 스팬의 구조를 보여줘 느린 스팬의 구조를 분석할 수 있어요.

표시되는 스팬은 여러 트레이스의 스팬으로 컴파일된 집계 뷰예요.

Exceptions 탭 (Errors 메트릭 전용)

Exceptions 탭은 현재 필터와 시간 범위 내에서 발생하는 예외 메시지를 보여줘요. 예외는 메시지별로 그룹화되어 가장 빈번한 실패를 식별하고 영향받은 트레이스에 접근할 수 있게 해줘요. 각 행에는 Include/Exclude 버튼이 있어 특정 예외에 집중하거나 제외하도록 현재 조사를 필터링할 수 있어요. Exceptions 탭은 Errors 메트릭이 선택되고 예외가 있을 때 사용할 수 있어요. Errors를 선택하면 Exceptions가 Root spans와 All spans 선택 모두에서 동작하며 결과는 범위 내 데이터를 반영해요. Errors 메트릭의 상승을 발견하면 Exceptions 탭으로 문제를 조사할 수 있어요.

Adaptive Traces 탭

Adaptive Traces 탭은 다음 두 조건이 모두 충족될 때 나타나요: Adaptive Traces가 활성화되고, 테일 샘플링 정책 필터가 적용됐을 때. 이때 탭은 선택한 테일 샘플링 정책에 대한 스팬 지연 데이터를 표시해, 정책이 현재 시간 범위 내 트레이스 수집과 지연 분포에 어떻게 영향을 주는지 이해하게 해줘요. Adaptive Traces가 활성화되지 않았거나 테일 샘플링 정책 필터가 없다면 탭이 나타나지 않아요.

트레이스 목록 탭

각 RED 메트릭에는 자체 트레이스 목록 탭이 있어요: Rate는 Traces, Errors는 Errored traces, Duration은 Slow traces. Attributes 사이드바로 속성을 추가 테이블 열로 추가할 수 있어요. 여러 속성을 열로 포함시키고, Search attributes와 Favorites로 속성을 찾을 수 있어요.

선택한 시간 범위 변경

오른쪽 위 시간 선택기로 Traces Drilldown에 표시되는 데이터를 수정할 수 있어요. 쿼리할 수 있는 시간 범위는 Tempo 데이터 소스 구성(트레이스 보존 기간과 TraceQL 메트릭에 허용된 범위 포함)에 따라 달라져요. 긴 시간 범위는 더 많은 데이터를 스캔해 결과를 반환하는 데 더 오래 걸릴 수 있어요.

Trace ID로 트레이스 열기

헤더의 Trace ID 입력을 사용해 특정 트레이스를 열 수 있어요. 결과 목록에서 트레이스를 열면 Trace ID 입력이 지워져 낡은 값을 피해요. 시간 범위가 선택되면 현재 선택된 시간 범위 내에서 검색하고, 아니면 전체 시간에서 검색해요. 트레이스가 없으면 오류 메시지가 나타나니 ID를 확인하고 필요하면 시간 범위를 넓히세요. 이 동작은 Tempo 데이터 소스 구성에 따라 달라져요.

더 알아보기 (Learn more)