트랜잭션 조회

트랜잭션 추적 및 분석
목차
- 개요
- 주요 기능
- 화면 구성
- 상호작용 기능
- 예외 상황 처리
- 연관 메뉴
- 실전 예시
1. 개요
트랜잭션 조회란?
특정 트랜잭션의 전체 실행 과정을 추적하고 분석하는 도구
언제 사용하나요?
- 특정 사용자의 요청을 추적할 때
- 트랜잭션 실패 원인을 분석할 때
- 분산 시스템의 호출 체인을 파악할 때
- 트랜잭션별 메트릭을 비교할 때
해결하는 문제
단일 트랜잭션의 시작부터 끝까지 전체 실행 경로를 추적하여 정확한 문제 지점을 식별할 수 있습니다.
2. 주요 기능
핵심 추적 기능
| 기능 | 설명 | 사용 빈도 |
|---|---|---|
| 트랜잭션 검색 | ID, URL, 사용자로 검색 | 높음 |
| 실행 경로 | 메서드/SQL/외부 호출 시각화 | 높음 |
| Web Worker 검색 | 백그라운드 검색 및 진행률 표시 | 높음 |
| 집계 모드 | 관련 트랜잭션 그룹화 | 중간 |
| 내보내기 | 추적 데이터 내보내기 | 낮음 |
3. 화면 구성
ObjectSelector란?
모니터링할 오브젝트(서버, 서비스, 인스턴스)를 선택하는 컴포넌트
위치: 화면 좌측 사이드바
주요 기능:
- 오브젝트 트리 탐색
- 다중 오브젝트 선택
- 오브젝트별 필터링
사용법:
단계 1: ObjectSelector 버튼을 클릭하세요
단계 2: 원하는 오브젝트를 체크하세요 (다중 선택 가능)
단계 3: 선택된 오브젝트 수가 버튼에 표시됩니다
오브젝트 상태 정보:
- 전체 실행 개수: 현재 실행 중인 오브젝트 수
- 라이선스 없는 개수: 라이선스 없이 실행 중인 오브젝트 수
- 전체 정지 개수: 정지된 오브젝트 수
3계층 레이아웃 구조:
1층 (검색 조건 영역)
- 서버 선택 드롭다운
- 검색 시작 버튼
- 검색 조건 설정
2층 (오브젝트 목록 영역)
- ObjectSelector (오브젝트 목록): 모니터링 대상 오브젝트 목록
- noPadding 옵션 적용 (최대 공간 활용)
- 오브젝트별 필터링 지원
3층 (탭 영역)
- 트랜잭션 상세 정보 탭
- 다중 탭 지원
특징:
- Web Worker 기반 백그라운드 검색 (
useXLogSearchWorker) - 검색 진행률 실시간 알림
초기 상태 안내
⚠️ 중요 사항
⚠️ 중요: 오브젝트를 선택하지 않으면 화면이 비어있는 것이 정상입니다.
\n빈 화면인 경우:
- ObjectSelector에서 모니터링할 오브젝트를 선택했는지 확인하세요
- 오브젝트가 등록되어 있는지 확인하세요 데이터가 표시되지 않는 경우:
- 선택한 오브젝트가 데이터를 수집 중인지 확인하세요
- 시간 범위를 조정해 보세요
4. 상호작용 기능
트랜잭션 검색
단계 1: 1층 검색 조건 영역에서 서버를 선택하세요
단계 2: 검색 조건을 입력하세요
- 트랜잭션 ID
- URL 경로
- 사용자 ID
단계 3: "검색"을 클릭하세요
단계 4: Web Worker 백그라운드 검색 진행률을 확인하세요
오브젝트 필터링
단계 1: 2층 오브젝트 목록 영역에서 필터링할 오브젝트를 선택하세요
단계 2: 다중 선택 가능
단계 3: 선택된 오브젝트의 트랜잭션만 3층 탭 영역에 표시됩니다
트랜잭션 상세 확인
단계 1: 3층 탭 영역에서 트랜잭션을 선택하세요
단계 2: 탭을 전환하며 상세 정보를 확인합니다
- 탭 1: 실행 경로 타임라인
- 탭 2: SQL 상세
- 탭 3: HTTP 요청/응답
- 탭 4: 예외 스택 트레이스
검색 진행률 확인
- Web Worker가 백그라운드에서 검색 실행
- 진행률 바가 실시간으로 표시됩니다
- 대용량 검색 시에도 UI 응답성 유지
5. 예외 상황 처리
⚠️ 중요 사항
⚠️ 자주 발생하는 문제
문제: 트랜잭션을 찾을 수 없음
원인: 잘못된 ID 또는 데이터 보관 기간 초과
해결: 검색 조건을 확인하거나 시간 범위를 넓히세요
문제: 일부 스팬만 표시됨원인: 추적이 중간에 끊김
해결: 애플리케이션 로그에서 예외를 확인하세요
문제: 검색 진행률이 느림원인: 대용량 데이터 검색
해결: 검색 조건을 구체화하여 검색 범위를 좁히세요
6. 연관 메뉴
함께 사용하면 좋은 메뉴:
| 메뉴 | 함께 사용하는 이유 |
|---|---|
| XLOG | 트랜잭션 성능 병목 분석 |
| 알람 로그 | 실패한 트랜잭션의 에러 원인 |
| 시스템 대시보드 | 트랜잭션 빈도가 높은 서비스 확인 |
7. 실전 예시
시나리오: 분산 트랜잭션 실패 분석
상황: 주문 완료 API에서 간헐적 실패 발생
해결 과정:
- 트랜잭션 조회 1층에서 "/api/orders/complete" 검색 조건 입력
- 서버 선택 후 검색 시작
- Web Worker 백그라운드 검색 진행률 확인
- 검색 완료 후 실패한 트랜잭션 필터링
- 3층 탭 영역에서 트랜잭션 상세 확인
- 실행 경로 타임라인에서 재고 서비스 호출 실패 확인
- HTTP 탭에서 HTTP 503 Service Unavailable 에러 발견
- 재고 서비스 로그에서 타임아웃 설정 확인
- 타임아웃 시간을 3초에서 5초로 증가
- 재시도 로직 추가하여 재발 방지
결과: 간헐적 실패 문제 해결, 안정성 99.9% 달성
이 페이지가 도움이 되었나요?