PostgreSQL Alert Runbooks¶
These runbooks cover the alerts of a PostgreSQL instance.
Before you start¶
The credentials on the instance detail page are for the postgres superuser.
You can run all queries on these pages with them, for example with psql. See
Connecting to your instance.
General alerts¶
These alerts exist for all services. The pages below add the steps for PostgreSQL to the general runbook.
| Alert | Severity | Fires when |
|---|---|---|
| MemoryCritical | critical |
Memory usage of the database processes is above 85% of the limit for 2 hours |
| PersistentVolumeExpectedToFillUp | critical |
Less than 15% storage is free, and the volume will be full within 4 days at the current rate, for 1 hour |
| PersistentVolumeFillingUp | critical |
Less than 3% storage is free, for 15 minutes |
PostgreSQL alerts¶
These alerts exist only for PostgreSQL.
| Alert | Severity | Fires when |
|---|---|---|
| CNPGClusterOffline | critical |
No database instance is running, for 5 minutes |
| CNPGClusterLowDiskSpaceCritical | critical |
More than 90% of a database volume is used, for 5 minutes |
| CNPGClusterLowDiskSpaceWarning | warning |
More than 70% of a database volume is used, for 5 minutes |
| PostgreSQLConnectionsCritical | critical |
More than 90% of the allowed connections are in use, for 2 hours |
| CNPGClusterHighConnectionsWarning | warning |
More than 80% of the allowed connections are in use, for 5 minutes |
| PostgreSQLLongRunningTransaction | warning |
A transaction runs for more than 5 minutes |
| PostgreSQLBackendsWaiting | warning |
More than 300 connections wait for a lock, for 5 minutes |
| PostgreSQLDeadlockConflicts | warning |
A database has more than 10 deadlocks |
Shared steps¶
- Free up storage: find what uses the space and remove it.