AWS에서 설정하는 Postgres DB 필수 파라미터

CloudJun·2023년 9월 4일
0

나는백엔드

목록 보기
5/5

개요

db에서 로그를 보관하는것은 매우 중요하나, 기본적인 AWS 설정에서는 주요 로그를 따로 보관하고 있지 않다보니 RDB 관리자는 꼭 관련 내용을 설정해줘야한다. 간혹 잊어버릴뻔 해서 관련 내용을 정리해두려는 목적으로 작성한다.

필수 설정 전

로그 설정은 모두 파라미터 그룹에서 수정을 할 수 있는데, 처음 데이터베이스를 구성할때 default으로 구성해버리면 파라미터 그룹을 수정할 수 없다.

  1. 사용하고 있는 데이터베이스 설정 창에서도 확인할 수 있다.
  2. 파라미터 그룹 > 기본값으로 들어가면 하단처럼 DB에서 사용하고 있는 파라미터 그룹을 찾을 수 있다.

여기서 본인이 사용하고 있는 db default를 확인하고 사용자 지정 파라미터 그룹을 생성한다. 이때 설정하는 패밀리 버전은 RDB에서 사용하는 패밀리와 동일하게 맞춰준다.

RDS > 파라미터 그룹을 생성한 뒤, 파라미터를 바꾸려고 하는 데이터베이스 > 설정으로 들어가서 생성한 파라미터 그룹으로 교체해준다.

필수 설정 파라미터

boolean 으로 설정하는 경우 0 - false , 1 - true

https://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/USER_LogAccess.Concepts.PostgreSQL.html

생성한 파라미터로 들어가서 하단 파라미터를 조회하여 변경해준다.

파라미터 명권고 설정설명
log_connections1커넥션 연결 기록을 확인한다. 접속 기록을 파악해야하기 때문에 필수 설정해둘것
log_statementddl에러를 남기는 범위로 all을 하는 경우 부하의 문제가 발생할 수 있으니 디버깅을 제외해서는 추천하지 않음, 다른 타입들은 4가지 옵션중에 선택할 수 있다. (add, ddl, mod, none) 문서를 꼭 읽어보고 세팅하는것을 추천
log_min_duration_statement500지정된 시간 이상 실행되는 모든 SQL 문을 추척한다. (ms)
log_temp_files1024설정된 값 (KB) 이상의 임시파일을 사용하는 SQL 쿼리 검색으로, 풀스캔을 하는 쿼리를 파악할 수 있음
log_lock_waits11초 보다 긴 기간동안 잠긴 교착상태를 파악할 수 있다

추가적으로 세팅하는 과정에서 아래 블로그도 참조
https://jojoldu.tistory.com/708

cloudWatch로 로그 이동 확인

RDB에 있는 Log들이 모두 cloudWatch 로 이동하는지 확인하고, 만약 설정되어 있지 않다면 설정에서 CloudWatch Logs를 개시할 수 있도록 구성해야한다.

  1. PostgresSqlDB 선택 > 수정
  2. 로그 내보내기 섹션 -> PostgreSQL 로그 선택
  3. 계속 선택 후 , 클러스터 수정으로 바로 적용 완료.

로그 확인은 cloudWatch로 이동해서 로그 그룹 > /aws/rds/instance/{rdb명}/postgresql 으로 찾을 수 있다 .

https://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.CloudWatch.html

profile
짧고 굵게 살아가는 백엔드 개발자

0개의 댓글