Postgresql 客户端Postgres日志记录

Postgresql 客户端Postgres日志记录,postgresql,logging,Postgresql,Logging,我需要分析由web应用程序生成的Postgres查询。但是,服务器端日志记录并没有启用,因为它是一个被许多其他开发人员使用的数据库,所以我没有打开它的权限。对于那些熟悉MSSQL的人来说,像SQL Profiler这样的工具将是理想的选择,但我的搜索还没有找到任何类似于Postgres的工具。我当然会满足于创建一个可以检查的日志文件 有人知道一种不需要直接调试web应用程序的方法吗 提前谢谢! -史蒂夫 PS请不要使用Windows工具/解决方案,我正在运行Linux和Mac OSX。如果您在数

我需要分析由web应用程序生成的Postgres查询。但是,服务器端日志记录并没有启用,因为它是一个被许多其他开发人员使用的数据库,所以我没有打开它的权限。对于那些熟悉MSSQL的人来说,像SQL Profiler这样的工具将是理想的选择,但我的搜索还没有找到任何类似于Postgres的工具。我当然会满足于创建一个可以检查的日志文件

有人知道一种不需要直接调试web应用程序的方法吗

提前谢谢! -史蒂夫


PS请不要使用Windows工具/解决方案,我正在运行Linux和Mac OSX。

如果您在数据库系统中具有超级用户访问权限,则可以运行

SET log_statements = all;
SET client_min_messages = log;

并查看客户端的语句日志。

查看您正在使用的驱动程序(JDBC、ODBC等)的日志功能。您可能还想查看该模块(尽管它也是服务器端的),您可以在应用程序和Postgres之间设置某种代理,在将其传递给DB之前记录所有SQL。您有什么权限?你在数据库系统中有超级用户访问权限吗?我有超级用户权限,但没有权限,如果有意义的话。我对postgres服务器所做的任何更改都必须由高层负责,并且需要相当长的准备时间。我倾向于使用Igor和Pavel提到的代理。