【发布时间】:2017-01-29 01:16:16
【问题描述】:
当我的PLPGSQL 函数(Postgres 9.6)中的语句正在运行时,我可以在一行上看到查询,然后在另一行上看到所有参数。 2 行日志记录。比如:
LOG: execute <unnamed>: SELECT * FROM table WHERE field1=$1 AND field2=$2 ...
DETAIL: parameters: $1 = '-767197682', $2 = '234324' ....
是否可以将整个查询记录在 pg_log WITH 查询中已替换的参数并将其记录在 SINGLE 行中?
因为这样可以更轻松地复制/粘贴查询以在另一个终端中重现它,尤其是在查询有几十个参数的情况下。
【问题讨论】:
-
@NickBarnes,谢谢。似乎脚本将是唯一的解决方案。
-
如有必要,您可以在代码中添加
RAISE NOTICE(或类似名称),并记录任何必要的内容。
标签: postgresql logging prepared-statement plpgsql sql-execution-plan