log_parameter_max_length
| 버전 | 기본값 | context | 타입 |
|---|---|---|---|
| 14 | — | superuser | integer |
| 15 | — | superuser | integer |
| 16 | — | superuser | integer |
| 17 | — | superuser | integer |
| 18 | — | superuser | integer |
| 19 | — | superuser | integer |
statement logging 시 함께 기록되는 bind parameter 값의 최대 길이를 바이트 단위로 제한한다.
0보다 큰 값이면 에러가 아닌 statement log 메시지에 실리는 각 bind parameter 값을 그 바이트 수까지 잘라서 기록한다. 0이면 bind parameter를 아예 기록하지 않고, -1(기본값)이면 전체를 기록한다. 단위 없이 값을 주면 바이트로 해석한다.
이 설정은 log_statement, log_duration 등 statement logging 계열이 출력하는 메시지에만 적용된다. 에러 메시지에 실리는 parameter는 별도 파라미터인 log_parameter_max_length_on_error가 제어한다. 0이 아닌 값은 약간의 오버헤드를 만드는데, 특히 parameter가 바이너리 형식으로 전달되면 텍스트 변환이 필요해 비용이 더 커진다.
운영 노트: 대형 JSON이나 bytea 값을 bind parameter로 넘기는 애플리케이션에서는 기본값(-1) 그대로 두면 log 파일이 급격히 커질 수 있다. 수 KB 수준으로 제한해 두면 쿼리 파악에 필요한 정보는 유지하면서 log 볼륨을 억제할 수 있다.
출처: PostgreSQL 18 문서