无法让 log_min_duration_statement 工作

2023-12-26

我已经用谷歌搜索了两个多小时,但我真的被这个问题困住了。
我希望 PostgreSQL(我在 Debian 上使用 8.4 版)开始仅记录慢速查询。

为此,我在中使用以下配置postgresql.conf:

log_destination = 'csvlog'
logging_collector = on
log_min_messages = log
log_min_duration_statement = 1000
log_duration = on
log_line_prefix = '%t '
log_statement = 'all' 

其余配置全部采用默认设置(已注释掉)。日志记录有效,但它会记录所有语句,甚至是低于 1000(毫秒)阈值的语句。如果我执行“显示全部”,我会看到所有设置均已生效。我还尝试重新启动 Postgres。

我希望有人能帮助我。


log_statement = 'all'

指示服务器记录所有语句,就这么简单。 此外:

log_duration = on

还指示服务器记录所有语句,包括持续时间信息。
将其更改为:

log_statement = none
log_duration = off

无需报价。或者将它们注释掉并重新加载。 然后不会记录任何语句,除了那些运行时间超过 1000 毫秒的语句 - 由以下命令指示:

log_min_duration_statement = 1000

It's 一切都在优秀的手册中 https://www.postgresql.org/docs/current/runtime-config-logging.html#RUNTIME-CONFIG-LOGGING-WHAT.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法让 log_min_duration_statement 工作 的相关文章

随机推荐