인스턴스 모니터링
홈 화면 > 프로젝트 선택 > 대시보드 > 인스턴스 모니터링
인스턴스 모니터링 메뉴에서는 데이터베이스 서버의 핵심 지표와 액티브 세션에 대한 상세 정보를 실시간으로 모니터링하고 문제가 될 수 있는 경고들을 확인할 수 있습니다. 기본적으로 지난 10분간의 수집 데이터를 실시간으로 조회합니다. 수집 데이터는 5초 간격으로 갱신합니다.
기본 화면 안내
기본적으로 지난 10분간의 수집 데이터를 실시간으로 조회합니다. 시간과 인스턴스 항목에서 원하는 시간과 대상을 선택하면 수집 데이터가 그래프 차트와 액티브 세션 테이블에 자동 반영됩니다. 과거 데이터를 조회하려면 시간에서 녹색 버튼을 클릭한 다음 원하는 조회 시간을 선택하세요. 최대 지난 3주까지의 데이터를 조회할 수 있습니다. 임의의 날짜와 시간을 조회하려면 시간에서 버튼을 선택하세요. 날짜와 시간 텍스트 영역을 클릭하면 날짜와 시간을 선택할 수 있는 옵션이 나타납니다. 다시 실시간으로 데이터를 조회하려면 버튼을 선택하세요. 다른 에이전트의 데이터를 조회하려면 인스턴스를 클릭한 다음 원하는 에이전트 이름을 선택하세요. Default 프리셋으로 저장한 16가지 지표를 그래프 차트 형식의 위젯으로 표시합니다. 가로축은 시간, 세로축은 각 지표의 수치입니다. 각 지표의 의미를 알고 싶다면 이름 옆에 버튼을 선택하거나 다음 문서를 참조하세요. 다른 위젯과 위치를 변경하려면 위젯의 윗 부분을 선택한 상태에서 드래그하세요. 단 위젯의 크기는 변경할 수 없습니다. 위젯에서 차트의 특정 시간을 선택하면 실시간 조회 모드를 중지하고 선택한 시간에 수행한 세션 정보를 액티브 세션 테이블에 표시합니다. 이후 액티브 세션 테이블 위에는 5초 단위로 데이터를 조회할 수 있는 버튼이 나타납니다. 선택한 시간은 액티브 세션 테이블 오른쪽 위에서 확인할 수 있습니다. 액티브 세션 테이블 목록에 글자 색상은 검정색 → 주황색 → 빨간색 순으로 세션의 수행 속도가 느린 것을 의미합니다. 실시간 수행 중인 액티브 세션 및 락 트리, 프로세스 정보를 조회할 수 있습니다. 위젯에서 차트의 특정 시간을 선택하면 실시간 조회 모드를 중지하고 선택한 시간에 수행한 세션 정보를 테이블에 표시합니다. 테이블 위에 5초 단위로 데이터를 조회할 수 있는 시간 선택 버튼이 나타납니다. 조회 시간 및 대상 선택하기
그래프 차트 섹션
액티브 세션 / 락 트리 / 프로세스 정보
-
액티브 세션: 실시간 수행 중인 세션과 쿼리 내용을 조회할 수 있습니다.
-
락 트리
락 세션에 대한 정보와 Holder, Waiter 정보를 실시간으로 조회할 수 있습니다. 테이블의 컬럼에 대한 자세한 내용은 다음 문서를 참조하세요.
-
프로세스 정보
데이터베이스 서버의 자원 사용량을 실시간으로 조회할 수 있습니다.
연계 프로젝트를 추가하면 액티브 세션 테이블에서 액티브 세션과 연동된 애플리케이션 액티브 트랜잭션의 상세 정보를 실시간으로 확인할 수 있습니다. 연계 프로젝트 추가 및 활용에 대한 자세한 내용은 다음 문서를 참조하세요.
테이블 목록에 글자 색상은 검정색 → 주황색 → 빨간색 순으로 세션의 수행 속도가 느린 것을 의미합니다.
지표 선택하기
위젯에 지표 그래프를 추가하거나 교체하려면 위젯의 오른쪽 위에 버튼을 선택하세요. 메트릭스 선택 창이 나타납니다. 원하는 설정을 완료한 다음 저장 버튼을 선택하세요.
-
미리보기: 선택한 지표에 대한 그래프를 미리 볼 수 있습니다.
-
제목: 위젯의 이름을 입력하세요.
-
현재 선택한 위젯의 차트로 표시되는 지표 항목이 표시됩니다. 최대 4개의 지표를 선택할 수 있습니다.
노트지표 항목의 오른쪽에 버튼을 선택하면 해당 지표를 기준으로 경고 알림을 설정할 수 있는 이벤트 설정
New
메뉴로 이동할 수 있습니다. -
추천 메트릭스 / 모든 메트릭스: 추천 메트릭스를 선택하면 데이터베이스 모니터링에서 자주보는 지표를 목록으로 표시합니다. 목록에 표시된 지표를 위젯의 지표로 변경하거나 추가할 수 있습니다.
-
영역에서 지표의 추이를 그래프로 확인하고 위젯을 추가하거나 변경할 수도 있습니다. 원하는 탭을 선택해 카테고리에 따라 지표 목록을 간추릴 수 있습니다.
지표 추가하기
하나의 위젯에 두 가지 이상의 지표를 추가할 수 있습니다. 최대 4개까지 추가할 수 있습니다.
-
지표를 추가할 위젯의 오른쪽 위에 버튼을 선택하세요.
-
Meric Select 창이 나타나면 메트릭스 목록 또는 그래프 목록에서 추가할 지표의 오른쪽에 버튼을 선택하세요.
-
지표를 더 추가하려면 2의 과정을 반복하세요.
-
위젯을 쉽게 식별할 수 있도록 제목을 변경하세요.
-
화면 오른쪽 아래에 저장 버튼을 선택하세요.
지표를 추가한 위젯에 추가한 지표의 수만큼 차트가 생성됩니다. 위젯의 이름 옆에 위치한 버튼을 선택하면 추가한 지표의 이름과 내용을 확인할 수 있습니다. 또한 차트 위로 마우스를 오버하면 툴팁을 통해 수치를 확인할 수 있습니다.
버튼의 툴팁 기능은 다국어에서 지원하지 않습니다.
지표 변경하기
위젯의 지표를 다른 지표로 변경할 수 있습니다.
-
지표를 변경할 위젯의 오른쪽 위에 버튼을 선택하세요.
-
Meric Select 창이 나타나면 영역에서 변경하려는 지표를 선택하세요.
-
메트릭스 목록 또는 그래프 목록에서 원하는 지표를 선택하세요.
-
영역에서 선택한 지표의 이름이 변경된 것을 확인하세요.
-
화면 오른쪽 아래에 저장 버튼을 선택하세요.
지표 삭제하기
위젯에 여러 개의 지표를 설정한 상태에서 불필요한 지표를 삭제할 수 있습니다.
-
지표를 삭제할 위젯의 오른쪽에 위에 버튼을 선택하세요.
-
Meric Select 창이 나타나면 영역에서 삭제하려는 지표의 오른쪽에 버튼을 선택하세요.
-
화면 오른쪽 아래에 저장 버튼을 선택하세요.
하나의 위젯에는 적어도 하나의 지표가 선택되어야 합니다. 위젯의 모든 지표를 삭제할 수는 없습니다.
프리셋
사용자가 설정한 위젯의 설정과 액티브 세션 테이블의 정렬 상태를 프리셋으로 저장하고 불러올 수 있습니다. Default 프리셋은 변경할 수 없습니다.
프리셋 저장하기
-
위젯의 지표를 추가 또는 변경하세요.
-
화면 오른쪽 위에 버튼을 선택하세요.
-
프리셋 저장하기에서 이름을 변경한 다음 저장 버튼을 선택하세요.
프리셋 목록에서 저장한 항목을 선택해 설정을 불러올 수 있습니다.
-
Default 프리셋은 수정할 수 없습니다.
-
사용자 정의 프리셋은 최대 5개까지 생성할 수 있습니다. 변경한 지표 그래프뿐만 아니라 액티브 세션의 컬럼 순서, 컬럼 폭, 필터 적용 내용들도 함께 적용됩니다.
프리셋 삭제하기
화면 오른쪽 위에 프리셋을 선택하면 프리셋 목록이 나타납니다. 삭제하려는 프리셋 항목의 오른쪽에 버튼을 선택하세요.
액티브 세션 섹션 활용하기
화면 아래에 위치한 액티브 세션 섹션을 통해 실시간 수행 중인 세션 정보를 확인할 수 있습니다. 다음은 테이블 오른쪽 위에 버튼에 대한 기능 안내입니다.
- : 테이블의 컬럼 헤더 항목을 기준으로 목록을 필터링할 수 있습니다.
-
: 테이블의 목록을 새로 고침할 수 있습니다.
-
: 테이블의 컬럼 헤더 항목을 표시하거나 숨길 수 있습니다.
-
: 현재 진행 중인 세션을 중지할 수 있습니다.
노트이 기능은 수정 권한이 있는 멤버만 이용할 수 있습니다. 멤버 권한에 대한 자세한 설명은 다음 문서를 참조하세요.
-
: 테이블의 내용을 CSV 파일로 다운로드할 수 있습니다.
-
: 새창으로 열어 더 큰 화면으로 목록을 확인할 수 있습니다.
SQL 통계 확인하기
과거 특정 시간 동안에 발생한 주요 성능 지표 추이와 함께 해당 시간 동안의 Top SQL 목록을 조회할 수 있습니다
-
시간에서 버튼을 선택해 실시간 모드에서 비실시간 모드로 전환하세요.
-
시간에서 조회하길 원하는 시간대를 설정하세요.
-
액티브 세션 영역의 오른쪽 위에 SQL 통계 버튼을 선택하세요.
새창과 함께 SQL 통계 메뉴로 이동합니다. 인스턴스 모니터링 메뉴에서 설정한 시간 동안 실행된 Top SQL 목록을 확인할 수 있습니다. SQL 통계에 대한 자세한 내용은 다음 문서를 참조하세요.
세션 상세 정보 확인하기
액티브 세션 탭에서 세션 항목을 선택하면 세션 상세 정보 창이 나타납니다. 선택한 세션에 대한 자세한 내용을 확인할 수 있습니다.
-
세션에 대한 정보는 기본값으로 실시간 조회되고 있습니다. 시간 선택자에서 버튼을 선택하면 실시간 조회를 중지하고, 중지한 시간 기준의 데이터를 확인할 수 있습니다. 실시간 조회를 중지한 상태에서 데이터를 갱신하려면 버튼을 선택하세요.
-
Kill Session: 선택한 세션을 중지할 수 있습니다. 세션 킬 창이 나타나면 비밀번호(Parameter Key) 값을 입력한 다음 적용 버튼을 선택하세요.
노트실시간 조회 모드에서만 이 기능을 이용할 수 있습니다.
-
세션 히스토리: 선택한 세션 기록을 확인할 수 있는 세션 히스토리 메뉴로 이동할 수 있습니다.
노트세션 히스토리 메뉴에 대한 자세한 내용은 다음 문서를 참조하세요.
-
Session Stat: 선택한 세션의 다양한 성능 지표 및 통계 정보를 제공합니다. 세션에서 수행된 작업의 유형과 횟수, 리소스 사용량 등을 포함합니다.
-
Delta / Sigma: 선택한 세션의 변화율과 통계적 분석 정보를 제공합니다. 세션의 활동에 대한 변화량을 확인할 수 있습니다.
- Session Info: 선택한 세션에 대한 기본 정보와 상태가 포함된 상세 내용을 확인할 수 있습니다.
-
Wait Info: 선택한 세션의 대기 이벤트 및 대기 시간 정보를 제공합니다. 특정 작업을 실행하기 위해 데이터베이스 시스템에서 대기할 때 발생하는 대기 이벤트에 대한 정보도 확인할 수 있습니다.
-
SQL Text / Plan: 선택한 세션의 SQL 쿼리 문과 Plan 정보를 확인할 수 있습니다. 자세한 내용은 다음 문서를 참조하세요.
쿼리 자세히 보기
현재 수행 중인 세션의 SQL 쿼리 정보를 확인하려면 액티브 세션 섹션의 query(또는 sql_text) 컬럼 항목을 선택하세요. SQL 상세 창이 나타납니다. SQL 쿼리문과 Plan 정보를 확인할 수 있습니다.
- SQL 통계 보기: 해당 SQL 쿼리문과 관련한 통계 정보를 확인할 수 있는 SQL 통계 메뉴로 이동할 수 있습니다.
-
Runtime Plan: 선택된 SQL 쿼리의 실행 계획과 런타임 정보를 제공합니다. 실행 횟수, 평균 실행 시간, 평균 물리적 읽기 등 세부 정보를 제공합니다.
-
Explain Plan: 옵티마이저가 예측한 실행 계획을 보여줍니다. 비용, 작업, 객체 이름, 카디널리티 등의 정보를 제공합니다.
-
Plan History: 데이터베이스에서 실행된 SQL 쿼리의 실행 계획에 대한 이력을 확인할 수 있습니다.
-
Bind Capture: 데이터베이스에서 실행된 SQL 쿼리에 사용된 바인드 변수의 값을 확인할 수 있습니다. 이를 통해 쿼리 실행의 실제 내용을 확인할 수 있습니다.
노트실시간 실행된 bind 값이 아닌 데이터베이스에 캡처된 값(
v$sql_bind_capture
)입니다. 건수가 많으면 100개까지 표시합니다.
연계 프로젝트 확인하기
연계 프로젝트 관리 메뉴에서 다른 애플리케이션 프로젝트를 추가하면, 액티브 세션 항목에 버튼이 추가됩니다.
버튼을 선택하면 나타나는 연계 분석 창을 통해서 사용자는 액티브 세션과 연동된 애플리케이션의 액티브 트랜잭션 정보를 실시간으로 확인할 수 있습니다. 트랜잭션 URL 및 데이터베이스 연결 정보, DB 타입, HTTP 메서드, 실행 시간 등의 기본 정보와 함께 트랜잭션 ID, 스레드 ID, 클라이언트 IP, CPU 사용 시간과 같은 구체적인 지표를 확인할 수 있습니다. 또한, SQL 쿼리 실행 시간, 호출된 SQL 개수, DB 연결 시간 등도 모니터링할 수 있어 시스템의 성능을 종합적으로 분석할 수 있습니다.
특히, 스택 트레이스를 통한 콜 스택(Call stack) 정보와 SQL 쿼리를 함께 제공하여 문제 발생 시 상세한 원인을 추적하고 해결하는 데 도움이 됩니다. 이를 통해 애플리케이션과 데이터베이스 간의 상호작용을 심층적으로 분석하고 성능 병목 현상을 신속히 진단할 수 있습니다.
연계 프로젝트 추가 및 활용에 대한 자세한 내용은 다음 문서를 참조하세요.
진행 중인 세션 중지하기
-
테이블의 오른쪽 위에 버튼을 선택하세요.
-
테이블 목록에서 중지시킬 세션을 선택하세요. 다중 선택 선택할 수 있습니다.
-
정지 버튼을 선택하세요.
-
세션 킬 창이 나타나면 비밀번호(Parameter Key) 값을 입력하세요.
-
적용 버튼을 선택하세요.
선택한 세션이 중지됩니다.
-
DBX 에이전트 설치 경로의 paramkey.txt 파일에서 비밀번호를 확인할 수 있습니다.
-
이 기능은 수정 권한이 있는 멤버만 이용할 수 있습니다. 멤버 권한에 대한 자세한 설명은 다음 문서를 참조하세요.
그래프 차트 섹션 확대하기
현재 보고 있는 화면이 작아 위젯을 확인하기 어렵다면 더 넓은 화면에서 그래프 차트 위젯을 확인할 수 있습니다. 화면 하단에 액티브 세션 섹션의 버튼을 선택하세요. 액티브 세션 섹션은 축소되고 그래프 차트 위젯 섹션은 확대됩니다.
그래프 차트 위젯 섹션을 축소하려면 화면 하단에 액티브 세션 섹션의 버튼을 선택하세요.
테이블 컬럼 설정하기
테이블 헤더 컬럼을 감추거나 원하는 항목을 추가할 수 있습니다. 컬럼 순서를 변경할 수도 있습니다. 버튼을 선택하세요.
-
설정을 완료한 다음에는 확인 버튼을 선택해야 설정 사항이 테이블에 반영됩니다.
-
검색란에 텍스트를 입력해 원하는 컬럼 항목을 검색할 수 있습니다. 입력한 텍스트와 매칭되는 컬럼 항목만 표시됩니다.
-
이미지는 상품 또는 프로젝트, 메뉴에 따라 다를 수 있습니다.
컬럼 추가하기
목록에서 테이블 헤더 컬럼으로 추가할 항목을 선택하세요. 모든 항목을 추가하려면 전체 선택을 선택하세요.
컬럼 삭제하기
목록에서 삭제할 컬럼 항목의 체크 박스를 선택 해제하세요. 또는 목록에서 삭제할 항목의 오른쪽에 버튼을 선택하세요.
컬럼 순서 변경하기
목록에 순서를 변경할 항목을 드래그해서 원하는 위치로 이동할 수 있습니다.
설정 사항 초기화하기
변경 사항은 모두 취소하고 초기화하려면 초기화 버튼을 선택하세요.
테이블 데이터 필터링하기
-
테이블의 오른쪽 위에 버튼을 선택하세요.
-
테이블의 컬럼 헤더 항목과 조건을 선택하세요.
-
조건 입력 텍스트 상자에 원하는 값을 입력하세요.
-
저장 버튼을 선택하세요.
컬럼 정보 안내
컬럼 정보에 대한 보다 자세한 내용은 다음 링크를 참조하세요.
항목 | 설명 |
---|---|
sid | 세션의 id |
cpu(xos) | XOS를 설치한 경우 수집되는 CPU 사용율 |
serial# | 동일한 세션 id를 사용한경우 판별하기 위해 증가시키는 값 |
username | db 사용자 이름 |
command | COMMAND_TYPE 과 동일, SQL command number |
status | 세션 상태 |
schemaname | 스키마, username과 동일 |
osuser | 세션에 접속한 운영체제의 사용자 이름 |
spid | 운영체제 프로세스 식별자 |
process | 세션에 접속한 클라이언트 프로세스 id |
logon_time | 세션이 생긴 시점 |
last_call_et | 세션이 활성화 상태인 경우, 활성 상태가 된 후 경과된 시간(초) |
sql_text | query , 실행되고 있는 statement, 리터럴 문자열을 분리한 SQL 문 |
sql_param | query 에서 분리한 리터럴 값 |
prev_sql_text | 이전에 실행한 query |
prev_sql_param | 이전에 실행한 query param |
program | 클라이언트에서 실행한 프로그램 정보 |
type | session type - user background recursive (whatap.conf)에서 조정 가능 |
seq# | 현재 또는 마지막 대기를 고유하게 식별하는 숫자(대기할 때마다 증가) |
event | 세션이 대기 중인 경우 세션이 대기 중인 리소스 또는 이벤트의 번호 |
p1 | 첫 번째 대기 이벤트 파라미터(소수점) |
p2 | 두 번째 대기 이벤트 파라미터(소수점) |
p3 | 세 번째 대기 이벤트 파라미터(소수점) |
wait_class | 대기 중인 이벤트의 클래스 이름 |
wait_time | 세션이 현재 대기 중이면 값은 0 , 0 보다 큰 경우 마지막 대기 시간(milliseconds) |
seconds_in_wait | 세션이 현재 대기 중인 경우 대기를 위해 대기한 시간, 세션이 대기 중이 아니라면 마지막 대기 시작 이후의 시간 |
state | 대기 상태, WAITING , WAITED UNKNOWN TIME , WAITED SHORT TIME , WAITED KNOWN TIME |
machine | 세션에 접속한 클라이언트 서버 이름(hostname) |
port | 클라이언트 포트 숫자 |
terminal | 클라이언트 터미널 이름 |
module | 클라이언트에서 실행한 프로그램에서 사용자가 설정한 모듈(module)의 이름 |
action | 현재 수행되고 있는 모듈의 사용자가 설정한 액션 이름 |
client_info | 사용자가 설정한 클라이언트 정보 |
client_identifier | 사용자가 설정한 클라이언트 식별자 |
session logical reads | 데이터를 버퍼 캐시 내에서 읽은 횟수 |
physical reads | 데이터를 물리 디스크에서 읽은 횟수 |
excute count | SQL의 실행 개수 |
parse count (hard) | 총 구분 문석 호출 수(실제 구문 분석) |
parse count (total) | 총 구문 분석 호출 수(hard, soft, describe) |
opened cursors current | 현재 열려있는 cursor의 개수 |
db block changes | 데이터베이스 내 모든 블록의 변경 횟수 |
session pga memory | 세션의 현재 PGA 크기(size) |
undo_segid | undo 정보 id |
undo_blk | undo 블록 개수 |
undo_rec | undo 레코드 개수 |
sql_address | SQL 문(statement)을 식별하는 정보 |
sql_hash_value | SQL 문(statement)을 식별하는 정보 |
sql_id | 현재 실행 중인 SQL 문(statement)의 SQL 식별자 |
sql_child_number | 현재 실행 중인 SQL 문(statement)의 하위 번호 |
sql_exec_start | 해당 세션에서 현재 실행 중인 SQL 실행이 시작 시점 |
sql_exec_id | SQL 실행 식별자 |
prev_sql_addr | 마지막으로 실행된 SQL 문(statement)을 식별하는 정보 |
prev_child_number | 마지막으로 실행된 SQL 문(statement)의 하위 번호 |
prev_exec_start | 마지막으로 실행된 SQL 문(statement)의 SQL 실행 시작 시점 |
prev_exec_id | 마지막으로 실행된 SQL 문(statement)의 SQL 실행 식별 id |
plsql_entry_object_id | 스택에서 가장 위에 있는 PL/SQL 하위 프로그램의 객체 id |
plsql_entry_subprogram_id | 스택에서 가장 위에 있는 PL/SQL 서브 프로그램의 서브 프로그램 id |
plsql_object_id | 현재 실행 중인 PL/SQL 개체의 서브 프로그램 id |
taddr | 트랜잭션의 주소(address) |
lockwait | lock wait address, 세션이 대기 중인 락 주소 |
row_wait_obj | ROW_WAIT_ROW# 에 지정된 행이 포함된 테이블의 개체 ID |
row_wait_file | ROW_WAIT_ROW# 에 지정된 행이 포함된 데이터 파일의 식별자 |
row_wait_block | ROW_WAIT_ROW# 에 지정된 행이 포함된 블록의 식별자 |
row_wait_row | 현재 잠긴 행 |
pdml_status | 값이 ENABLED 인 경우 세션이 PARALLEL DML 활성화 모드입니다. 값이 DISABLE 인 경우 세션에서 PARALLE DML 활성화 모드를 지원하지 않습니다. 값이 FORCED 인 경우 세션이 PARALLE DML 을 강제로 사용하도록 변경된 것입니다. |
pq_status | 값이 ENABLED 인 경우 세션이 PARALLEL QUERY 활성화 모드입니다. 값이 DISABLE 인 경우 세션에서 PARALLEL QUERY 활성화 모드를 지원하지 않습니다. 값이 FORCED 인 경우 세션이 PARALLEL QUERY 을 강제로 사용하도록 변경된 것입니다. |
blocking_session_status | 차단 세션이 있는지 여부에 대한 세부 정보를 제공 |
blocking_instance | 차단 세션에 대한 인스턴스 식별자 |
blocking_session | 차단 세션의 세션 식별자 |
final_blocking_session_status | 최종 차단 세션이 있는지 여부에 대한 세부 정보를 제공 |
final_blocking_instance | 최종 차단 세션에 대한 인스턴스 식별자 |
final_blocking_session | 최종 차단 세션의 세션 식별자 |
service_name | 해당 세션의 서비스 이름, DB 이름과 유사 |
saddr | 세션 주소 |
con_id | 데이터와 관련한 컨테이너의 id (멀티 데이터베이스를 지원하는 경우에만 해당) |
rss(xos) | XOS 에이전트에서 수집하는 OS 지표 |
pss(xos) | XOS 에이전트에서 수집하는 OS 지표 |
ioread(xos) | XOS 에이전트에서 수집하는 OS 지표 |
iowrite(xos) | XOS 에이전트에서 수집하는 OS 지표 |
와탭은 클라이언트와 관련한 정보를 기본 저장합니다.