PostgreSQL在Mac OS X上的日志记录在哪里?

bas*_*ode 93 postgresql macos logging

我想看看PostgreSQL日志文件,看看我的应用程序写给他们但我找不到它们.

有任何想法吗?

Mik*_*maa 141

在OSX Homebrew安装上,可以在以下位置找到日志:

/usr/local/var/log/postgres.log 
Run Code Online (Sandbox Code Playgroud)

要么

/usr/local/var/postgres/server.log
Run Code Online (Sandbox Code Playgroud)

(第一个是版本<9.6,第二个是版本> = PostgreSQL的9.6)

  • 如果您通过自制程序安装了特定版本,则路径可能会有所不同,例如“/opt/homebrew/var/log/postgresql@14.log” (4认同)
  • 我不得不在 `/usr/local/var/postgres/postgresql.conf` 中取消注释一些与日志相关的行 (2认同)

Fra*_*ens 62

只要问你的数据库:

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

就我而言,它位于"/Library/PostgreSQL/8.4/data/pg_log"

  • 如果您的数据库无法启动并且您不知道日志文件的位置,则这不起作用. (38认同)

jpa*_*kal 38

plist用于启动您在启动的Postgres也可以设置日志文件:

$ 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>
Run Code Online (Sandbox Code Playgroud)

所以在这种情况下,/usr/local/var/postgres/server.log.


Jer*_*hka 34

在OS X上,如果您正在使用PostgreSQL的EnterpriseDB安装,那么您的日志文件将在其中 /Library/PostgreSQL/8.4/data/pg_log

当然,您需要将8.4替换为您正在运行的版本号.


Rav*_*pta 17

对于使用自制软件安装 postgres 的 Apple M1(Big Sur / Monterey)用户,位置是 -

/opt/homebrew/var/log/postgres.log
Run Code Online (Sandbox Code Playgroud)


nof*_*tor 6

如果您使用的是Postgres.app,则可以在"首选项"对话框中找到"数据目录"位置.在该目录中,日志位于postgres-server.log.

例如,在我的机器上,日志位于/Users/nofinator/Library/Application Support/Postgres/var-9.4/postgres-server.log.