Aurora(Amazon RDS for PostgreSQL)에서 느린 조회를 출력하는 방법

3564 단어 AuroraAWSPostgreSQL
개시하다
담당하는 웹 서비스가 왜 느린지 확인하기 위해서는 시간이 걸리는 조회를 확인해야 한다.
오늘 당시에 알았던 아우라(Amazon RDS for PostgreSQL)에서 발행 느린 속도에 대한 조회 방법을 적었다.
PostgreSQL과 MySQL이 다르기 때문에 설정이 좀 번거롭습니다...
선결
매개변수 그룹에서 다음을 설정합니다.
1000ms 이상의 조회를 출력합니다
log_statement mod
log_min_duration_statement 1000
전제 조건
RDS에 접속해야 합니다.
매개변수 그룹 생성하기
1. 새 매개변수 그룹 생성

2. 유형 DB Cluster Parameter Group 선택
DB Parameter Group...특정 인스턴스에만 적용
DB Cluster Parameter Group·클러스터 전체에 적용

3. 생성된 매개변수 그룹 편집
다음 설정에서 로그는 1000ms 이상의 조회를 출력합니다.
log_statement mod
log_min_duration_statement 1000
적응 유형dynamic은 데이터베이스를 다시 시작하지 않은 상황에서 파라미터의 수정을 변경할 수 있다.
log_statement
ddl은 CREATE, ALTER 및 DROP 문 등의 데이터 정의 문을 모두 로그에 기록합니다.
모든ddl 문구 외에도mod는 INSERT, UPDATE, DELETE, TRUNCATE, COPY FROM 등 데이터 변경 문구를 로그에 기록합니다.
https://www.postgresql.jp/document/12/html/runtime-config-logging.html
log_min_duration_statement
최소한 지정된 시간 안에 문장을 실행하면, 로그에 문장마다 필요한 시간을 기록합니다.값을 지정하는 단위가 없으면 밀리초 단위로 간주됩니다.
https://www.postgresql.jp/document/12/html/runtime-config-logging.html


4. DB 클러스터의 매개변수 그룹에 생성된 매개변수 그룹 설정

5. PostgreSQL 로그 확인
CloudWatch에 느린 조회를 출력합니다.

실행하다
  • 2분 대기 쿼리 발행
  • 로그 확인
  • 다음 로그가 출력되었습니다.🎊
    나중에 로그를 필터해서 슬랙에 알려주거나 정리해 주세요.
    2022-01-10 04:31:25 UTC:10.0.0.96(50174):postgres@postgres:[21202]:LOG:  duration: 2004.674 ms  statement: select pg_sleep(2);
    
    주의
  • 기본 매개 변수 그룹을 사용하여 데이터베이스를 시작할 때 수정할 수 없는 매개 변수가 존재합니다.이 때 사용자 정의 매개 변수에 대한 변경이 발생하기 때문에 데이터베이스를 다시 시작해야 합니다.따라서 RDS를 시작할 때 사용자 정의 매개변수를 사용하는 것이 좋습니다.

  • 참고 자료

    좋은 웹페이지 즐겨찾기