PostgreSQL Logging in Practice
October 20–23
PostgreSQL has dozens of logging-related settings, but it is not always obvious what they actually log, how they interact, what they cost, and which operational questions they can answer. This talk is a practical walkthrough of PostgreSQL logging in plain language: how to choose settings based on the questions your logs need to answer, without adding unnecessary overhead or missing important signals.
The session works through real production scenarios: investigating production incidents, finding slow queries, diagnosing lock waits, tracking temp file spills, understanding checkpoint pressure, and investigating autovacuum activity. Each scenario compares logs with standard monitoring queries, shows which logging settings add useful context, explains where they overlap with pg_stat_* views and pg_stat_statements, and discusses how to choose the better source of information for the question at hand.
Practical examples include why log_duration is rarely the setting you want, when log_hostname adds cost without useful context, and why the right log_line_prefix makes a real difference.
Attendees leave with a clear mental model of PostgreSQL logging, a checklist for reviewing production logging, and a framework for choosing settings that fit their workload.