显示在触发器postgres内启动的查询

时间:2012-11-27 14:08:06

标签: postgresql logging triggers

我正在寻找一种方法来记录在触发器程序中启动的查询。设定后: log_statement ='mod'  在配置中,我可以看到由应用程序启动的查询,但是选择的插入和在触发器过程中启动的其他查询在日志文件中不可用。有没有办法显示这些查询

1 个答案:

答案 0 :(得分:1)

试试这个http://www.postgresql.org/docs/current/static/pgstatstatements.html 它创建一个包含所有查询的特殊表,服务器执行。

您需要pg_stat_statements.track ('all')

如果您只需要跟踪触发器的语句,请考虑在将调用触发器的查询之前设置pg_stat_statements.track ('none')然后pg_stat_statements.track ('all')。触发后再次pg_stat_statements.track ('none')