trace_userlocks
是一个用于在 PostgreSQL 日志文件中输出关于咨询(用户)锁 使用情况信息的开发 配置参数。
trace_userlocks
在 PostgreSQL 7.1 中添加。
用法
trace_userlocks
是一个开发人员 GUC,仅在编译 PostgreSQL 时在 src/include/pg_config_manual.h 中定义了宏 LOCK_DEBUG
时可用。
启用 trace_userlocks
后,关于咨询锁使用情况的信息将以 LOG
级别写入 PostgreSQL 日志输出。请参见下面的示例。
默认值
trace_userlocks
的默认值为:off
。
变更历史
- PostgreSQL 7.1
- 添加(提交 6a68f426)
示例
启用 trace_userlocks
时的日志输出示例
[2023-12-11 19:58:28 UTC] psql postgres postgres STATEMENT: SELECT pg_advisory_lock(id) FROM foo WHERE id = 123; [2023-12-11 19:58:30 UTC] psql postgres postgres LOG: statement: SELECT pg_advisory_unlock(id) FROM foo WHERE id = 123; [2023-12-11 19:58:30 UTC] psql postgres postgres LOG: LockReleaseAll: lockmethod=2 [2023-12-11 19:58:30 UTC] psql postgres postgres STATEMENT: SELECT pg_advisory_unlock(id) FROM foo WHERE id = 123; [2023-12-11 19:58:30 UTC] psql postgres postgres LOG: LockReleaseAll done [2023-12-11 19:58:30 UTC] psql postgres postgres STATEMENT: SELECT pg_advisory_unlock(id) FROM foo WHERE id = 123;
参考文献
- PostgreSQL 文档: trace_userlocks