2013-02-22 7 views
13

Laufen Mountain Lion. Installierte PostgreSQL über Postgres.app. Verwenden von Postgres für Django über PyCharm. Ich habe mehrere SO und blog posts darüber gelesen, dass dies funktioniert, und Protokolle werden einfach nicht erstellt.Wie aktiviere ich die Protokollierung mit Postgres.app unter OS X?

Meine conf Datei (Datenverzeichnis) befindet sich hier:

$ ~/Library/Application\ Support/Postgres/var/postgresql.conf 

Meine postgresql.conf Protokolliereinstellungen sieht wie folgt aus:

log_destination = 'stderr' 
logging_collector = on 
log_directory = '~/Library/Logs/Postgres' (I've also tried 'pg_log') 

Ich habe versucht zu schließen und Eröffnung Postgres.app

I Habe auch versucht die Befehlszeilen Server neu zu starten:

$ /Applications/Postgres.app/Contents/MacOS/bin/pg_ctl restart -D ~/Library/Application\ Support/Postgres/var/ 

... aber dies führt in dem Terminal auf "LOG: autovacuum launcher started" hängen ... und den Protokolle Druck auf die Konsole.

This SO post is closely relevant, aber ich möchte Postgres.app in Protokolldateien schreiben, nicht auf Konsole drucken.

Jede Hilfe wäre toll, danke.

EDIT: Als Reaktion auf vyegorov,

version = PostgreSQL 9.2.2 

silent_mode nicht

+0

Welche PostgreSQL-Version? Was ist die Einstellung für 'silent_mode'? – vyegorov

+0

Kam hier fragen, wie pg_ctl mit Postgres.app laufen, wurde nicht enttäuscht. Danke, – manderson

Antwort

14

in postgresql.conf existiert habe ich es für mich arbeiten. Hier werden die Einstellungen Ich verwende:

log_destination = 'stderr' 
logging_collector = on 
log_directory = '/tmp/' 
log_filename = 'postgresql-%Y-%m-%d.log' 
+0

groß, sollte dies standardmäßig in der App aktiviert sein – Rubytastic

+0

Dies wird nicht jeden Befehl protokollieren. Wenn Sie möchten, dass jeder Befehl protokolliert wird, fügen Sie eine weitere Zeile hinzu: log_min_duration_statement = 0 –

3

auf die neueste Version ist auf

/Users/USERNAME/Library/Containers/com.heroku.postgres/Data/Library/Application Support/Postgres/var/postgresql.conf 

psql -U existingdatabase_name_here 

then SHOW config_file;