Ruby on rails 从Rails中查找postgresql查询PID(跟踪查询的ID)
在Rails中,我将启动一个常规查询,例如:Ruby on rails 从Rails中查找postgresql查询PID(跟踪查询的ID),ruby-on-rails,postgresql,activerecord,Ruby On Rails,Postgresql,Activerecord,在Rails中,我将启动一个常规查询,例如: MyTable.where("user_id = ?",5) [我正在运行的实际查询需要很长时间,因此我将有时间执行下一步。] 然后,在Postgres中,我运行以下命令: SELECT * FROM pg_stat_activity; 这将向数据库返回当前查询的列表,其中包含PID和其他信息。该列表中包括我的查询,我知道,因为它显示正在运行的查询参数。我的问题是如何跟踪某个查询?在rails中启动查询后,我想知道查询的PID和“pg_stat_
MyTable.where("user_id = ?",5)
[我正在运行的实际查询需要很长时间,因此我将有时间执行下一步。]
然后,在Postgres中,我运行以下命令:
SELECT * FROM pg_stat_activity;
这将向数据库返回当前查询的列表,其中包含PID和其他信息。该列表中包括我的查询,我知道,因为它显示正在运行的查询参数。我的问题是如何跟踪某个查询?在rails中启动查询后,我想知道查询的PID和“pg_stat_activity”表可以提供的其他信息,但除了匹配查询文本或尝试比较时间戳的黑客方法外,我无法找到确切的查询
任何想法都将不胜感激。
谢谢 如果这是您在rails应用程序中运行的唯一查询,您可以查看应用程序名称列以将其与其他查询区分开
如果没有,我想不出任何其他方法来比较实际查询如果这是您在rails应用程序中运行的唯一查询,您可以查看应用程序名称列以将其与其他查询区分开来
如果没有,,除了比较实际查询之外,我想不出任何其他方法了您可以首先从客户端应用程序获取pid,选择pg_backend_pid pid不引用查询,而是引用整个客户端会话。您可以首先从客户端应用程序获取pid,选择pg_backend_pid pid不引用查询,而是引用整个客户端会话