【发布时间】:2011-02-03 13:03:47
【问题描述】:
我想查看 PostgreSQL 日志文件,以了解我的应用程序向它们写入的内容,但我找不到它们。
有什么想法吗?
【问题讨论】:
标签: postgresql logging macos
我想查看 PostgreSQL 日志文件,以了解我的应用程序向它们写入的内容,但我找不到它们。
有什么想法吗?
【问题讨论】:
标签: postgresql logging macos
只需询问您的数据库:
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
当然,您需要将 8.4 替换为您正在运行的任何版本号。
【讨论】:
用于在启动时启动 Postgres 的 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。
【讨论】:
我的 mac 上安装了不同的 Postgresql 版本(带有 macports),所有日志都可以在这里找到
/opt/local/var/log/postgresql84/postgres.log
/opt/local/var/log/postgresql91/postgres.log
/opt/local/var/log/postgresql92/postgres.log
【讨论】:
在 OSX Homebrew 安装中,可以在以下位置找到日志:
/usr/local/var/log/postgres.log
或者对于旧版本的 postgres (
/usr/local/var/postgres/server.log
【讨论】:
/usr/local/var/postgres/postgresql.conf中的一些与日志记录相关的行
Postgresapp 9.3.5.1 及更高版本保留服务器日志。日志位于数据目录中,名为 postgres-server.log。
【讨论】:
如果您使用的是Postgres.app,您可以在“首选项”对话框中找到“数据目录”位置。在该目录中,日志位于postgres-server.log。
例如,在我的机器上,日志位于/Users/nofinator/Library/Application Support/Postgres/var-9.4/postgres-server.log。
【讨论】:
对于使用自制软件安装 postgres 的 Apple M1(Big Sur) 用户,位置为 -
/opt/homebrew/var/log/postgres.log
【讨论】:
对于 macports 的用户,升级到 Big Sur 后,预计会出现 /opt/local/var/log/postgresql11(假设您运行的是 postgresql 11)。
【讨论】:
Postgres 13
在 postgres 版本 13 中,所有日志都按日期顺序排列。 找到它的正确文件夹是:
sudo ls /Library/PostgreSQL/13/data/log
在这里您可以看到为选择任何一个日志文件使用而创建的所有日志文件
sudo vim /Library/PostgreSQL/13/data/log/postgresql-2021-08-20_051906.log
【讨论】: