XLOG

트랜잭션 분포도 실시간 분석
목차
- 개요
- 시각화 이해하기
- 화면 구성
- 상호작용 기능
- 예외 상황 처리
- 연관 메뉴
- 실전 예시
1. 개요
트랜잭션 마이닝이란?
트랜잭션 분포도 - 개별 트랜잭션의 응답 시간을 시간축에 점으로 표시한 차트
언제 사용하나요?
- 느린 트랜잭션의 원인을 파악할 때
- 에러 트랜잭션의 패턴을 분석할 때
- 특정 시간대의 성능 변화를 추적할 때
- SQL/API 호출 병목을 시각화할 때
해결하는 문제
트랜잭션의 응답 시간 분포를 시각화하여 성능 문제의 원인을 신속하게 식별할 수 있습니다.
2. 시각화 이해하기
점 색상 의미
| 색상 | 의미 | 색상 코드 |
|---|---|---|
| 파란색 | 정상 트랜잭션 | #0062B1 |
| 빨간색 | 에러 트랜잭션 | #ff5454 |
| 회색 | 비동기 트랜잭션 | rgb(172,172,172) |
데이터 분포 패턴
상승세 (점이 위로 분포)
- 원인: 응답 시간이 긴 트랜잭션 증가
- 체크포인트: 서비스 지연, DB 쿼리 지연, 외부 API 타임아웃
- 조치: 점 클릭 → 프로파일 상세 분석
급감 (점이 아래로 분포)
- 원인: 성능 개선 또는 빠른 에러 반환
- 체크포인트: 빨간점 비율 확인 (정상 개선 vs 장애)
3. 화면 구성
ObjectSelector란?
모니터링할 오브젝트(서버, 서비스, 인스턴스)를 선택하는 컴포넌트
위치: 화면 좌측 사이드바
주요 기능:
- 오브젝트 트리 탐색
- 다중 오브젝트 선택
- 오브젝트별 필터링
사용법:
단계 1: ObjectSelector 버튼을 클릭하세요
단계 2: 트리에서 원하는 오브젝트를 체크하세요 (다중 선택 가능)
단계 3: 선택된 오브젝트 수가 버튼에 표시됩니다
오브젝트 상태 정보:
- 전체 실행 개수: 현재 실행 중인 오브젝트 수
- 라이선스 없는 개수: 라이선스 없이 실행 중인 오브젝트 수
- 전체 정지 개수: 정지된 오브젝트 수
주요 영역:
- 헤더 컨트롤: ObjectSelector (오브젝트 선택), 필터, 초기화, X축 구간 슬라이더
- 차트 영역: 점 기반 트랜잭션 분포도 (cursor-crosshair 드래그 지원)
- 통계 정보: 전체 트랜잭션 수, 에러율, 평균 응답시간
- 필터 패널: Popover 형태의 상세 필터 UI
초기 상태 안내
⚠️ 중요 사항
⚠️ 중요: 오브젝트를 선택하지 않으면 화면이 비어있는 것이 정상입니다.
빈 화면인 경우:
- ObjectSelector에서 모니터링할 오브젝트를 선택했는지 확인하세요
- 오브젝트가 등록되어 있는지 확인하세요 데이터가 표시되지 않는 경우:
- 선택한 오브젝트가 데이터를 수집 중인지 확인하세요
- 시간 범위를 조정해 보세요
4. 상호작용 기능
필터 패널 사용
단계 1: 헤더의 "필터" 버튼을 클릭하세요
단계 2: 필터 패널이 오픈되면 다음 항목을 입력하세요:
- Service URL: 서비스 URL로 필터링
- Client IP: 클라이언트 IP로 필터링
- User Agent: 사용자 에이전트로 필터링
- Referrer: 리퍼러로 필터링
- GUID: 고유 ID로 필터링
- Error Only: 에러 트랜잭션만 표시 (스위치 ON)
단계 3: "적용" 버튼을 클릭하여 필터를 적용하세요
X축 구간 조절
단계 1: 헤더의 슬라이더를 드래그하여 시간 범위를 조절하세요 (1분 ~ 120분)
단계 2: 5분, 30분, 60분, 120분 마크를 참고하여 빠르게 설정하세요
ObjectSelector (오브젝트 선택) (인스턴스 필터)
단계 1: "ObjectSelector (오브젝트 선택)" 버튼을 클릭하세요
단계 2: 모니터링할 오브젝트(인스턴스)를 선택하세요
단계 3: 선택된 개수가 버튼에 표시됩니다 (예: ObjectSelector (오브젝트 선택) (3))
초기화
필터나 ObjectSelector (오브젝트 선택)을 리셋하려면 "초기화" 버튼을 클릭하세요
드래그 선택
단계 1: 차트 위에서 마우스로 드래그하여 영역을 선택하세요 (cursor-crosshair)
단계 2: 선택된 트랜잭션들이 프로파일 목록으로 생성됩니다
단계 3: 개별 점을 클릭하여 프로파일 상세를 확인하세요
5. 예외 상황 처리
⚠️ 중요 사항
⚠️ 자주 발생하는 문제
문제: 점이 너무 많아서 분석이 어려움
원인: 시간 범위가 너무 넓거나 필터가 충분하지 않음
해결: X축 구간 슬라이더로 시간 범위를 좁히거나 필터를 추가하세요
문제: 특정 트랜잭션이 보이지 않음원인: 필터 조건이 너무 엄격하거나 ObjectSelector (오브젝트 선택)에서 제외됨
해결: 필터를 초기화하거나 ObjectSelector (오브젝트 선택)을 확인하세요
문제: 에러 트랜잭션만 확인하고 싶음해결: 필터 패널에서 "Error Only" 스위치를 ON으로 설정하세요
6. 연관 메뉴
함께 사용하면 좋은 메뉴:
| 메뉴 | 함께 사용하는 이유 |
|---|---|
| 성능 조회 | 느린 SQL 상세 분석 |
| 트랜잭션 조회 | 특정 트랜잭션 추적 |
| 시스템 대시보드 | 트랜잭션이 많은 서비스 식별 |
7. 실전 예시
시나리오: 갑작스러운 응답 시간 증가 원인 파악
상황: 오후 2시경부터 일부 API의 응답 시간이 급격히 증가
해결 과정:
- 트랜잭션 마이닝 차트에서 오후 2시~3시 구간을 드래그 선택
- 점들이 상단으로 분포하는 상승세 패턴 확인
- 빨간색 점(에러)이 증가하는 것 확인
- "필터" 패널에서 문제가 되는 Service URL 입력
- 개별 점 클릭 → 프로파일 상세에서 SQL 실행 시간 확인
- 특정 SQL 쿼리가 80% 이상 차지하는 것 발견
결과: 인덱스 추가 후 응답 시간 70% 개선
이 페이지가 도움이 되었나요?