About PMP4PG
The Project
PMP4PG — Proactive Monitoring Platform for PostgreSQL — was born from a simple observation: PostgreSQL is a world-class database engine, but the ecosystem lacks the deep, integrated performance analysis tooling that Oracle DBAs have relied on for decades with OEM and AWR.
PMP4PG was built to close that gap. Inspired by Oracle's Active Session History (ASH) and Automatic Workload Repository (AWR), it brings the same analytical philosophy — proactive, snapshot-based, workload-centric monitoring — natively to PostgreSQL.
The result is a platform that gives PostgreSQL DBAs, DevOps engineers and developers the visibility they need to understand, diagnose and optimize their database workloads at any timescale: from the last 2 seconds to the last 90 days.
What Makes PMP4PG Different
Most PostgreSQL monitoring solutions focus on infrastructure metrics — CPU, memory, connection counts. PMP4PG goes deeper:
- Workload-centric — every metric is tied to what the database was actually doing, not just resource consumption numbers
- Snapshot-based analysis — AWR-style reports compare any two points in time, revealing regressions invisible to real-time dashboards
- Near-real-time ASH — 2-second sampling of
pg_stat_activitygives second-level diagnostic resolution during incidents - Long-term trends — history tables retain months of aggregated data for capacity planning
Technology Stack
| Component | Technology |
|---|---|
| Agent | Go — lightweight, single binary, minimal footprint |
| Backend | Java 21 / Spring Boot — robust REST API and AWR engine |
| Repository | PostgreSQL + TimescaleDB — the platform that monitors itself |
| Frontend | Angular + PrimeNG — responsive, chart-rich web interface |
Data Resilience
PMP4PG is developed and maintained by Data Resilience, a company focused on database reliability, performance engineering and observability solutions for modern data infrastructure.
Version
Current stable release: v1.0.0
See the full Changelog → for release history and upcoming features.
Contact
Have a question, a feature request, or want to report an issue?