PGBADGER
https://github.com/darold/pgbadger
설치
# 압축 해제
tar zxvf /pgbadger-12.4.tar.gz -C /tmp
cd /tmp/pgbadger-12.4
# perl
perl Makefile.PL
# make
make && make install
# Check Version
pgbadger -V
# Delete Temparary Files
rm -rf /tmp/pgbadger-12.4
필요한 파라미터
log_autovacuum_min_duration: 0
log_checkpoints: on
log_connections: on
log_disconnections: on
log_line_prefix: '%t [%p - %l]: error=%e, %qdb=%d, user=%u, remote=%r, app=%a, client=%h, '
log_lock_waits: on
log_min_duration_statement: 100 # 단위 : 1/1000초, 0 : 모든 쿼리를 로깅
log_temp_files: 0
사용
# 기본
pgbadger --prefix 'log_line_prefix' /directroy/postgresql-log-file
# 로그 파일 여러개를 읽기
pgbadger --prefix '%t [%p - %l]: error=%e, %qdb=%d, user=%u, remote=%r, app=%a, client=%h, ' /var/pgsql/data/log/postgresql-2024-12-03_14.log /var/log/postgres/postgresql-2024-12-03_15.log -o /root/0.html
# 시간지정
pgbadger --prefix '%t [%p - %l]: error=%e, %qdb=%d, user=%u, remote=%r, app=%a, client=%h, ' -b "2024-12-03 14:50:00" -e "2024-12-03 15:01:00" /var/log/postgres/postgresql-2024-12-03_*.log -o /root/1.html
# 레포트 작성 시 사용할 CPU 코어 갯수 지정
pgbadger --prefix '%t [%p - %l]: error=%e, %qdb=%d, user=%u, remote=%r, app=%a, client=%h, ' -b "2024-12-03 14:50:00" -e "2024-12-03 15:01:00" /var/log/postgres/postgresql-2024-12-03_*.log -j 2 -o /root/2.html
# 레포트 작성을 매일, 매주 단위로 작성하도록 함 (Incremental 모드 지정)
pgbadger --prefix '%t [%p - %l]: error=%e, %qdb=%d, user=%u, remote=%r, app=%a, client=%h, ' /var/log/postgres/postgresql-*.log -j 2 -I -E -O /home/postgres/report
# 월간 레포트 작성
pgbadger –month-report 2024-12 /var/log/postgres/postgresql-*.log -j 2 -O /home/postgres/report
# 월간 레포트 작성 (-E)
pgbadger -E –month-report 2024-12 /home/postgres/report
옵션
|OPTION|VALUE|DESCRIPTION|
|-|-|-|
|-a
|number
|Period 지정 (단위 : 분)|
|-b
|datetime
, timestamp
|특정시간지정 (개시)|
|-e
|datetime
, timestamp
|특정시간지정 (종료)|
|-E
||각 데이터베이스 별 표시|
|-I
||Incremental 모드 활성화|
|-j
|number
|CPU Core 지정|
|–month-report
|yyyy-mm
|월간 레포트 작성|
|-o
|/directory/filename
|파일 Output 지정|
|-O
|/directory
|파일 Output 디렉토리 지정|
|--prefix
|log_line_prefix
|Log 파일의 Prefix 지정|
|--retention
|number
|남겨둘 레포트 기간 (단위 : 주)|
|-v
||디버그 모드|
체크 항목
|항목| |-| |Overview| |Connections| |Sessions| |Checkpoints| |Temp Files| |Vacuums| |Locks| |Queries| |Top| |Events|