pg_stat_get_backend_io()

返回后端 I/O 统计信息的函数

pg_stat_get_backend_io() 是一个系统函数,用于返回指定后端的 I/O 统计信息。

pg_stat_get_backend_io()PostgreSQL 18 中添加。

用法

pg_stat_get_backend_io ( integer ) →
        setof record (
                OUT backend_type text,
                OUT object text,
                OUT context text,
                OUT reads bigint,
                OUT read_time double precision,
                OUT writes bigint,
                OUT write_time double precision,
                OUT writebacks bigint,
                OUT writeback_time double precision,
                OUT extends bigint,
                OUT extend_time double precision,
                OUT op_bytes bigint,
                OUT hits bigint,
                OUT evictions bigint,
                OUT reuses bigint,
                OUT fsyncs bigint,
                OUT fsync_time double precision,
                OUT stats_reset timestamp with time zone
        )

返回结果集中的字段与 pg_stat_io 视图中的字段相同。

请注意,以下类型的后端不返回统计信息,因为每种类型只有一个,并且可以通过 pg_stat_io 检索。

  • startup process
  • 检查点写入器
  • background writer
  • autovacuum launcher

可以使用 pg_stat_reset_backend_stats() 重置单个后端的统计信息。

变更历史

示例

pg_stat_get_backend_io() 的基本用法示例

postgres=# SELECT *
             FROM pg_stat_get_backend_io( pg_backend_pid() )
            WHERE backend_type = 'client backend'
              AND object = 'relation'
              AND context = 'normal';
-[ RECORD 1 ]--+---------------
backend_type   | client backend
object         | relation
context        | normal
reads          | 122
read_time      | 0
writes         | 0
write_time     | 0
writebacks     | 0
writeback_time | 0
extends        | 49
extend_time    | 0
op_bytes       | 8192
hits           | 11049
evictions      | 0
reuses         | 
fsyncs         | 0
fsync_time     | 0
stats_reset    | 

如果提供不存在的后端 ID,则返回一个空结果集。

postgres=# SELECT * FROM pg_stat_get_backend_io(999);
(0 rows)

分类

服务器统计信息, 系统函数

另请参阅

pg_stat_io, pg_stat_reset_backend_stats()

反馈

提交关于“pg_stat_get_backend_io()”的任何评论、建议或更正 在此处