본문으로 건너뛰기

액티브 서비스 분석

실행 중인 트랜잭션을 액티브 서비스라고 합니다. 다음은 액티브 서비스에 대한 분석 예제입니다.

오브젝트 전체 현황

왼쪽에서 오른쪽으로 지나가는 검은색 막대는 트랜잭션을 의미합니다. 모든 오브젝트에서 모니터링 중인 액티브 트랜잭션의 상태를 세가지 속도(파란색/노란색/빨간색)로 구분하여 막대 상단에 각각의 개수를 보여줍니다. 합산된 값은 검은색으로 오른쪽에 조금 큰 숫자로 표기합니다.

트랜잭션의 수행시간이 짧은 순서로 파란색/노란색/빨간색으로 표현하며, 막대가 50개 이상 실행 중인 경우 비율로 표시합니다.

  1. 현재 액티브 서비스 카운트: 파란색(0초-3초), 노란색(3초-8초), 빨간색(8초-)
  2. 현재 액티브 서비스 전체 수
  3. 현재 TPS
  4. 액티브 서비스 막대: 클릭 시 액티브 서비스 조회

오브젝트 조회

액티브 서비스의 상태를 속도(파란색, 노란색, 빨간색)로 분류하고 서비스명과 막대로 보여주어 개별적인 모니터링을 할 수 있습니다.

액티브 서비스의 개수가 증가하면 왼쪽에서 오른쪽으로 막대가 쌓입니다. 막대 오른쪽 위에 적힌 숫자가 실행 중인 스레드의 개수입니다.

  1. 오브젝트 이름: 클릭하면 오브젝트 필터링, 다시 클릭하면 필터링이 해제됩니다.
  2. 액티브 서비스 막대: 파란색(0초-3초), 노란색(3초-8초), 빨간색(8초-), 클릭 시 액티브 서비스 조회

액티브 서비스 보기

액티브 서비스 막대를 클릭하면 실행 중인 트랜잭션에 대한 스레드 정보와 스택 트레이스(StackTrace)를 확인할 수 있습니다.

액티브 서비스란? WAS에 스레드에서 실행 중인 스택 트레이스를 캡처한 내용입니다.

액티브 서비스 목록은 트랜잭션의 응답시간에 따라 파란색/노란색/빨간색으로 구분되어 표현됩니다.

  • 실행 중인 트랜잭션에 대한 스레드 정보

컬럼명설명
오브젝트트랜잭션이 발생한 서버의 오브젝트 이름
블록 개수스레드가 BLOCKED 상태가 된 총 횟수
블록 시간스레드가 BLOCKED 상태가 된 후 경과 시간(밀리초), 스레드 경합 모니터링이 비활성화된 경우 -1 반환
Lock 이름스레드의 입력이 차단되거나 Object.wait 메소드를 통해 통지(Notify)를 기다리는 모니터 잠금을 표시한 문자열
Lock 소유주 ID스레드가 차단된 개체의 모니터(Monitor) 잠금을 유지하는 스레드 ID
수행 시간서비스 실행 시간
URL서비스 호출 이름
트랜잭션 IDFlowKat 서비스 식별자 ID
* 스레드 상태스레드 상태 이름(표 아래 스레드 상태 상세 참고)
스레드 CPU 시간스레드의 CPU 시간 합계(나노초)를 밀리초로 계산하여 표시, CPU 시간 측정을 비활성화한 경우 -1 반환
스레드 이름스레드 고유 이름
스레드 ID스레드에 할당된 고유 ID
스레드 사용자 시간스레드가 사용자 모드에서 실행한 CPU 시간(나노초)을 밀리초로 계산하여 표시
대기 건수스레드가 WAITING 또는 TIMED_WAITING 상태가 된 총 횟수
대기 시간스레드가 WAITING 상태를 지속한 경과 시간(밀리초), 스레드 경합 모니터링이 비활성화된 경우 -1 반환
* 액티브 상태액티브 상태 요약 (표 아래 액티브 상태 상세 참고)
액티브 상세 내용액티브 상세 내용

스레드 상태 상세

  • 스레드 상태: 스레드의 상태는 java.lang.Thread 클래스 내부에 State라는 이름의 열거형으로 선언된 항목들입니다.
    • NEW: 스레드가 생성되었지만 아직 실행되지 않은 상태입니다.
    • RUNNABLE: 현재 CPU를 점유하고 작업을 수행 중인 상태입니다. 운영체제의 자원 분배로 WAITING 상태가 될 수도 있습니다.
    • WAITING: wait(), join(), park() 메소드 등를 이용해 대기하고 있는 상태입니다.
    • TIMED_WAITING: sleep(), wait(), join(), park() 메소드 등을 이용해 대기하고 있는 상태입니다. 주어진 시간 동안 대기하는 상태로 일반적인 WAITING 상태와는 성격이 다릅니다. 외부적인 변화 뿐만 아니라 시간에 의해서도 대기 상태가 해제될 수 있습니다.
    • BLOCKED: 사용하려는 개체의 락(Lock)이 풀릴 때까지 대기하고 있는 상태입니다.
    • TERMINATED: 실행을 마친 상태입니다.

액티브 상태 상세

  • 액티브 상태: SQL,SUBCALL 상태는 현재 외부 호출이 실행 중일 때 표시됩니다. 외부 호출이 없는 경우 단순 스레드 실행 중인 스택 정보를 가져옵니다.

  • SQL: SQL 실행 중

  • 실행 중인 SQL 쿼리문을 확인

  • SUBCALL: http 외부 호출 중

  • 실행 중인 스택 트레이스에 외부 호출이 없는 경우

  • 액티브 서비스 종료 상태

액티브 서비스 종료는 액티브 서비스가 없는 상태의 마지막 트랜잭션 ID를 기준으로 프로파일 스텝을 로드합니다.

액티브 서비스 새로고침 기능

  1. 새로고침
  2. 자동 새로고침: 5초에 1회 자동 새로고침

파란색(0초-3초), 노란색(3초-8초), 빨간색(8초-)

액티브 서비스 컬럼

컬럼명설명
오브젝트인스턴스 이름
URL서비스 URL
수행시간서비스가 소요되고 있는 시간(ms)
클라이언트 IP서비스 요청 중인 IP
스레드 이름트랜잭션이 실행 중인 스레드 이름

시계열 차트 과거 데이터 조회

시계열 차트란? 트랜잭션의 데이터를 시간 경과에 따른 그래프로 표현한 것으로 트랜잭션의 추이를 파악하는 데 유용합니다.

시계열 차트 예시

  • 기간 검색 버튼을 눌러 시간 검색창으로 진입합니다.

기간 검색 버튼 클릭


날짜 검색 조건 설정

검색 조건의 기준은 현재 시각입니다.

검색 시작 일자와 시각을 설정합니다.

검색 종료 일자와 시각을 설정합니다.

날짜 검색 조건 상세

시간설명예시
5분전종료 시간은 현재 시간으로 설정되고 초는 00초로 초기화됩니다. 시작 시간은 현재 시간의 5분 전으로 입력합니다. 데이터 조회는 2초 간격으로 할 수 있습니다.수집 서버 시간: 2024-05-18 00:11:21
시작: 2024-05-18 00:06:00 종료: 2024-05-18 00:11:00
10분전종료 시간은 현재 시간으로 설정되고 초는 00초로 초기화됩니다. 시작 시간은 현재 시간의 10분 전으로 입력합니다. 데이터 조회는 2초 간격으로 할 수 있습니다.수집 서버 시간: 2024-05-18 00:11:21
시작: 2024-05-18 00:01:00 종료: 2024-05-18 00:11:00
30분전종료 시간은 현재 시간으로 설정되고 초는 00초로 초기화됩니다. 시작 시간은 현재 시간의 30분 전으로 입력합니다. 데이터 조회는 2초 간격으로 할 수 있습니다.수집 서버 시간: 2024-05-18 00:11:21
시작: 2024-05-17 00:41:00 종료: 2024-05-18 00:11:00
1시간전종료 시간은 현재 시간으로 설정되고 초는 00초로 초기화됩니다. 시작 시간은 현재 시간의 1시간 전으로 입력합니다. 데이터 조회는 2초 간격으로 할 수 있습니다.수집 서버 시간: 2024-05-18 00:11:21
시작: 2024-05-17 23:11:00 종료: 2024-05-18 00:11:00
6시간전종료 시간은 현재 시간으로 설정되고 초는 00초로 초기화됩니다. 시작 시간은 현재 시간의 6시간 전으로 입력합니다. 데이터 조회는 5분 간격으로 할 수 있습니다.수집 서버 시간: 2024-05-18 00:11:21
시작: 2024-05-17 18:11:00 종료: 2024-05-18 00:11:00
12시간전종료 시간은 현재 시간으로 설정되고 초는 00초로 초기화됩니다. 시작 시간은 현재 시간의 12시간 전으로 입력합니다. 데이터 조회는 5분 간격으로 할 수 있습니다.수집 서버 시간: 2024-05-18 00:11:21
시작: 2024-05-17 12:11:00 종료: 2024-05-18 00:11:00
오늘오늘을 기준으로 시작 시간과 종료 시간을 입력합니다. 데이터 조회는 5분 간격으로 할 수 있습니다.수집 서버 시간: 2024-05-18 00:11:21
시작: 2024-05-18 00:00:00 종료: 2024-05-18 23:59:59
어제어제를 기준으로 시작 시간과 종료 시간을 입력합니다. 데이터 조회는 5분 간격으로 할 수 있습니다.수집 서버 시간: 2024-05-18 00:11:21
시작: 2024-05-17 00:00:00 종료: 2024-05-17 23:59:59
이번주오늘을 기준으로 이번주 월~일요일을 시작 일자와 마지막 일자를 입력합니다. 데이터 조회는 5분 간격으로 할 수 있습니다.수집 서버 시간: 2024-05-18 00:11:21
시작: 2024-05-13 00:00:00 종료: 2024-05-19 23:59:59
지난주오늘을 기준으로 지난주 월~일요일을 시작 일자와 마지막 일자를 입력합니다. 데이터 조회는 5분 간격으로 할 수 있습니다.수집 서버 시간: 2024-05-18 00:11:21
시작: 2024-05-06 00:00:00 종료: 2024-05-12 23:59:59
이번달오늘이 포함된 월을 기준으로 시작 일자와 마지막 일자를 입력합니다. 데이터 조회는 5분 간격으로 할 수 있습니다.수집 서버 시간: 2024-05-18 00:11:21
시작: 2024-05-01 00:00:00 종료: 2024-05-31 23:59:59
지난달오늘이 포함된 전월을 기준으로 시작 일자와 마지막 일자를 입력합니다. 데이터 조회는 5분 간격으로 할 수 있습니다.수집 서버 시간: 2024-05-18 00:11:21
시작: 2024-04-01 00:00:00 종료: 2024-04-30 23:59:59

6시간 이내 데이터 조회 시 2초 간격으로 볼 수 있고, 6시간 이상~수개월 데이터 조회 시 5분 간격으로 볼 수 있습니다.

조회 범위 초과

시작 시간은 종료 시간보다 클 수 없으며 조회 구간은 최소 5분~최대 31일입니다.

설정한 조회 기간 데이터 확인

  1. 취소: 기간 검색 영역을 누르면 기간 검색이 취소되고 실시간 모니터링으로 변경됩니다.
  2. 차트창 최대화

차트창 최대화

차트 최대화 상태에서는 색상별로 오브젝트가 활성화되며 각각의 이름을 클릭하여 제외할 수 있습니다.

  1. 오브젝트
  2. 차트 확대
  3. 뒤로 가기
  4. 처음으로
  5. 차트 화면 캡처 다운로드
  6. 차트 시간 범위 변경
  7. 기간 검색: 기간 취소 버튼을 클릭하면 차트 시간 범위 변경 막대가 사라지고 실시간 차트로 변경
  8. 편집: 최대화 상태에서 편집 버튼을 클릭하면 차트가 원래 형태로 변경

검색 기간 기능 사용 중 제약 사항

기간 검색 사용 중에는 다른 차트를 삽입할 수 없습니다.

기간 검색 상태에서 성능 지표 추가

성능 지표 추가 실패