我想看看 PostgreSQL 日志文件,看看我的应用程序写了什么,但我找不到它们。
有什么想法吗?
只要问问你的数据库:
SELECT * FROM pg_settings WHERE category IN( 'Reporting and Logging / Where to Log' , 'File Locations') ORDER BY category, name;
在我的例子中,它位于“/Library/PostgreSQL/8.4/data/pg _ log”中
在 OS X 上,如果您使用 PostgreSQL 的 EnterpriseDB 安装,那么您的日志文件将位于 /Library/PostgreSQL/8.4/data/pg_log中
/Library/PostgreSQL/8.4/data/pg_log
当然,您会希望用8.4代替正在运行的任何版本号。
用于启动 Postgres 的 plist也可以设置日志文件:
plist
$ 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>
所以在这种情况下,/usr/local/var/postgres/server.log。
/usr/local/var/postgres/server.log
在我的 Mac 上安装了不同的 Postgreql 版本(带有 macports) ,所有日志都可以在这里找到
/opt/local/var/log/postgresql84/postgres.log /opt/local/var/log/postgresql91/postgres.log /opt/local/var/log/postgresql92/postgres.log
在 OSX 家酿安装日志可以找到:
返回文章页面最新自酿:
/opt/homebrew/var/log/postgres.log
或更老:
/usr/local/var/log/postgres.log
或旧版本的 postgres (< 9.6)
额外奖励-检查 PostgreSQL 是否使用 Homebrew 运行:
brew services info --all
Postgreapp 9.3.5.1及更高版本保存一个服务器日志,日志位于 data 目录中,名为 postgres-server. log。
如果使用 后遗症应用程序,则可以在“首选项”对话框中找到“数据目录”位置。在该目录中,日志位于 postgres-server.log。
postgres-server.log
例如,在我的机器上,日志位于 /Users/nofinator/Library/Application Support/Postgres/var-9.4/postgres-server.log。
/Users/nofinator/Library/Application Support/Postgres/var-9.4/postgres-server.log
对于使用自制程序安装 postgres 的 Apple M1(Big Sur/Monterey)用户,位置是-
对于 Macports的用户来说,在升级到 Big Sur 之后,可能会遇到类似于 /opt/local/var/log/postgresql11的东西(假设您正在运行 postgreql 11)。
/opt/local/var/log/postgresql11
邮差13
所有的日志都是按照第13版的日期顺序排列的。 找到它的正确文件夹是:
sudo ls /Library/PostgreSQL/13/data/log
在这里,您可以看到为选择任何一个日志文件而创建的所有日志文件
sudo vim /Library/PostgreSQL/13/data/log/postgresql-2021-08-20_051906.log