본문으로 건너뛰기
log_autoanalyze_min_duration

log_autoanalyze_min_duration

버전기본값context타입
1910minsighupinteger

autovacuum이 수행한 analyze가 지정한 시간 이상 걸리면 로그로 남긴다. PostgreSQL 19(beta)에서 추가된 파라미터로, 기본값은 10분이다.

기존에는 log_autovacuum_min_duration 하나가 autovacuum의 vacuum과 analyze 로그를 함께 제어했지만, PostgreSQL 19부터 analyze 쪽이 이 파라미터로 분리됐다. 0으로 설정하면 autovacuum의 모든 analyze를 기록하고, -1이면 기록하지 않는다. 단위 없이 값을 주면 밀리초로 해석하며, 예를 들어 250ms로 설정하면 250ms 이상 걸린 automatic analyze가 모두 기록된다. -1이 아닌 값으로 설정하면 lock 충돌이나 동시에 drop된 relation 때문에 analyze가 건너뛰어진 경우에도 메시지를 남긴다.

postgresql.conf 파일이나 서버 command line에서만 설정할 수 있고, 테이블 storage parameter로 테이블별 override가 가능하다.

운영 노트: 통계 갱신이 밀려 plan이 흔들리는 의심이 있을 때 값을 낮춰 autovacuum의 analyze 활동을 추적하면 유용하다. vacuum 쪽 로그는 그대로 log_autovacuum_min_duration으로 제어한다.

출처: PostgreSQL 19 문서