Postgres以编程方式打开log_statement

时间:2010-05-22 15:06:27

标签: postgresql logging psycopg2

我想打开修改数据库的所有SQL语句的日志记录。我可以通过在配置文件中设置log_statement标志来在我自己的机器上获得它,但需要在用户的机器上启用它。如何从程序代码中启用它? (如果重要的话,我正在使用Python和psycopg2。)

1 个答案:

答案 0 :(得分:1)

“需要在用户的计算机上启用”短语令人困惑,确实......我认为你的意思是“来自用户(客户端)”

在Postgresql中,某些server run-time parameters可以从连接更改,但只能从超级用户更改 - 并且仅适用于那些不需要重新启动服务器的设置。 我不确定这是否包含许多日志选项。您可以尝试使用以下内容:

SELECT set_config('log_XXX', 'off', false);

其中log_XXX将被相应的logging setting'false'替换为您要设置的值。

如果这不起作用,我猜你运气不好。