본문으로 건너뛰기
syslog_split_messages

syslog_split_messages

버전기본값context타입
14sighupboolean
15sighupboolean
16sighupboolean
17sighupboolean
18sighupboolean
19sighupboolean

syslog로 메시지를 전달할 때 긴 메시지를 잘라서 보낼지, 통째로 보낼지 정한다.

on(기본값)이면 메시지를 줄 단위로 나누고, 긴 줄은 다시 1024바이트에 맞게 자른다. 1024바이트는 전통적인 syslog 구현이 흔히 갖는 크기 제한이다. off면 PostgreSQL 서버의 log 메시지를 자르지 않고 그대로 syslog 서비스에 넘기며, 커질 수 있는 메시지를 어떻게 다룰지는 전적으로 syslog 서비스의 몫이 된다.

syslog가 최종적으로 텍스트 파일에 기록하는 구성이라면 어느 쪽이든 결과 파일 내용은 같다. 대부분의 syslog 구현이 큰 메시지를 처리하지 못하거나 별도 설정이 필요하다는 점을 감안하면 이 경우 on으로 두는 편이 낫다. 반면 syslog가 파일이 아닌 다른 매체(중앙 수집 시스템 등)로 보내는 구성이라면, 하나의 메시지를 논리적으로 온전하게 유지하기 위해 off가 필요하거나 더 유용할 수 있다.

postgresql.conf 파일이나 서버 커맨드라인에서만 설정할 수 있고, 변경 후 reload(SIGHUP)로 반영된다.

운영 노트: syslog를 거쳐 중앙 log 수집기로 보내는 환경에서 여러 줄짜리 에러 메시지(쿼리 전문, DETAIL/HINT 포함)가 조각나 검색이 안 된다면 이 파라미터를 off로 바꿔 메시지 단위를 유지하는 방법을 검토할 만하다. 단, 중간 경로의 syslog 구현이 큰 메시지를 받아줄 수 있는지 먼저 확인해야 한다.

출처: PostgreSQL 18 문서