Metrics > Postgres

PostgreSQL Metric Dashboard

Widget Type
Widget Title
Summary
connection
Connection Usage by DB
각 데이터베이스 별 connection 사용량을 표시합니다.
MaxConn
현재 데이터베이스에 설정된 MaxConn 값을 표시합니다.
Conn Status
현재 각각의 connection의 status의 합계를 표시합니다.
Connected
현재 연결된 connection의 합계를 표시합니다.
lock
Locks
특정 기간 현재 데이터베이스 session 중 Lock 상태인 session의 수를 표시합니다.
Deadlock
특정 기간 Deadlock이 발생한 횟수를 표시합니다.
dml
DML
Insert, Update, Delete 된 Row의 합을 표시합니다.
bgwriter
Written Buffers By
checkpoint, backgorund writer, backend에 사용한 버퍼 수
Requested vs Scheduled Checkpoint
수행되어진 요청 체크포인트 수,
수행되어진 예약 체크포인트 수
Checkpoint Processing Time
파일이 디스크에 동기/기록되는 체크포인트 처리 부분에서 소용된 총 시간.
vaccum
Vacuum Count
특정 기간 수동으로 수행한 vacuum의 수를 표시합니다.
Autovacuum Count
특정 기간 자동으로 수행한 vaccum의 수를 표시합니다.
Bloating Table (Dead Tuple Ratio)
delete, update된 작업으로 commit된 old version의 rows를 표시합니다.
Size
Database Size
추가 확인 필요
Top Table Size
인덱스를 제외하고 지정된 테이블에서 사용한 디스크 공간의 크기를 표시합니다.
Query
Top Query Elapse Time
특정 기간 경과 시간이 긴 query 항목을 표시합니다.
TPS
commit, rollback의 합을 표시합니다.
Rows
fetch, return된 rows의 합을 표시합니다.
I/O
Physical & Logical I/O
데이터베이스 I/O와 관련된 항목을 표시합니다.

[1] connection

1. Connection Usage by DB

데이터베이스 Connection 사용량을 확인 할 수 있습니다.

Dashboard 구성

Chart
Pie
Type
Metrics
  • pg_dsk_connection_usage
Value
Last
Group
database_name
Aggregation
Avg

Dashboard 에서 사용한 Metric

Metric Name
pg_dsk_connection_usage
Type
Gauge
Description
데이터베이스 연결 사용량(총 세션/최대 연결 수*100)
Labels
  • cluster_id
  • database_name
  • server

2. MaxConn

현재 데이터베이스 설정된 Max Connection 값을 확인 할  수 있습니다.

Dashboard 구성

Chart
Current
Type
Metrics
  • pg_dsk_parameter_value
Value
Last
Filters
parameter
max_connections
Aggregation
Max

Dashboard 에서 사용한 Metric

Metric Name
pg_dsk_parameter_value
Type
Gauge
Description
pg_settings에서 수집된 값.
Labels
  • parameter
  • host_key
  • server
  • unit
  • cluster_id

3. Conn Status

현재 각 상태에 속한 session의 합을 확인 할 수 있습니다.

Dashboard 구성

Chart
Timeseries
Type
Metrics
  • pg_dsk_connection_session_count
Value
count
Group
status
Aggregation
Avg

Dashboard 에서 사용한 Metric

Metric Name
pg_dsk_connection_session_count
Type
Gauge
Description
현재 연결된 연결 수(DB, APP, User, State로 구분)
Labels
  • application_name
  • cluster_id
  • database_name
  • server
  • status
  • user_name

4. Connected

현재 데이터베이스의 connection 수를 확인 할 수 있습니다.

Dashboard 구성

Chart
Current
Type
Metrics
  • pg_dsk_connection_session_count
Value
Last
Aggregation
Sum

Dashboard 에서 사용한 Metric

Metric Name
pg_dsk_connection_session_count
Type
Gauge
Description
현재 연결된 연결 수(DB, APP, User, State로 구분)
Labels
  • application_name
  • cluster_id
  • database_name
  • server
  • status
  • user_name

[2] lock

1. Locks

잠금 대기 중인 세션을 확인 할 수 있습니다.

Dashboard 구성

Chart
Current
Type
Metrics
  • pg_dsk_connection_lock_session
Value
Last
Aggregation
Sum

Dashboard 에서 사용한 Metric

Metric Name
pg_dsk_connection_lock_session
Type
Gauge
Description
잠금 대기 중인 세션 수
Labels
  • cluster_id
  • database_name
  • server

2. DeadLock

교착 상태가 발생한 횟수를 확인 할 수 있습니다.

Dashboard 구성

Chart
Current
Type
Metrics
  • pg_dsk_db_stat_deadlocks
Value
Data
Aggregation
Sum

Dashboard 에서 사용한 Metric

Metric Name
pg_dsk_db_stat_deadlocks
Type
Counter
Description
데이터베이스에서 발견된 교착상태 수
Labels
  • cluster_id
  • database_name
  • server

[3] dml

1. DML

update, deleted, inserted된 rows를 확인 할 수 있습니다.

Dashboard 구성

Chart
Timeseries
Type
Metrics
  • pg_dsk_db_stat_updated_rows
  • pg_dsk_db_stat_deleted_rows
  • pg_dsk_db_stat_inserted_rows
Value
Increase
Aggregation
Sum

Dashboard 에서 사용한 Metric

Metric Name
pg_dsk_db_stat_updated_rows
Type
Counter
Description
쿼리에 의해 업데이트 된 행 수
Labels
  • cluster_id
  • database_name
  • server
Metric Name
pg_dsk_db_stat_deleted_rows
Type
Counter
Description
쿼리에 의해 삭제된 행 수
Labels
  • cluster_id
  • database_name
  • server
Metric Name
pg_dsk_db_stat_inserted_rows
Type
Counter
Description
쿼리에 의해 삽입된 행 수
Labels
  • cluster_id
  • database_name
  • server

[4] bgwriter

1. Written Buffers By

buffer에 발생한 쓰기 요청에 대한 정보를 확인 할 수 있습니다.

Dashboard 구성

Chart
Timeseries
Type
Metrics
  • pg_dsk_bgwriter_written_by_backed
  • pg_dsk_bgwriter_written_by_bgwriter
  • pg_dsk_bgwriter_written_by_checkpoint
Value
Increase
Aggregation
Sum

Dashboard 에서 사용한 Metric

Metric Name
pg_dsk_bgwriter_written_by_backed
Type
Counter
Description
backend에서 직접 쓴 버퍼 수
Labels
  • cluster_id
  • host_key
  • server
Metric Name
pg_dsk_bgwriter_written_by_bgwriter
Type
Counter
Description
체크포인트backend에서 직접 쓴 버퍼 수
Labels
  • cluster_id
  • host_key
  • server
Metric Name
pg_dsk_bgwriter_written_by_checkpoint
Type
Counter
Description
체크포인트 중에 쓴 버퍼 수
Labels
  • cluster_id
  • host_key
  • server

2. Requested vs Scheduled Checkpoint

수행된 예약/요청 체크포인트 수의 정보를 확인 할 수 있습니다.

Dashboard 구성

Chart
Timeseries
Type
Metrics
  • pg_dsk_bgwriter_requested_checkpoint
  • pg_dsk_bgwriter_scheduled_checkpoint
Value
Increase
Aggregation
Sum

Dashboard 에서 사용한 Metric

Metric Name
pg_dsk_bgwriter_requested_checkpoint
Type
Counter
Description
수행된 요청된 체크포인트 수
Labels
  • cluster_id
  • host_key
  • server
Metric Name
pg_dsk_bgwriter_scheduled_checkpoint
Type
Counter
Description
수행된 예약된 체크포인트 수
Labels
  • cluster_id
  • host_key
  • server

3. Checkpoint Processing Time

파일이 디스크에 동기화/쓰기 체크포인트 처리 부분에서 소요된 총 시간 정보를 확인 할 수 있습니다.

Dashboard 구성

Chart
Timeseries
Type
Metrics
  • pg_dsk_bgwriter_checkpoint_sync_time
  • pg_dsk_bgwriter_checkpoint_write_time
Value
Last
Aggregation
Sum

Dashboard 에서 사용한 Metric

Metric Name
pg_dsk_bgwriter_checkpoint_sync_time
Type
Counter
Description
파일이 디스크에 동기화되는 체크포인트 처리 부분에서 소요된 총 시간(밀리초)
Labels
  • cluster_id
  • host_key
  • server
Metric Name
pg_dsk_bgwriter_checkpoint_write_time
Type
Counter
Description
파일이 디스크에 기록되는 체크포인트 처리 부분에서 소요된 총 시간(밀리초)
Labels
  • cluster_id
  • host_key
  • server

[5] vacuum

1. Vacuum Count

테이블을 수동으로 vacuum한 횟수를 확인 할 수 있습니다.

Dashboard 구성

Chart
Current
Type
Metrics
  • pg_dsk_table_stat_vacuum_count
Value
Increase
Aggregation
Sum

Dashboard 에서 사용한 Metric

Metric Name
pg_dsk_table_stat_vacuum_count
Type
Counter
Description
이 테이블을 수동으로 vacuum 한 횟수
Labels
  • cluster_id
  • database_name
  • host_key
  • schema_name
  • server
  • table_name

2. Autovacuum Count

테이블을 자동으로 vaccum한 횟수를 확인 할 수 있습니다.

Dashboard 구성

Chart
Current
Type
Metrics
  • pg_dsk_table_stat_autovacuum_count
Value
Increase
Aggregation
Sum

Dashboard 에서 사용한 Metric

Metric Name
pg_dsk_table_stat_autovacuum_count
Type
Counter
Description
테이블이 autovacuum된 횟수
Labels
  • cluster_id
  • database_name
  • host_key
  • schema_name
  • server
  • table_name

3. Bloating Table (Dead Tuple Ratio)

update, delete로 인한 Dead Tuple에 대한 행의 갯수를 확인 할 수 있습니다.

Dashboard 구성

Chart
Top List
Type
Metrics
  • pg_dsk_table_stat_dead_rows
Value
Avg
Group
table_name
Top
10

Dashboard 에서 사용한 Metric

Metric Name
pg_dsk_table_stat_dead_rows
Type
Counter
Description
예상 비활성 행 수
Labels
  • cluster_id
  • database_name
  • host_key
  • schema_name
  • server
  • table_name

[6] size

1. Database Size - 보류

Dashboard 구성Dashboard 에서 사용한 Metric

2. Top Table Size

각각의 Table의 가용 용량을 확인 할 수 있습니다.

Dashboard 구성

Chart
Top List
Type
Metrics
  • pg_dsk_capacity_table_size
Value
Avg
Group
table_name
Top
10

Dashboard 에서 사용한 Metric

Metric Name
pg_dsk_capacity_table_size
Type
Gauge
Description
인덱스를 제외하고 지정된 테이블에서 사용한 디스크 공간(TOST, 사용 가능한 공간 맵 및 가시성 맵 포함)
Labels
  • cluster_id
  • database_name
  • host_key
  • schema_name
  • server
  • table_name

[7] Query

1. Elapse Time

Dashboard 구성

Chart
Top List
Type
Metrics
  • pg_dsk_sql_stat_elapsed_time
Value
Avg
Group
query
Top
10

Dashboard 에서 사용한 Metric

Metric Name
pg_dsk_sql_stat_elapsed_time
Type
Counter
Description
문을 실행하는 데 소요된 총 시간(밀리초)
Labels
  • cluster_id
  • database_name
  • server
  • user_name
  • query

2. Physical & Logical I/O

Dashboard 구성

Chart
Timeseries
Type
Metrics
  • pg_dsk_db_stat_block_read
  • pg_dsk_db_stat_block_hit
Value
Increase
Aggregation
Sum

Dashboard 에서 사용한 Metric

Metric Name
pg_dsk_db_stat_block_read
Type
Counter
Description
db에서 읽은 디스크 블록 수
Labels
  • cluster_id
  • database_name
  • server
Metric Name
pg_dsk_db_stat_block_hit
Type
Counter
Description
sql 버퍼 캐시에 이미 데이터가 존재하여 읽기가 필요하지 않은 횟수
Labels
  • cluster_id
  • database_name
  • server

3. TPS

Dashboard 구성

Chart
Timeseries
Type
Metrics
  • pg_dsk_db_stat_commit
  • pg_dsk_db_stat_rollback
Value
Increase
Aggregation
Sum

Dashboard 에서 사용한 Metric

Metric Name
pg_dsk_db_stat_commit
Type
Counter
Description
데이터 베이스에 commit된 트랜잭션 수
Labels
  • cluster_id
  • database_name
  • server
Metric Name
pg_dsk_db_stat_rollback
Type
Counter
Description
rollback된 트랜잭션 수
Labels
  • cluster_id
  • database_name
  • server

4. Rows

Dashboard 구성

Chart
Timeseries
Type
Metrics
  • pg_dsk_db_stat_fetched_rows
  • pg_dsk_db_stat_returned_rows
Value
Increase
Aggregation
Sum

Dashboard 에서 사용한 Metric

Metric Name
pg_dsk_db_stat_fetched_rows
Type
Counter
Description
쿼리에서 실제로 반환 된 행 수
Labels
  • cluster_id
  • database_name
  • server
Metric Name
pg_dsk_db_stat_returned_rows
Type
Counter
Description
db쿼리에서 반환 된 행
Labels
  • cluster_id
  • database_name
  • server