log_connections
| 버전 | 기본값 | context | 타입 |
|---|---|---|---|
| 14 | off | superuser | boolean |
| 15 | off | superuser | boolean |
| 16 | off | superuser | boolean |
| 17 | off | superuser | boolean |
| 18 | the empty string | superuser | string |
| 19 | the empty string | superuser | string |
서버로 들어오는 connection의 각 단계를 어디까지 log에 남길지 정한다.
PostgreSQL 18부터 comma로 구분한 옵션 목록을 받는다. receipt(connection 수신), authentication(인증에 사용된 원래 identity), authorization(권한 확인 완료 — 사용자·database·application name 포함), setup_durations(connection이 첫 쿼리를 받을 준비가 되기까지 걸린 시간 — 전체 소요, backend fork, 인증 각각), 그리고 전부를 뜻하는 all을 조합할 수 있다. 기본값은 빈 문자열 ''로, connection logging이 모두 꺼진 상태다. 이전 버전과의 호환을 위해 on/off 같은 boolean 값도 여전히 허용되며, on은 receipt, authentication, authorization을 지정한 것과 같다.
인증 실패는 이 설정과 무관하게 항상 log에 남는다. 세션 종료 기록은 log_disconnections가 따로 제어한다. DBA는 접속 감사, 인증 문제 추적, 갑작스러운 connection 폭주 분석을 위해 이 파라미터를 켠다.
운영 노트: psql처럼 password 필요 여부를 확인하느라 두 번 접속을 시도하는 클라이언트가 있어 “connection received” 메시지가 중복으로 보여도 문제가 아니다. connection pool 없이 접속이 잦은 환경에서는 log 양이 크게 늘 수 있다.
출처: PostgreSQL 18 문서