
성능상의 이유로 애플리케이션이 데이터베이스에 대해 작성하는 모든 SQL 문을 검토하는 중입니다. PostgreSQL 데이터베이스 서버에서 실행되는 모든 명령문을 기록하는 쉬운 방법이 있습니까? 감사해요.
답변1
찾고 있는 구성 옵션은 log_statement = "all"
(문장만 원하는 경우) 또는 log_min_statement_duration = <some number>
"느린" 쿼리 바로 뒤에 있는 경우("느린" 값의 경우)입니다. 보다http://www.postgresql.org/docs/current/static/runtime-config-logging.html로깅 구성에 대한 자세한 내용은
답변2
이 auto_explain
모듈은 이에 매우 유용합니다. 명령문을 기록할 뿐만 아니라 실행 계획도 기록하고 PL/PgSQL 함수 내에서 실행되는 명령문도 기록할 수 있습니다. 분석을 활성화하지 않는 한 성능 저하가 상당히 낮습니다. 이 경우 모든 쿼리에 대해 상당한 타이밍 오버헤드가 발생합니다.
보다auto_explain
문서에서.