Où sont les journaux PostgreSQL sur macOS?

103

Je voudrais jeter un œil aux fichiers journaux PostgreSQL pour voir ce que mon application leur écrit mais je ne les trouve pas.

Des idées?

basilikode
la source

Réponses:

35

Sous OS X, si vous utilisez l'installation EnterpriseDB de PostgreSQL, vos fichiers journaux seront dans /Library/PostgreSQL/8.4/data/pg_log

Bien sûr, vous voudrez remplacer 8.4 par le numéro de version que vous utilisez.

Jérémie Peschka
la source
172

Sur l'installation d'OSX Homebrew, le journal peut être trouvé à l'adresse suivante:

/usr/local/var/log/postgres.log 

ou pour une ancienne version de postgres (<9.6)

/usr/local/var/postgres/server.log
Mikko Ohtamaa
la source
1
J'ai dû décommenter certaines lignes liées à la journalisation dans/usr/local/var/postgres/postgresql.conf
raine
63

Demandez simplement à votre base de données:

SELECT 
    * 
FROM 
    pg_settings 
WHERE 
    category IN( 'Reporting and Logging / Where to Log' , 'File Locations')
ORDER BY 
    category,
    name;

Dans mon cas, c'est dans "/Library/PostgreSQL/8.4/data/pg_log"

Frank Heikens
la source
1
hmm, dans mon cas, c'est stderr: / sql résultat comme csv ici: pastebin.com/20C92z2v
basilikode
u J'aime la solution "multiplateforme"
basilikode
41
Cela ne fonctionne pas si votre base de données n'a pas pu démarrer et que vous ne savez pas encore où se trouvent les fichiers journaux.
Iain Samuel McLean Elder
41

L' plistutilisé pour lancer votre Postgres au démarrage peut également définir le fichier journal:

$ dir ~/Library/LaunchAgents
org.postgresql.postgres.plist

$ cat ~/Library/LaunchAgents/org.postgresql.postgres.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  [...]
  <key>StandardErrorPath</key>
  <string>/usr/local/var/postgres/server.log</string>
</dict>
</plist>

Donc, dans ce cas /usr/local/var/postgres/server.log,.

lambshaanxy
la source
6

Si vous utilisez Postgres.app , vous pouvez trouver l'emplacement du répertoire de données dans la boîte de dialogue Préférences. Dans ce répertoire, le journal est àpostgres-server.log .

Par exemple, sur ma machine, le journal est à /Users/nofinator/Library/Application Support/Postgres/var-9.4/postgres-server.log.

nofinator
la source
2

J'ai différentes versions de Postgresql installées sur mon mac (avec macports), et tous les journaux peuvent être trouvés ici

/opt/local/var/log/postgresql84/postgres.log
/opt/local/var/log/postgresql91/postgres.log
/opt/local/var/log/postgresql92/postgres.log
plang
la source
0

Postgresapp 9.3.5.1 et versions ultérieures conservent un journal du serveur. Le journal se trouve dans le répertoire de données, nommé postgres-server.log.

Martin Sommer
la source
-1

Regardez dans le dossier / var / log / pg_log /

systempuntoout
la source
1
Pas là, probablement parce que vous avez utilisé le package MacOS EnterpriseDB.
basilikode