Antananarivo, Madagascar - October 20, 2026

## pgCluu

**PostgreSQL Cluster Utilization**

pgCluu is a Perl program used to perform a full audit of a PostgreSQL
Cluster performances. It is divided in two parts, a collector used to
grab statistics on the PostgreSQL server using psql and sar, a reports
builder that will generate all HTML and charts output.

Version 6.0 of pgCluu have been released, this is a major release that
adds several new features and reports. It also fixes issues reported
since the last release.

New features:

  - Add report about replication slots retrieved from pg_replication_slots.
  - Add collect of pg_hba_file_rules
  - Limit wait event reporting to those that represent more than 0.1 percent
    of the total of the wait event observed.
  - Add collect of I/O statistics from pg_stat_io (PG16+)
  - Add reports about:
      - I/O throughput per backend type
      - shared buffers writers and evictions
      - buffer hit ratio and ring buffers
      - I/O latency and size
      - WAL I/O
      - temporary relations I/O
      - asynchronous I/O (PG18+)
  - Add collect more kernel tuning parameters, remove shmmax and shmall
      - vm.dirty_expire_centisecs and vm.dirty_writeback_centisecs, they were
        not matched by the sysctl filter, and all other vm.dirty_* parameters,
      - vm.min_free_kbytes, vm.watermark_scale_factor and kernel.numa_balancing,
      - net.core.somaxconn, net.ipv4.ip_local_port_range, net.core.rmem_max,
        net.core.wmem_max, fs.file-max and fs.nr_open,
      - /sys/kernel/mm/transparent_hugepage/shmem_enabled: PostgreSQL shared
        memory is anonymous shared memory, this is the setting that applies to
        the shared buffers, not 'enabled',
      - the frequency governor of all CPUs instead of cpu0 only, the cpuidle
        driver, the intel_pstate status and energy performance preference, and
        the number of NUMA nodes,
      - read_ahead_kb, nr_requests, max_sectors_kb and wbt_lat_usec of each
        block device.
  - Collect and report the limits of the postmaster process. pgcluu_collectd now
    saves in a new POSTMASTER section of sysinfo.txt:
      - the pid of the postmaster, found as the parent of the checkpointer
        (its /proc entry is readable by any user) or read from postmaster.pid
        before PostgreSQL 10,
      - oom_score_adj, -1000 is recommended for the postmaster,
      - the soft and hard limits of open files, processes and locked memory,
      - the cgroup limits: memory.max, memory.high, memory.swap.max, cpu.max,
        cpu.weight, io.max, pids.max and the oom/oom_kill counters of
        memory.events with cgroup v2 (also in hybrid mode), memory and cpu
        quota limits with cgroup v1.
    pgcluu and pgcluu.cgi show them in the Kernel panel of the system
    information with sizes and CPU quotas formatted, and a tooltip for
    oom_score_adj and the process limits.
  - Add kernel pressure stall information and memory events reports.
    pgcluu_collectd now appends at each run to kernel_stats.csv the cumulative
    counters of:
      - the pressure stall information (PSI) of the host (/proc/pressure, kernel
        4.20+) and of the cgroup v2 of the postmaster (cpu, memory and io
        pressure),
      - the memory events of the cgroup of the postmaster (high, max, oom and
        oom_kill from memory.events),
      - /proc/vmstat counters not reported by sar: direct reclaims (allocstall),
        memory compaction, transparent huge pages allocations and fallbacks,
        OOM kills, NUMA allocations and page cache refaults.
    - pgcluu and pgcluu.cgi have two new pages in the System menu:
      - Pressure stall information: percentage of time with some or all tasks
        stalled on CPU, memory or I/O for the host and the PostgreSQL cgroup,
      - Kernel memory events: allocation stalls and compaction, transparent huge
        pages, OOM kills, cgroup memory events, page cache refaults and NUMA
        allocations.

See [ChangeLog](https://github.com/darold/pgcluu/releases/tag/v5.0) for
a complete list of changes, bug fixes and acknowledgements.

## About pgCluu:

The goal of this project is to provide a complete PostgreSQL auditing
tool that don't need any dependency to be run easily to audit a local
or remote server.

If you just have a sar output file, pgCluu can be use to draw graphs
about the system utilization only.

###Credits

pgCluu is an original collection of tools built during my work at
[Dalibo](https://www.dalibo.com) and [HexaCluster](https://hexacluster.ai/).
The tools are published under the PostgreSQL License.

pgCluu is created and maintained by Gilles Darold. Any contribution to
build a better tool is welcome. You can send your ideas, features requests
or patches using the GitHub tools.

###Links

View a sample report at 
[http://pgcluu.darold.net/example/index.html](http://pgcluu.darold.net/example/index.html)


* Web site: [http://pgcluu.darold.net/](http://pgcluu.darold.net/)
* Download: 
[https://github.com/darold/pgcluu/releases](https://github.com/darold/pgcluu/releases)
* Development: 
[https://github.com/darold/pgcluu](https://github.com/darold/pgcluu)
* Documentation: 
[https://github.com/darold/pgcluu/blob/master/README](https://github.com/darold/pgcluu/blob/master/README)

Reply via email to