MSA 분석
MSA 분석이란?
MSA 분석 기능은 와탭의 멀티 트랜잭션 추적 기능을 통해서 수집된 트랜잭션들 사이의 호출 비중이 어떠한지를 분석합니다. 이를 기반으로 마이크로 서비스간 의존성을 인스턴스 중심이 아닌 URL 레벨에서 확인할 수 있습니다.
예를 들어 A,B,C,D,E 라는 5개 마이크로 서비스가 있는데, 사용자가 A를 호출하면 로직에 따라서 다음과 같은 3가지의 호출 패턴이 발생한다고 가정하겠습니다.
- A→B,C 호출
- A→B,C 호출 + 다시 B→D 호출
- A→B,C 호출 + 다시 B→D,E 호출
이 세가지 패턴이 한번씩 수행되었다면 MSA 분석에서는 기준 URL에 따라 연관도 분석 데이터를 확인할 수 있습니다.
멀티 트랜잭션 추적과 관련한 자세한 내용은 다음 문서를 참조하세요.
MSA 트랜잭션 통계
홈 화면 > 프로젝트 선택 > 분석 > MSA 분석
MSA 분석 메뉴는 마이크로 서비스 환경에서 각 서비스의 성능과 안정성을 효과적으로 분석할 수 있는 도구입니다. 트랜잭션의 상세 호출 관계를 분석하고, 이를 기반으로 시스템 성능을 최적화하며 잠재적인 문제를 사전에 식별할 수 있습니다.
-
시간 선택: 원하는 조회 기간을 선택하세요. 기본 1일 기준으로 Caller Callee를 포함한 트랜잭션 목록을 조회할 수 있습니다.
-
필터: 에이전트 그룹 명, 스펙, 트랜잭션 기준으로 필터링하여 검색할 수 있습니다.
-
정렬 순서: 건수, 에러, 평균 시간(평균 응답 시간) 기준으로 목록을 정렬할 수 있습니다.
-
시간 선택에서 조회할 수 있는 시간 범위는 최대 1일(24시간)입니다. 시간 선택 옵션 이용 방법에 대한 자세한 내용은 다음 문서를 참조하세요.
-
에이전트 그룹 명은 에이전트 설정 옵션의
whatap.okind
로 분류된 그룹 이름입니다. -
조건을 설정한 다음 트랜잭션 목록을 갱신하려면 버튼을 선택하세요.
상세 분석하기
트랜잭션 목록에서 조회를 원하는 항목의 버튼을 선택하면 상세 보기 창이 나타납니다. 상세 보기 창에서 해당 트랜잭션에 대한 호출자(Caller), 피호출자(Callee) 정보를 조회할 수 있습니다.
각 탭에서는 다음의 분석 기능을 제공합니다.
-
Caller Callee 요약: 트랜잭션의 호출자와 피호출자 간의 관계를 시각화된 다이어그램으로 제공합니다.
-
Caller Callee 데이터: 트랜잭션의 호출 횟수, 오류 수, 응답 시간을 상세히 제공합니다.
-
Caller Callee 추이: 시간에 따른 트랜잭션의 호출 횟수 및 비율의 성능 변화를 시계열 차트로 제공합니다.
-
상세 보기 창에서 오른쪽 위에 버튼을 선택하면 전체 화면으로 볼 수 있습니다.
-
상세 보기 창을 닫으려면 오른쪽 아래에 확인 버튼을 선택하거나 ESC 키를 누르세요.
Caller Callee 요약
Caller Callee 요약 탭에서는 트랜잭션 목록에서 선택한 트랜잭션의 Caller, Callee 사이의 의존성 정보를 시각화된 다이어그램으로 표시합니다. 서비스 간의 호출 관계를 직관적으로 이해할 수 있습니다. 호출 경로와 종속성을 시각적으로 파악할 수 있어 문제 원인 분석에 유리합니다.
호출 관계 분석하기
Caller와 Callee 노드에는 최대 0.004, 0.003 등 최대 1인 숫자 정보를 표시하는데, 이것은 전체 Caller 가운데 차지하는 비중을 의미합니다. 마찬가지로 각 Callee의 비중은 오른쪽에 함께 표시합니다.
위 화면을 통해 /account/save/employee/seoul 이라는 트랜잭션을 기준으로 Caller와 Callee들 사이의 의존성을 분석할 수 있습니다. 트랜잭션이 어떤 서비스에서 호출되고 어떤 서비스로 호출되는지 시각적으로 확인할 수 있습니다.
성능 지표 확인하기
각 노드는 트랜잭션 URL, 프로젝트 이름, 에이전트 그룹 이름 그리고 다음 성능 정보로 구성되어 있습니다.
-
Count: 해당 트랜잭션을 호출한 횟수
-
Error: 호출 중 발생한 에러 수
-
평균 응답 시간: 해당 트랜잭션의 평균 응답 시간, 밀리초(ms) 단위
트랜잭션 흐름 파악하기
Caller나 Callee 노드에 마우스를 오버하면 버튼이 표시됩니다. 이 버튼을 선택하면 하위 노드로 상세 전개할 수 있습니다. 트랜잭션의 전체 흐름을 파악하여 문제 발생 지점을 찾는데 도움을 받을 수 있습니다.
-
하위 노드를 닫으려면 다시 버튼을 선택하세요.
-
마우스의 스크롤 기능으로 화면을 확대하거나 축소할 수 있습니다. 또는 화면 왼쪽 위에 + / - 버튼을 클릭하세요.
Caller & Callee 데이터
Caller Callee 데이터 탭에서는 기준 URL(예: /account/save/employee/seoul)에 대한 호출자(Caller)와 피호출자(Callee)의 상관 관계를 표 형식으로 확인할 수 있습니다. 각 트랜잭션의 세부 정보(호출 횟수, 오류 수, 평균 응답 시간 등)를 구체적으로 확인할 수 있어 데이터 기반의 정밀한 분석이 가능합니다.
-
각 트랜잭션의 호출 횟수와 비율, 오류 수, 평균 응답 시간 등을 확인하여 성능 문제를 분석하는데 활용할 수 있습니다.
-
타입 컬럼을 통해서 Caller와 Callee를 쉽게 구분할 수 있으며 호출 관계를 파악할 수 있습니다.
-
각 트랜잭션의 버튼을 선택하면 해당 트랜잭션과 관계된 트랜잭션을 추가로 확인할 수 있습니다.
-
데이터 목록을 CSV 형식으로 저장하려면 오른쪽 위에 CSV 데이터 다운로드 버튼을 선택하세요.
Caller Callee 추이
Caller Callee 추이 탭에서는 기준 URL(/account/save/employee/seoul)의 호출 관계와 성능 데이터를 시간의 흐름에 따라 시각적으로 분석할 수 있습니다. 이를 통해 트랜잭션의 성능 변동 패턴을 파악할 수 있습니다.
-
특정 트랜잭션의 호출 횟수와 비율을 시간대별 그래프로 시각화하여 성능 변화를 한눈에 파악할 수 있습니다.
-
타입 컬럼을 통해서 Caller와 Callee를 쉽게 구분할 수 있으며 호출 관계를 파악할 수 있습니다.
-
시계열 차트에 마우스를 오버하면 툴팁을 통해서 수치 정보를 확인할 수 있습니다.
-
차트의 특정 시간대를 클릭하면 분석 > 트랜잭션 검색 메뉴로 이동합니다. 선택한 시간대의 트랜잭션 목록을 조회할 수 있습니다.