Skip to content

# Comparing pg_stat_monitor and pg_stat_statements

The `pg_stat_monitor` extension is developed on the basis of `pg_stat_statements` as its more advanced replacement.

Thus, `pg_stat_monitor` inherits the columns available in `pg_stat_statements` plus provides additional ones.

To see all available columns, run the following command from the `psql` terminal:

     postgres=# \d pg_stat_monitor;

The following table compares the `pg_stat_monitor` view with that of `pg_stat_statements`.

Note that the column names differ depending on the PostgreSQL version you are running.

Column name for PostgreSQL 13 and above | Column name for PostgreSQL 11 and 12 | pg_stat_monitor | pg_stat_statements
--- | --- | --- | ---
bucket | bucket |  |
bucket_start_time | bucket_start_time |  |
userid | userid |  |
datname | datname |  |
toplevel1 |  |  |
client_ip | client_ip |  |
queryid | queryid |  |
planid | planid |  |
query_plan | query_plan |  |
top_query | top_query |  |
top_queryid | top_queryid |  |
query | query |  |
application_name | application_name |  |
relations | relations |  |
cmd_type | cmd_type |  |
elevel | elevel |  |
sqlcode | sqlcode |  |
message | message |  |
plans_calls | plans_calls |  |
total_plan_time |  |  |
min_plan_time |  |  |
max_plan_time |  |  |
mean_plan_time |  |  |
stddev_plan_time |  |  |
calls | calls |  |
total_exec_time | total_time |  |
min_exec_time | min_time |  |
max_exec_time | max_time |  |
mean_exec_time | mean_time |  |
stddev_exec_time | stddev_time |  |
rows_retrieved | rows_retrieved |  |
shared_blks_hit | shared_blks_hit |  |
shared_blks_read | shared_blks_read |  |
shared_blks_dirtied | shared_blks_dirtied |  |
shared_blks_written | shared_blks_written |  |
local_blks_hit | local_blks_hit |  |
local_blks_read | local_blks_read |  |
local_blks_dirtied | local_blks_dirtied |  |
local_blks_written | local_blks_written |  |
temp_blks_read | temp_blks_read |  |
temp_blks_written | temp_blks_written |  |
blk_read_time | blk_read_time |  |
blk_write_time | blk_write_time |  |
resp_calls | resp_calls |  |
cpu_user_time | cpu_user_time |  |
cpu_sys_time | cpu_sys_time |  |
wal_records | wal_records |  |
wal_fpi | wal_fpi |  |
wal_bytes | wal_bytes |  |
state_code | state_code |  |
state | state |  |

To learn more about the features in `pg_stat_monitor`, please see the User guide.

Additional reading: pg_stat_statements

1. Available starting from PostgreSQL 14 and above ↩

Last update: 2021-11-16
Back to top