调试 – 如何使用pg_stat_activity?

我想看看在一个实际的Django应用程序中执行哪些查询,以及他们正在占用多少内存.我读过pg_stat_activity可以用来监视Postgres数据库.

我有looked at the Postgres documentation,但我有一个非常简单的问题似乎没有回答.

如何实际开始使用pg_stat_activity?我用什么键入,我在哪里键入?

this closely related answer.

pg_stat_activity是pg_catalog模式中的一个视图.

您可以像任何其他表格一样从它中进行查询,例如SELECT * FROM pg_stat_activity.您链接的手册页解释其列.

你有时会发现自己想加入其他表格,如pg_class(tables),pg_namespace(schemas)等.

pg_stat_activity不会公开有关后端内存使用的信息.您需要使用操作系统级别的设施.它会告诉您进程ID,活动用户,当前正在运行的查询,活动状态,上次查询开始的时间等.它有助于识别事务会话中长时间运行的空闲,运行查询等等.

坦白说,Postgresql的内置监控是相当初步的.这是不是那么令人兴奋的领域之一,商业客户往往不愿意资助它.大多数人和Icinga和Munin一起工作,如check_postgres,或使用Zabbix或其他外部监控代理.

在你的情况下,这听起来像你真的想要使用适当的日志设置pg_stat_statements和/或PgBadger日志分析以及可能的auto_explain模块.

相关文章

项目需要,有个数据需要导入,拿到手一开始以为是mysql,结果...
本文小编为大家详细介绍“怎么查看PostgreSQL数据库中所有表...
错误现象问题原因这是在远程连接时pg_hba.conf文件没有配置正...
因本地资源有限,在公共测试环境搭建了PGsql环境,从数据库本...
wamp 环境 这个提示就是说你的版本低于10了。 先打印ph...
psycopg2.OperationalError: SSL SYSCALL error: EOF detect...