我正在尝试使用 pg_stat_statements 编写一个查询来查找数据库中运行的查询所用的时间。我想知道如果数据库中没有事务,视图将仅显示旧数据吗?数据何时会从视图中清除?我只想要过去几分钟内运行的那些查询(建议我使用替代视图或任何实现此目的的方法)....
提前致谢......
pg_stat_statements
收集并显示的统计数据是累积的,也就是说,您会看到自安装以来或自上次调用pg_stat_statements_reset()
重置统计数据以来发生的所有事情的总和。
要从
pg_stat_statements
获取有意义的数据,要么定期重置统计数据,要么(更好)使用像 pgWatch2 这样定期拍摄数据快照的监控程序。通过计算此类快照之间的差异,您可以获得有关该时间间隔内的工作负载的数据。