Easily collect and report PostgreSQL metrics for scripting, automation and troubleshooting.
pgmetrics is a zero-dependency, single-binary tool
that can collect a lot of information and statistics
from a running PostgreSQL server and
display it in easy-to-read text format or
export it as JSON for scripting.
Collects information about WAL archiving, BG writer, backends (waiting, idling, transaction too long), vacuum progress, replication (primary, standby), replication slots (physical, logical)
Gathers stats about tablespaces (location, disk and inode usage), database sizes, transaction ID wraparound age, commit ratios, bloat, deadlocks, conflicts, cache hit ratio, installed extensions, disabled triggers
Collects stats about last vacuum and analyze runs, changes since last vacuum, HOT update ratio, ins/upd/del ratios, seq and idx scan efficiency, table size and bloat, index hit ratio
Written in Go (Golang). pgmetrics is a zero-dependency, statically-linked single binary executable, available on Linux, Windows and macOS.
Understands most of the same command-line flags and environment variables that psql and other PostgreSQL-bundled CLI tools use.
Released under the Apache 2.0 Open Source license. Lives on GitHub at rapidloop/pgmetrics.