</para>
</listitem>
<!--
Author: Masahiko Sawada <msawada@postgresql.org>
2024-08-13 [4c1b4cdb8] Add resource statistics reporting to ANALYZE VERBOSE.
Author: Masahiko Sawada <msawada@postgresql.org>
2024-09-09 [bb7775234] Add WAL usage reporting to ANALYZE VERBOSE output.
-->
<listitem>
<para>
Add WAL, CPU, and average read statistics output to ANALYZE VERBOSE (Anthonin Bonnefoy)
<ulink url="&commit_baseurl;4c1b4cdb8">§</ulink>
<ulink url="&commit_baseurl;bb7775234">§</ulink>
</para>
</listitem>
<!--
Author: Michael Paquier <michael@paquier.xyz>
2025-02-17 [6a8a7ce47] Add information about WAL buffers full to VACUUM/ANALYZE
-->
<listitem>
<para>
Add full WAL buffer count to VACUUM/ANALYZE (VERBOSE) and autovacuum log output (Bertrand Drouvot)
<ulink url="&commit_baseurl;6a8a7ce47">§</ulink>
</para>
</listitem>
<!--
Author: Michael Paquier <michael@paquier.xyz>
2024-12-19 [9aea73fc6] Add backend-level statistics to pgstats
Author: Michael Paquier <michael@paquier.xyz>
2025-03-03 [3f1db99bf] Handle auxiliary processes in SQL functions of backend s
-->
<listitem>
<para>
Add per-backend I/O statistics reporting (Bertrand Drouvot)
<ulink url="&commit_baseurl;9aea73fc6">§</ulink>
<ulink url="&commit_baseurl;3f1db99bf">§</ulink>
</para>
<para>
The statistics are accessed via pg_stat_get_backend_io(). Per-backend I/O statistics can be cleared via pg_stat_reset_backend_stats().
</para>
</listitem>
<!--
Author: Michael Paquier <michael@paquier.xyz>
2025-01-14 [f92c854cf] Make pg_stat_io count IOs as bytes instead of blocks for
-->
<listitem>
<para>
Add pg_stat_io columns to report I/O activity in bytes (Nazir Bilal Yavuz)
<ulink url="&commit_baseurl;f92c854cf">§</ulink>
</para>
<para>
The new columns are read_bytes, write_bytes, and extend_bytes. The op_bytes column, which always equaled BLCKSZ, has been removed.
</para>
</listitem>
<!--
Author: Michael Paquier <michael@paquier.xyz>
2025-02-04 [a051e71e2] Add data for WAL in pg_stat_io and backend statistics
Author: Michael Paquier <michael@paquier.xyz>
2025-02-20 [4538bd3f1] doc: Add details about object "wal" in pg_stat_io
Author: Michael Paquier <michael@paquier.xyz>
2025-03-06 [7f7f324eb] Add more monitoring data for WAL writes in the WAL recei
-->
<listitem>
<para>
Add WAL I/O activity rows to pg_stat_io (Nazir Bilal Yavuz, Bertrand Drouvot, Michael Paquier)
<ulink url="&commit_baseurl;a051e71e2">§</ulink>
<ulink url="&commit_baseurl;4538bd3f1">§</ulink>
<ulink url="&commit_baseurl;7f7f324eb">§</ulink>
</para>
<para>
This includes WAL receiver activity and a wait event for such writes.
</para>
</listitem>
<!--
Author: Michael Paquier <michael@paquier.xyz>
2025-02-26 [6c349d83b] Re-add GUC track_wal_io_timing
-->
<listitem>
<para>
Change server variable track_wal_io_timing to control tracking WAL timing in pg_stat_io instead of pg_stat_wal (Bertrand Drouvot)
<ulink url="&commit_baseurl;6c349d83b">§</ulink>
</para>
</listitem>
<!--
Author: Michael Paquier <michael@paquier.xyz>
2025-02-24 [2421e9a51] Remove read/sync fields from pg_stat_wal and GUC track_w
Author: Michael Paquier <michael@paquier.xyz>
2025-02-26 [6c349d83b] Re-add GUC track_wal_io_timing
-->
<listitem>
<para>
Remove read/sync columns from pg_stat_wal (Bertrand Drouvot)
<ulink url="&commit_baseurl;2421e9a51">§</ulink>
<ulink url="&commit_baseurl;6c349d83b">§</ulink>
</para>
<para>
This removes columns wal_write, wal_sync, wal_write_time, and wal_sync_time.
</para>
</listitem>
<!--
Author: Michael Paquier <michael@paquier.xyz>
2025-03-11 [76def4cdd] Add WAL data to backend statistics
-->
<listitem>
<para>
Add function pg_stat_get_backend_wal() to return per-backend WAL statistics (Bertrand Drouvot)
<ulink url="&commit_baseurl;76def4cdd">§</ulink>
</para>
<para>
Per-backend WAL statistics can be cleared via pg_stat_reset_backend_stats().
</para>
</listitem>
<!--
Author: Nathan Bossart <nathan@postgresql.org>
2024-10-11 [4e1fad378]