PostgreSQL 메트릭
홈 화면 > 프로젝트 선택 > 분석 > 메트릭스 조회
메트릭스 조회 메뉴에서 검색할 수 있는 메트릭입니다. 메트릭은 아래와 같은 정보를 포함합니다. 일부 메트릭에는 태그 정보가 없을 수 있습니다.
- Tags: 수집 대상을 식별하는 정보 (에이전트 이름, IP 등)
- Fields: 실제 측정값 (CPU 사용률, 응답 시간 등)
agent_status_summary
- 에이전트 상태 관련 메트릭을 수집
- 수집 간격: 10초
Fields
| Field | Type | Unit | Description |
|---|---|---|---|
| inActTime | - | 밀리초(ms) | 에이전트가 비활성화된 상태로 유지된 시간 |
| isActive | Boolean | - | 현재 에이전트의 활성 상태 여부 |
| isRestart | Boolean | - | 에이전트가 최근에 재시작되었는지 여부 (true / false) |
| lastActTime | - | 밀리초(ms) | 마지막으로 에이전트가 활성화된 상태의 시각 (0: 비활성화된 경우) |
| oid | - | - | 프로젝트에 포함된 각 에이전트의 고유 식별자 |
| startTime | - | 밀리초(ms) | 에이전트가 시작된 시점의 타임스탬프 |
db_postgresql_counter
- PostgreSQL 데이터베이스 성능 메트릭을 수집
Tags
| Tag | Description |
|---|---|
agentIp | 에이전트 별 IP 주소입니다. |
dbIsMulti | Multitenant 지원 여부입니다. |
dbName | 데이터베이스 이름입니다. |
dbType | 데이터베이스 종류입니다. |
dbVersion | 이용 중인 데이터베이스의 버전입니다. |
oname | 에이전트 이름 (고유값) |
Fields
| Field | Description | Category |
|---|---|---|
active_sessions | 현재 활성화된 세션의 수입니다. | Connection |
CPUUtilization | 데이터베이스 인스턴스에서 사용 중인 CPU 자원의 비율입니다. | Performance |
FreeStorageSpace | 인스턴스의 사용 가능한 스토리지 공간입니다. | I/O |
FreeableMemory | 시스템에서 즉시 사용할 수 있는 메모리의 양입니다. | I/O |
NetworkReceiveThroughput | 인스턴스가 수신하는 네트워크 데이터의 속도입니다. | Throughput |
NetworkTransmitThroughput | 인스턴스에서 송신하는 네트워크 데이터의 속도입니다. | Throughput |
blk_read_time | 백엔드에서 데이터 블록을 읽는데 소요된 시간(millisecond)입니다. | I/O |
blk_write_time | 백엔드에서 데이터 블록을 쓰는데 소요된 시간(millisecond)입니다. | I/O |
blks_hit | 디스크 블록이 이미 버퍼 캐시에서 발견되어 읽기가 필요하지 않은 총 횟수입니다. | I/O |
blks_hit_ratio | 전체 조회 중 캐시에서 조회된 비율(%)입니다. 산출 방식: sum( blks_hit)/sum(blks_hit + blks_read) * 100 | I/O |
blks_read | 디스크에서 직접 읽은 데이터 블록의 수입니다. | I/O |
buffers_checkpoint | 체크포인트 동안 플러시된 버퍼의 수입니다. | Info |
check_point | 데이터베이스의 체크포인트 발생 횟수입니다. | Throughput |
checkpoint_write_time | 체크포인트 동안 데이터를 쓰는데 소요된 시간(millisecond)입니다. | Throughput |
checkpoints_timed | checkpoint_timeout 환경 설정 값에 따라 발생한 체크 포인트 수입니다. | Throughput |
commit_count | 트랜잭션 커밋 횟수입니다. | Throughput |
confl_bufferpin | 버퍼 핀 충돌로 인한 세션 충돌 횟수입니다. | Throughput |
confl_deadlock | 데드락 충돌 횟수입니다. | Throughput |
confl_lock | 잠금 충돌로 인한 세션 충돌 횟수입니다. | Throughput |
confl_snapshot | 스냅샷 충돌로 인한 세션 충돌 횟수입니다. | Throughput |
confl_tablespace | 테이블스페이스 충돌로 인한 세션 충돌 횟수입니다. | Throughput |
conflicts | 데이터베이스 복구 작업과 충돌이 나서 수행이 취소된 쿼리 수입니다. | Throughput |
connect_error | 데이터베이스 연결 실패 횟수입니다. | Connection |
deadlock_count | 발생한 데드락의 총 횟수입니다. | Performance |
dml_count | DML(데이터 조작 언어) 작업의 총 횟수입니다. | Throughput |
fatal_count | 치명적인 오류가 발생한 횟수입니다. | Info |
idle_trx | 유휴 상태에 있는 트랜잭션의 수입니다. | Connection |
idle_trx_time | 유휴 상태 트랜잭션의 누적 시간입니다. | Connection |
idx_scan | 인덱스를 통해 테이블 레코드에 액세스한 횟수입니다. 1분 간격으로 조회합니다. | Performance |
index_hit_ratio | 인덱스에서 캐시 조회된 비율(%)입니다. | Performance |
lock_wait_sessions | 잠금 대기 중인 세션 수입니다. | Performance |
long_running_sessions | 오래 실행 중인 세션 수입니다. | Performance |
max_connections | 허용된 최대 연결 수입니다. pg_settings에 설정된 값으로, 이 값이 부족하면 'FATAL ERROR: too many clients already.' 에러가 발생할 수 있습니다. | Info |
max_runtime | 가장 오래 실행된 쿼리의 실행 시간입니다. | Performance |
node_state | Replication 관계로 구성된 데이터베이스이며 1: Master, 2: Slave 를 의미합니다. | Info |
numbackends | 데이터베이스에 연결된 현재 백엔드 프로 세스의 수입니다. | Info |
oldest_cur_xid | 가장 오래된 현재 트랜잭션 ID입니다. | Info |
per_to_emergency_autovac | 비상 자동 vacuum 발생 횟수입니다. | Performance |
per_to_wraparound | 트랜잭션 ID 랩어라운드 방지 vacuum 작업의 횟수입니다. | Performance |
replication_count | 활성화된 Replication 데이터베이스(Slave)의 수입니다. | Performance |
replication_delay | 복제 지연 시간입니다. Replication 구조일 경우 replication 데이터베이스에 반영되는 지연시간으로, Slave DB에서 측정되는 메트릭입니다. | Performance |
replication_lag | 복제된 데이터가 원본 데이터와 비교해 뒤쳐진 정도입니다. | Performance |
rollback_count | 트랜잭션 롤백 횟수입니다. | Performance |
seq_scan | 테이블 Full Scan 횟수입니다. 1분 간격으로 조회합니다. | Performance |
table_hit_ratio | 테이블에서 캐시 조회된 비율입니다. | Performance |
temp_bytes | 데이터베이스의 쿼리에 의해 임시 파일에 기록된 총 바이트 수입니다. | Performance |
temp_files | 데이터베이스에서 쿼리로 생성된 임시 파일의 수입니다. | Performance |
total_runtime | 모든 쿼리의 총 실행 시간입니다. | Performance |
total_sessions | 현재 연결되어 있는 총 세션 수입니다. | Connection |
tps | 초당 트랜잭션 처리 건수입니다. | Performance |
tup_deleted | 데이터베이스에서 쿼리에 의해 삭제된 튜플 수입니다. | Throughput |
tup_fetched | 데이터베이스에서 쿼리로 가져온 튜플 수입니다. | Throughput |
tup_inserted | 데이터베이스에서 쿼리에 의해 삽입된 튜플 수입니다. | Throughput |
tup_returned | 데이터베이스의 쿼리에서 반환된 튜플 수입니다. | Throughput |
tup_updated | 데이터베이스에서 쿼리에 의해 업데이트된 튜플 수입니다. | Throughput |
uptime | 데이터베이스가 실행 중인 시간입니다. | Info |
vacuum_running_count | 현재 실행 중인 vacuum 작업의 수입니다. | Performance |
wait_sessions | 대기 상태인 세션의 수입니다. | Performance |
wal_count | 기록된 WAL(Write-Ahead Logging) 파일 수입니다. 급증 시 대량 변경이나 vacuum 작업이 원인일 수 있으며, 디스크 I/O 및 CPU 사용량이 일시적으로 증가합니다. 1분 간격으로 조회합니다. | Performance |
warning_count | 경고가 발생한 횟수입니다. | Info |
XOS 관련 메트릭
XOS 에이전트로부터 수집되는 메트릭에 대한 설명입니다.
| Field | Unit | Description |
|---|---|---|
cpu(xos) | pct | CPU 사용률cpu_user + cpu_sys + cpu_iowait의 합 |
cpu_idle(xos) | pct | CPU가 유휴 상태인 시간 |
cpu_iowait(xos) | pct | CPU가 I/O 작업을 대기한 시간 |
cpu_sys(xos) | pct | CPU가 커널 코드 실행에 사용된 시간 |
cpu_user(xos) | pct | CPU가 사용자 코드 실행에 사용된 시간 |
disk_read_bytes(xos) | byte | 디스크에서 읽은 데이터 양 |
disk_reads(xos) | block | 디스크에서 읽은 블록 수 |
disk_write_bytes(xos) | byte | 디스크에 기록된 데이터 양 |
disk_writes(xos) | block | 디스크에 기록된 블록 수 |
mem(xos) | pct | 메모리 사용률 |
mem_available(xos) | MB | 가용한 메모리 크기 |
mem_buffcache(xos) | MB | buff/cache 용도로 사용 중인 메모리 크기 |
mem_free(xos) | MB | 사용 중이지 않은 메모리 크기 |
mem_swapfree(xos) | MB | 사용되지 않은 스왑 영역 크기 스왑은 디스크 공간을 사용하므로, 사용 시 성능 저하 가능성 있음 |
mem_swaptotal(xos) | MB | 전체 스왑(Swap) 크기 물리 메모리 부족 시 사용 |
mem_total(xos) | MB | 전체 메모리 크기 |
mem_used(xos) | MB | 사용 중인 메모리 크기 |
net_recv_bytes(xos) | byte | 네트워크에서 수신한 데이터 양 |
net_recv_packets(xos) | count | 네트워크에서 수신한 패킷 수 |
net_send_bytes(xos) | byte | 네트워크로 전송한 데이터 양 |
net_send_packets(xos) | count | 네트워크로 전송한 패킷 수 |