TechBridge

모니터링 완전 가이드 — pg_stat_* 뷰 총정리 · 대시보드 읽는 법

← 목록으로

📋 실습 안내

✏️ CODE EDITOR (JSX)
▶ 실행 버튼을 눌러 코드를 테스트하세요.
👁️ 내 미리보기 내 코드 실행 결과
🎯 완성 미리보기 목표
위 에디터 코드를 수정해서 이 결과물과 똑같이 만들어보세요!
💡 TODO 주석을 채워서 위 결과물처럼 동작하게 만들어보세요
🤖 AI 선생님에게 질문하기 이번 강의 전용
  선생님이 답변 중이에요...
⚠️ 학습 관련 질문만 답변합니다. 관련 없는 질문은 자동으로 학습으로 유도됩니다.
Q1. pg_stat_statements를 활성화하기 위해 postgresql.conf에 추가해야 하는 설정은?
💡 pg_stat_statements는 shared_preload_libraries에 등록해야 서버 시작 시 로드됩니다. 설정 후 PostgreSQL 재시작이 필요하며, 이후 CREATE EXTENSION pg_stat_statements로 해당 DB에서 활성화합니다.
Q2. pg_stat_activity에서 wait_event_type = 'Lock'인 세션이 많을 때 의미하는 것은?
💡 wait_event_type = 'Lock'은 다른 트랜잭션이 보유한 잠금을 기다리는 상태입니다. 장기 트랜잭션, 누락된 인덱스, 또는 대량 업데이트가 원인일 수 있습니다.
Q3. 캐시 히트율(cache hit rate)이 낮을 때(예: 80%) 가장 적절한 조치는?
💡 캐시 히트율이 낮으면 데이터를 디스크에서 자주 읽는다는 의미입니다. shared_buffers를 늘려 더 많은 데이터를 메모리에 캐시하면 히트율이 향상됩니다. 일반적으로 전체 RAM의 25~40%가 권장값입니다.
Q4. pg_stat_user_indexes에서 idx_scan = 0인 인덱스의 의미는?
💡 idx_scan = 0은 통계 수집 시작(또는 마지막 리셋) 이후 해당 인덱스가 쿼리 실행에 사용되지 않았다는 의미입니다. 정기적으로 확인하고 불필요한 인덱스를 제거하면 쓰기 성능이 향상됩니다.
Q5. pg_stat_bgwriter의 checkpoints_req가 지속적으로 높은 경우 의미하는 것은?
💡 checkpoints_req(요청에 의한 Checkpoint)가 많으면 WAL 생성 속도가 max_wal_size 한도를 자주 초과한다는 신호입니다. max_wal_size를 늘리거나(예: 2GB→4GB) checkpoint_completion_target을 0.9로 조정하면 완화됩니다.
🎉

퀴즈 통과!

점수: 0점 — 수고하셨습니다!

다음 강의로 →
😅

아쉽네요!

점수: 0점 — 70점 이상이 되어야 통과합니다.