Configuring logging for

Note, this article was published over 2 years ago and hence the content may be stale. Consume with a pinch of salt.


You're using on a Mac for local development but are getting SQL errors from your application. You're seeing an error message:

ERROR:  current transaction is aborted, commands ignored until end of
transaction block

This isn't very useful: you want to know which query is generating the error.


Turn on Postgres' logging and watch the log files when the error is generated.

This is done by editing ~/Library/Application Support/Postgres/var/postgresql.conf and setting:

logging_collector = on
log_directory = 'pg_log'

then restarting Postgres to pick up the new settings. You can then watch the log files to find out which queries are failing:

$ tail -f ~/Library/Application\ Support/Postgres/var/pg_log/*


By default, does not have logging enabled which makes local debugging difficult.