본문 바로가기

리눅스

PostgreSQL 로그 설정 및 system_stats 확장 활성화하는 방법

반응형

PostgreSQL 로그 설정 및 system_stats 확장 활성화하는 방법

PostgreSQL에서 쿼리 및 성능 로그를 설정하고, 시스템 자원 사용량을 모니터링할 수 있는 system_stats 확장을 활성화하는 방법입니다.

PostgreSQL 로그 설정

PostgreSQL의 로그 설정은 postgresql.conf 파일에서 설정합니다.

 

설정 파일 위치 확인

sudo -u postgres psql
더보기

---

sudo -i -u postgres
psql

---

SHOW config_file;
               config_file               
-----------------------------------------
 /etc/postgresql/17/main/postgresql.conf
(1 row)
  • 또는 Docker 환경에서는 /var/lib/postgresql/data/postgresql.conf

기본 로그 관련 설정

vim /etc/postgresql/17/main/postgresql.conf
logging_collector = on
log_directory = 'log'
log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'
log_statement = 'all'
log_duration = on
log_min_messages = info
log_min_error_statement = error
log_min_duration_statement = 0
log_line_prefix = '%t [%p]: [%l-1] user=%u,db=%d '

데이터 디렉토리 확인

$ cat /etc/postgresql/17/main/postgresql.conf | grep data_directory
data_directory = '/var/lib/postgresql/17/main'          # use data in another directory

로그 디렉토리 생성(필요 시)

mkdir -p /var/lib/postgresql/17/main/log
chown postgres:postgres /var/lib/postgresql/17/main/log

PostgreSQL 재시작

sudo systemctl restart postgresql

오류 메시지

ERROR:  permission denied for function pg_stat_file
  • 슈퍼유저 권한 부여
sudo -u postgres psql
ALTER USER myuser WITH SUPERUSER;

로그 확인

PostgreSQL 로그

728x90

system_stats 확장 활성화

system_stats는 PostgreSQL에서 CPU, 메모리, Load Average 등 시스템 통계를 조회할 수 있게 해주는 외부 확장입니다.

 

필요한 패키지 설치

sudo apt update
sudo apt install -y git build-essential postgresql-server-dev-17

system_stats 소스 코드 클론

git clone https://github.com/EnterpriseDB/system_stats.git
cd system_stats

빌드 및 설치

make -j$(nproc)
sudo make install
  • 생성된 파일
    • /usr/share/postgresql/17/extension/system_stats.control
    • /usr/lib/postgresql/17/lib/system_stats.so

PostgreSQL에 접속

sudo -u postgres psql

PostgreSQL에서 확장 활성화

CREATE EXTENSION system_stats;
CREATE EXTENSION

데이터 확인(postgres 계정으로 접근 시 보임)

system_stats

 

참고URL

- GitHub : EnterpriseDB > System Statistics

 

반응형