postgresql - 在终端显示Postgres服务器日志输出,同时记录到日志中

标签 postgresql

我正在运行 Postgres 9.1(Mac OSX 上的 Homebrew 安装),我想更密切地监控我的 postgres 服务器。

我的问题与日志有关。我想让日志显示在终端 Pane 中。这是 Postgres docs 的内容说说日志:

"在类 Unix 系统上,默认情况下,服务器的标准输出和标准错误被发送到 pg_ctl 的标准输出(不是标准错误)。然后 pg_ctl 的标准输出应该被重定向到一个文件或管道到另一个进程,例如作为像 rotatelogs 这样的日志轮转程序;否则 postgres 会将其输出写入控制终端(从后台)并且不会离开 shell 的进程组。在 Windows 上,默认情况下服务器的标准输出和标准错误被发送到终端。可以通过使用 -l 将服务器的输出附加到日志文件来更改这些默认行为。建议使用 -l 或输出重定向。”

因此,当我使用以下命令运行我的 postgres 服务器时:

pg_ctl start -D /usr/local/var/postgres

日志显示在终端窗口中。当我运行时:

pg_ctl start -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log

日志转到我的日志文件,不显示在终端中。

简而言之,如果有人能告诉我在将日志定向到文件(使用第二个命令)后使用什么命令使日志也出现在命令行中,那就太好了。当我(在 Django 中)进行开发时,它有助于实时观察 SQL 语句的执行情况。

最佳答案

您可以使用以下命令查看日志:

tail -f /usr/local/var/postgres/server.log

关于postgresql - 在终端显示Postgres服务器日志输出,同时记录到日志中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11805720/

相关文章:

ruby-on-rails - 行为不端 db :seed in Rails

sql - 哪个查询计划更快/更好

c - "Relation does not exist"错误,仅适用于 libpq

python - 使用 Python 生成文件创建日期和最后修改日期

mysql - sql唯一复合外键

sql - 提高属性/值表的数据库效率

ruby-on-rails - Heroku:为什么有这么多数据库连接?

postgresql - 在文本文件中记录 PostgreSQL session

postgresql - 在数据库上实现大规模调度程序

sql - PostgreSQL 计数数组值