我按照How to log PostgreSQL queries?中的说明进行操作,但是日志记录收集器保持关闭状态。
postgres=# show logging_collector;
logging_collector
-------------------
off
(1 row)
我的postgresql.conf文件看起来像这样:
listen_addresses = '*'
tcpip_socket = true
log_statement = 'all'
log_connections = yes
log_destination = 'syslog'
logging_collector = on
log_directory = '/var/log/pg_log'
log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'
log_truncate_on_rotation = true
log_rotation_age = 1440
client_min_messages = LOG
log_min_messages = INFO
log_min_error_statement = DEBUG5
log_min_duration_statement = 0
答案 0 :(得分:0)
通常足够
pg_reload_config()
重新阅读postgres.conf
https://www.postgresql.org/docs/current/static/functions-admin.html
pg_reload_conf()
导致服务器进程重新加载它们 配置文件
但:
t=# select name,setting,unit,source,context from pg_settings where name = 'logging_collector';
name | setting | unit | source | context
-------------------+---------+------+--------------------+------------
logging_collector | on | | configuration file | postmaster
(1 row)
https://www.postgresql.org/docs/current/static/view-pg-settings.html
postmaster
这些设置只能在服务器启动时应用, 所以任何更改都需要重新启动服务器。这些的价值观 设置通常存储在postgresql.conf文件中,或者传递 在启动服务器时在命令行上。当然,设置 任何较低的上下文类型也可以在服务器启动时设置。
所以这意味着您必须重新启动群集