log_autovacuum_min_duration
| 버전 | 기본값 | context | 타입 |
|---|---|---|---|
| 14 | — | sighup | integer |
| 15 | 10min | sighup | integer |
| 16 | 10min | sighup | integer |
| 17 | 10min | sighup | integer |
| 18 | 10min | sighup | integer |
| 19 | 10min | sighup | integer |
지정한 시간 이상 걸린 autovacuum 작업을 서버 log에 기록한다.
autovacuum이 수행한 vacuum과 analyze가 설정값 이상 걸리면 log에 남는다. 0으로 설정하면 모든 autovacuum 동작이 기록되고, -1이면 기록이 꺼진다. 단위 없이 값을 주면 밀리초로 해석하며, 기본값은 10min이다. -1이 아닌 값으로 설정하면 lock 충돌이나 동시에 drop된 relation 때문에 autovacuum이 작업을 건너뛴 경우에도 메시지가 남는다.
postgresql.conf 파일이나 서버 커맨드라인에서만 설정할 수 있지만, 테이블 storage parameter로 테이블별 override가 가능하다.
운영 노트: autovacuum 튜닝의 출발점이 되는 파라미터다. log에 남는 스캔·제거 row 수, buffer 사용량, I/O 시간 통계를 보면 어떤 테이블에서 vacuum이 오래 걸리는지 파악할 수 있다. 전체 활동을 보고 싶으면 0으로 낮추되 log 양이 늘어나는 점은 감안해야 한다.
출처: PostgreSQL 18 문서