Skip to main content

PostgreSQL

다수의 PostgreSQL 서버를 모니터링 할 수 있는 화면입니다. 하나의 데이터베이스가 선택되면 Overview, Session, Core 6 등 선택된 데이터베이스의 데이터만으로 변경되어 단일 데이터베이스에 대한 집중적인 모니터링이 가능합니다. 상단 브레드 크럼을 이용하여 폴더 변경이 가능합니다. Multi View는 Instance 관점에서의 모니터링 화면으로, 각 Instance 레벨의 지표 및 각 Instance의 내부 Database 지표의 합산값을 모니터링 할 수 있습니다.

1) Overview 폴더에 속한 인스턴스의 CPU, Memory, 주요 성능 지표를 함께 확인할 수 있습니다. 목록에서 인스턴스 클릭 시 선택한 인스턴스가 하이라이트 되며, 다른 지표들도 선택한 인스턴스의 데이터를 하이라이트로 볼 수 있습니다.


2) DB Session Type Active Session, Long Session, Lock Session을 색상으로 구분하여 실시간으로 각 Session 상태의 Count를 확인할 수 있습니다.


3) Rank 주요 성능 6가지를 선별하여 직관적인 모니터링이 가능합니다. 타이틀 클릭 시 인스턴스 별 순위, 등록된 인스턴스들의 성능 데이터를 비교하여 인스턴스 별 비율과 10분 추이를 확인할 수 있습니다.

3-1) Vacuum Usage(%) Vacuum age 사용률을 보여줍니다. 인스턴스 클릭 시 Dead Tuple 수가 높은 Object를 확인할 수 있는 ‘Top 10 Object List’ 팝업창으로 연계됩니다. ● Grid

순번항목내용
1Rank순위
2Database NameDatabase 이름
3Schema NameSchema 이름
4Object NameObject 이름
5Object TypeObject Type
6Total Size총 Block 크기
7Diff Size10분 동안의 Block 크기 변화량
8Age10분 동안의 Age 변화량
Order By 선택 지표 값에 따라 그리드에 표현되는 데이터 달라집니다.
정렬 기준: Scan Count, Scan Ratio, Age, Dead Tuple, Analyze Time

3-2) Temp Usage (Size) Temp의 현재 사용량을 보여줍니다. 인스턴스 클릭 시 Temp 사용량이 높은 SQL을 확인할 수 있는 ‘Top 10 SQL Order by Temp Blocks Written’ 팝업창으로 연계됩니다. ● Grid

순번항목내용
1Rank순위
2User Name사용자 이름
3Database NameDatabase 이름
4Query IDSQL ID
5SQL Text실행 쿼리 Text
6Calls호출 횟수
7Temp Blocks Written10분 동안의 명령문에서 쓴 총 임시 블록 수 변화량

3-3) Filesystem Usage (Size) Object 디스크 사용량을 보여줍니다. 인스턴스 클릭 시 크기가 큰 Object를 확인할 수 있는 ‘Filesystm Usage’ 팝업창으로 연계됩니다. ● Grid

순번항목내용
1Rank순위
2Database NameDatabase 이름
3Schema NameSchema 이름
4Object NameObject 이름
5Object TypeObject 유형(Table, Index)
6Total SizeObject 총 크기
7Diff Size10분 동안의 Object 총 크기 변화량

3-4) Query IO (%) Shared Buffer의 데이터를 쓰는 비율을 보여줍니다. 인스턴스 클릭 시 Shared Block Read 사용이 높은 SQL을 확인할 수 있는 ‘Top 10 SQL Order by Shared Block Read’ 팝업창으로 연계됩니다. ● Grid

순번항목내용
1Rank순위
2User Name쿼리를 실행했던 사용자 이름
3Database NameDatabase 이름
4Query IDQuery ID
5SQL Text수행된 쿼리 Text
6Calls실행 횟수
7Elapsed Time수행 시간
8Shared Blocks Hits명령문에 의한 총 Shared Block 캐시 Hit 수
9Shared Blocks Read명령문에서 읽은 총 Shared Block 수

3-5) Transaction Time (Time) 트랜잭션이 실행된 시간이 긴 세션을 보여줍니다. 인스턴스 클릭 시 Session 정보를 자세히 확인할 수 있는 ‘Session Detail’ 팝업창으로 연계됩니다.


3-6) Alert 인스턴스에서 발생한 Alert을 Level, Type 별로 보여줍니다.


4) Real Time Monitor 활동성 및 지연에 관한 지표들을 이용하여 Chart 형식의 모니터링을 할 수 있습니다. 기본적으로 4개의 주요 성능 지표에 대한 모니터링이 가능하며, 시스템 및 업무 특성에 따라 원하는 성능 지표로 변경 및 확장이 가능합니다.

4-1) Slow Query SQL의 수행시간을 Scatter 차트로 확인할 수 있습니다. 등록된 인스턴스들의 Slow Query를 확인하거나 특정 인스턴스를 선택해서 확인할 수 있습니다. 를 선택하면 ‘Slow Query Option’ 팝업창이 뜨고 Max Value 값과 점의 크기를 변경할 수 있습니다.

순번항목내용
1Set Max ValueSlow Query 차트에 표시할 Query최대 수행 시간입니다.
Set Max Value 옵션 설정 시 설정된 값으로 차트를 그립니다.
Slow Query 타이틀 영역에서는 Max 값이 넘는 Query 수와 Slow Query 중 가장 수행시간이 긴 Query의 시간을 확인할 수 있습니다.
Set Max Value 옵션을 설정하지 않은 경우 Slow Query 중 수행시간이 긴 Query 의 시간을 Max값으로 차트를 그립니다.
2Set Dot SizeSlow Query 차트를 그릴 점의 크기를 1~5 크기로 설정할 수 있습니다.

Slow Query 점을 드래그 하면 ‘SQL Elapsed List’ 팝업창이 나타나며 드래그 영역에 수집된 SQL 목록을 확인할 수 있습니다. ● Grid

순번항목내용
1Instance NameBackend가 수행된 인스턴스 이름
2PIDBackend 프로세스 ID
3User NameBackend에 로그인한 사용자 이름
4Database NameBackend가 수행된 데이터베이스 이름
3App NameBackend에 연결된 애플리케이션 이름
4Client AddressBackend에 연결된 클라이언트 IP주소 (이 필드가 null이면 클라이언트가 서버 시스템의 unix 소켓을 통해 연결되었거나 이것이 autovacuum과 같은 내부 프로세스임을 나타냅니다.)
5Client Host NameBackend에 연결된 클라이언트의 호스트 이름
7Elapsed Time (sec)수행 시간 (초)
8SQL Text수행 쿼리 Text

4-2) Trend Chart 데이터베이스의 활동성 및 지연에 관한 지표들을 이용하여 Chart 형식의 모니터링 화면을 제공합니다. 기본적으로 4개의 주요 성능 지표에 대한 모니터링이 가능하며, 시스템 및 업무 특성에 따라 원하는 성능지표로 변경 및 확장이 가능합니다. 를 클릭하여 지표를 변경할 수 있습니다. ‘Stat Change’ 팝업창에서 지표를 변경합니다.


11) Session Tab Multi View 화면 하단 Session Tab 버튼을 클릭하면 슬라이드 아웃 형태로 Backend 목록을 확인할 수 있습니다. Overveiw나 Trend Chart를 통해 데이터베이스의 비정상적인 상태를 인지했을 때, Session Tab에서 현재 SQL을 실행하고 있는 Active Backends, Lock Backends 정보를 확인하여 원인이 되는 Backends를 찾을 수 있고, 필요하다면 강제로 종료할 수 있습니다.

11-1) Active Backends 현재 실행중인 Backends 목록을 확인할 수 있습니다. 멀티 데이터베이스 모니터링을 지원하며 우측 상단에서 원하는 인스턴스만 모니터링이 가능하도록 선택할 수 있습니다. ● Grid

순번항목내용
1PIDBackend 프로세스 ID
2User NameBackend에 로그인 한 사용자 이름
3Database NameBackend가 수행된 Database 이름
4App NameBackend에 연결된 애플리케이션 이름
5Client AddressBackend에 연결된 클라이언트 IP 주소 (이 필드가 null이면 클라이언트가 서버 시스템의 unix 소켓을 통해 연결되었거나 이것이 autovacuum과 같은 내부 프로세스임을 나타냅니다.)
6Client Host NameBackend에 연결된 클라이언트 호스트 이름
7Backend StartBackend 시작 시간
8Elapsed Time (sec)수행 시간 (초)
9SQL IDSQL ID
10Query IDQuery ID
11SQL Text수행 쿼리 Text
12Wait EventBackend가 현재 대기중인 경우 대기 이벤트 이름 (없으면 null)
13Wait Event TypeBackend가 대기중인 이벤트 유형 (없으면 null)
14StateBackend의 현재 상태
15Xact StartBackend 트랜잭션이 시작된 시간 (없으면 null)
16Query Start쿼리가 시작된 시간 (비활성화 상태인 경우 마지막 쿼리가 시작된 시간)
17State ChangeState가 마지막으로 변경된 시간

11-2) Lock Tree 현재 Lock 상태의 Backends 목록을 확인할 수 있습니다. 멀티 데이터베이스 모니터링을 지원하며 우측 상단에서 원하는 인스턴스만 모니터링이 가능하도록 선택할 수 있습니다. ● Grid

순번항목내용
1Database NameBackend가 수행된 Database 이름
2PIDBackend 프로세스 ID
3Lock StatusLock 상태 (Holder, Waiter)
4Holder PIDHolder 프로세스 ID
5User NameBackend에 로그인 한 사용자 이름
6SQL Text수행 쿼리 Text
7Query Start쿼리가 시작된 시간 (비활성화 상태인 경우 마지막 쿼리가 시작된 시간)
8Collect TimeexemONE이 수집한 시간