차트 패턴 해석 가이드
FlowKat의 차트에서 나타나는 주요 패턴과 그 의미를 안내합니다. 패턴을 인식하면 장애 원인을 빠르게 유추하고 적절한 조치를 취할 수 있습니다.
1. XLOG 산점도 패턴
XLOG 산점도는 개별 트랜잭션의 종료 시각(X축)과 응답시간(Y축)을 점으로 표시합니다. 점의 분포 형태(패턴)로 시스템 상태를 직관적으로 파악할 수 있습니다.
1.1 정상 패턴
여유 패턴 (Normal)
| 항목 | 내용 |
|---|---|
| 시각적 특징 | 대부분의 점이 Y축 하단에 밀집되어 있습니다 |
| 의미 | 트랜잭션이 정상적으로 빠르게 처리되고 있습니다 |
| 심각도 | 정상 |
| 확인 사항 | 붉은색 점(에러 트랜잭션) 포함 여부를 확인하십시오. 응답 속도는 정상이지만 에러가 발생하고 있을 수 있습니다 |
휴식 패턴 (Idle)
| 항목 | 내용 |
|---|---|
| 시각적 특징 | 점이 거의 없는 빈 차트입니다 |
| 의미 | 해당 기간에 트랜잭션 유입이 거의 없습니다 |
| 심각도 | 상황에 따라 다름 |
| 확인 사항 | 사용자가 적은 시간대라면 정상입니다. 평소 트래픽이 많은 시간대에 이 패턴이 나타나면 네트워크 단절, 앞단 서버 장애 등으로 요청이 도달하지 못하는 상황을 의심하십시오 |
피크 시간대 휴식 패턴
평소 트래픽이 많은 시간대에 점이 거의 없다면 장애를 의심하십시오. 센트리 모니터와 네트워크 연결 상태를 먼저 확인합니다.
1.2 부하 패턴
단순 폭주 패턴 (Simple Surge)
| 항목 | 내용 |
|---|---|
| 시각적 특징 | 특정 시점에 점들이 순간적으로 솟아오르며 밀집됩니다 |
| 의미 | 순간적으로 사용자가 급증하여 서비스 요청이 몰렸습니다 |
| 심각도 | 경고 (일시적) |
| 대응 방법 | 일시적인 현상인지 확인합니다. 지속적인 지연(계단형 패턴)으로 이어지지 않는지 모니터링하십시오 |
혼란 패턴 (Chaotic)
| 항목 | 내용 |
|---|---|
| 시각적 특징 | 차트 전 영역에 점이 불규칙하게 흩어져 있습니다 |
| 의미 | 여러 오브젝트에서 다양한 형태의 지연이 혼재됩니다 |
| 심각도 | 경고 |
| 대응 방법 | 전체 뷰로는 원인 파악이 어렵습니다. 오브젝트 선택 필터를 사용하여 개별 오브젝트별로 분리한 후 세부 분석하십시오 |
오브젝트 분리 분석
XLOG 화면에서 오브젝트 선택 필터를 변경하면 해당 오브젝트의 트랜잭션만 표시됩니다. 혼란 패턴이 나타나면 오브젝트를 하나씩 분리하여 패턴을 확인하십시오.
1.3 자원 고갈 패턴
계단형 지연 패턴 (시루떡)
| 항목 | 내용 |
|---|---|
| 시각적 특징 | Y축에 수평선(가로선)이 여러 층으로 형성됩니다. 부하가 증가할수록 층이 늘어납니다 |
| 의미 | 트랜잭션이 특정 자원(DB Connection, Thread Pool 등)을 획득하지 못해 대기하다 재시도하는 과정이 반복됩니다 |
| 심각도 | 위험 |
| 대응 방법 | 1. 트랜잭션을 클릭하여 프로파일에서 대기 구간을 확인합니다 2. DB Connection Pool 사용량을 점검합니다 3. Thread Pool 설정을 확인합니다 4. 병목 자원의 용량을 확보하거나 로직을 개선합니다 |
계단형 지연 패턴 — 자원 고갈 징후
이 패턴은 심각한 자원 부족 상태를 나타냅니다. 계단이 여러 층으로 형성되면 서비스 전체 장애로 확대될 수 있습니다. 즉시 대응이 필요합니다.
폭포수 패턴 (Waterfall)
| 항목 | 내용 |
|---|---|
| 시각적 특징 | 위에서 아래로 떨어지는 반복적인 세로선이 형성됩니다 |
| 의미 | 특정 자원이 한계에 도달했다가 순간적으로 풀리면서, 대기 중이던 트랜잭션이 동시에 종료됩니다 |
| 심각도 | 위험 |
| 대응 방법 | 1. 세로선 구간의 트랜잭션을 클릭하여 프로파일을 확인합니다 2. 공통적으로 대기하고 있는 자원(Lock, 동기화 구간)을 식별합니다 3. 해당 자원의 병목을 해소합니다 |
물방울 패턴 (Waterdrop)
| 항목 | 내용 |
|---|---|
| 시각적 특징 | 짧은 세로선들이 산발적으로 여러 개 나타납니다 |
| 의미 | 시스템에 병목이 존재하지만 부하가 적어서 아직 크게 표출되지 않고 있습니다 |
| 심각도 | 경고 (잠재적 위험) |
| 대응 방법 | 1. 물방울(짧은 세로선) 구간의 트랜잭션을 선택합니다 2. 프로파일에서 숨겨진 병목 지점을 확인합니다 3. 부하가 증가하기 전에 선제적으로 개선합니다 |
잠재적 위험
물방울 패턴은 현재 장애가 아니지만, 트래픽이 증가하면 계단형(시루떡) 또는 폭포수 패턴으로 발전할 수 있습니다. 선제적 대응이 권장됩니다.
1.4 Lock/경합 패턴
매트릭스 패턴 (Matrix)
| 항목 | 내용 |
|---|---|
| 시각적 특징 | 점들이 위에서 아래로 흘러내리듯 형성됩니다 |
| 의미 | 짧고 빈번한 Lock 현상이 다수의 트랜잭션에 걸쳐 나타납니다. DB 격리 수준(Isolation Level)이 높을 때 주로 발생합니다 |
| 심각도 | 경고 |
| 대응 방법 | 1. DB 격리 수준(Isolation Level) 설정을 점검합니다 2. 락이 발생하는 테이블/쿼리를 식별합니다 3. 불필요하게 높은 격리 수준을 낮추거나 락 발생 로직을 최적화합니다 |
파도치기 패턴 (Wave)
| 항목 | 내용 |
|---|---|
| 시각적 특징 | 응답시간 분포가 물결처럼 출렁이며 오르락내리락합니다 |
| 의미 | 연동하는 외부 시스템의 자원이 부족하거나, 서비스 요청량이 주기적으로 변동합니다 |
| 심각도 | 경고 |
| 대응 방법 | 1. 트래픽 패턴의 단순 변동인지 확인합니다 2. 외부 시스템(DB, 외부 API 등)의 리소스 사용률을 점검합니다 3. 외부 시스템 CPU가 높다면 해당 시스템의 성능을 개선합니다 |
2. 시계열 차트 패턴 (대시보드)
대시보드의 TPS, 응답시간, 에러율 시계열 차트에서 관찰되는 패턴입니다.
2.1 TPS 패턴
| 패턴 | 시각적 특징 | 의미 | 대응 |
|---|---|---|---|
| 평탄 | 일정한 수준 유지 | 정상 트래픽 | 없음 |
| 급등 | 특정 시점에 급격한 상승 | 트래픽 급증, 이벤트 발생 | 서버 부하 확인 |
| 급감 | 갑자기 0에 가까워짐 | 서비스 장애, 네트워크 단절 | 즉시 장애 대응 |
| 주기적 변동 | 일정한 주기로 증감 반복 | 배치 작업, 크론 작업 | 정상 여부 확인 |
2.2 응답시간 패턴
| 패턴 | 시각적 특징 | 의미 | 대응 |
|---|---|---|---|
| 안정 저지대 | 일정한 낮은 수준 유지 | 정상 처리 | 없음 |
| 점진적 상승 | 서서히 증가하는 추세 | 리소스 소진(메모리 누수, 커넥션풀 고갈) | XLOG에서 원인 추적 |
| 스파이크 | 순간적 급등 후 복귀 | 일시적 자원 경합, GC | GC 로그 확인 |
| 고원 유지 | 높은 수준에서 지속 | 지속적 병목 | 즉시 원인 분석 |
2.3 에러율 패턴
| 패턴 | 시각적 특징 | 의미 | 대응 |
|---|---|---|---|
| 제로 | 에러 없음 | 정상 | 없음 |
| 산발적 발생 | 간헐적 에러 점 | 특정 URL/사용자 오류 | 에러 통계에서 확인 |
| 비례 상승 | TPS와 함께 에러 증가 | 부하 관련 에러 | 자원 확장 검토 |
| 독립 급등 | TPS 무관하게 에러 급증 | 외부 시스템 장애, 배포 오류 | 외부 연동 점검 |
3. 히스토그램 패턴 (트랜잭션 익스플로러)
트랜잭션 익스플로러의 시계열 히스토그램에서 관찰되는 패턴입니다. 바의 색상은 트랜잭션 상태를 나타냅니다: 정상(파란색), 느린(노란색), 오류(빨간색).
3.1 분포 패턴
| 패턴 | 시각적 특징 | 의미 | 대응 |
|---|---|---|---|
| 균일 파란색 | 모든 바가 파란색으로 균일 | 정상 처리 | 없음 |
| 노란색 띠 출현 | 특정 시간대에 노란색 비중 증가 | 해당 시간대 응답 지연 | 브러시로 해당 구간 확대 |
| 빨간색 급증 | 특정 시점에 빨간색 바 급증 | 에러 집중 발생 | 해당 구간 클릭하여 에러 분석 |
| 특정 시간대 공백 | 히스토그램 바가 없는 구간 | 데이터 수집 중단 또는 서비스 중지 | 수집 서버 상태 확인 |
4. 패턴별 빠른 참조표
| 패턴 | 차트 | 심각도 | 핵심 확인 사항 | 관련 시나리오 |
|---|---|---|---|---|
| 여유 (Normal) | XLOG | 정상 | 에러 점 유무 | 일상 모니터링 |
| 휴식 (Idle) | XLOG | 상황 의존 | 피크 시간대 여부 | 장애 대응 |
| 단순 폭주 (Surge) | XLOG | 경고 | 지속 여부 | 트래픽 이상 탐지 |
| 혼란 (Chaotic) | XLOG | 경고 | 오브젝트 분리 분석 | 장애 대응 |
| 계단형 (시루떡) | XLOG | 위험 | DB Connection Pool, Thread Pool | 장애 대응 |
| 폭포수 (Waterfall) | XLOG | 위험 | Lock, 동기화 구간 | 장애 대응 |
| 물방울 (Waterdrop) | XLOG | 경고 | 잠재적 병목 사전 제거 | 느린 트랜잭션 추적 |
| 매트릭스 (Matrix) | XLOG | 경고 | DB Isolation Level | 느린 트랜잭션 추적 |
| 파도치기 (Wave) | XLOG | 경고 | 외부 시스템 리소스 | 느린 트랜잭션 추적 |
5. 관련 문서
- 시나리오별 빠른 가이드 — 패턴 발견 후 대응 시나리오
- XLOG 개요 — XLOG 산점도 상세 사용법
- XLOG 프로파일 분석 — 프로파일 해석 방법
- 트랜잭션 통계 — 통계 기반 문제 식별
- 트랜잭션 익스플로러 — 히스토그램 및 트래픽 분석