在PostgreSQL 9.6中,慢查询日志记录在哪里?

4

我已经配置了postgresql.conf文件,记录运行时间超过100毫秒的查询。

在9.6版本中,日志文件在哪里可以看到?

我在C:\PostgreSQL\data\pg96文件夹中没有找到任何文件。


这不是专用的额外日志文件。它在常规的Postgres日志文件中。如果您运行SQL语句 show log_directory,它将向您显示日志文件存储在哪个目录中。 - user330315
3个回答

4

1) 确保启用了log_statement log_statement = 'all'

2) 检查log_destinationlog_directory

3) 重新启动Postgres


2
我强烈推荐使用pg_stat_statements扩展程序。它可以收集关于最慢查询的很多有用的统计信息。
您只需要注意设置pg_stat_statements.max,因为如果尝试记录太多查询,则可能会导致内存问题。但这取决于您拥有多少内存和连接数。因此,很难给出任何统一的建议。例如,请参见此处 - 使用pg_stat_statements收集大型统计数据集?

0

我明白了 C:\PostgreSQL\data\logs\pg96


您可以使用pgbadger开源工具,它将生成一个HTML报告,其中包含最慢查询的完整信息,包括查询和执行持续时间。 - Pawan Sharma
@PawanSharma 谢谢。我会看一下的。 - Sajeev
@PawanSharma 我该如何安装这个工具。在Github上只找到了源代码。 - Sajeev
请使用 https://github.com/dalibo/pgbadger 链接安装...这是一个开源工具。 - Pawan Sharma
@PawanSharma。很抱歉,我对这种包的知识有限。 我可以将该包下载为zip文件。README文件解释了它的工作原理。但是,我该如何安装并连接到我的Postgers服务器呢? 我最初正在寻找一些二进制文件进行安装。您能指导我如何安装此软件包吗? - Sajeev
安装步骤已经在 Github 的 pgbadger 链接中提到,它不需要与 PostgreSQL 数据库建立任何连接。该工具会将 PostgreSQL 日志解析为 HTML 格式。 - Pawan Sharma

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接