DocumentationpgSentinel Documentation

pgSentinel Dashboard

Overview Panels

The landing dashboard surfaces pool health, client concurrency, and wait queues. Use the time picker (top-right) to zoom into spikes and set the refresh interval to 5s for live troubleshooting.

  • Pool Saturation: Total connections vs configured limits per pool.
  • Wait Queue Depth: Number of clients waiting for a free backend.
  • Latency Heatmap: 95th percentile response time by pool.

Filtering & Drilldowns

Use the global filters (instance, pool, database) to narrow down to a specific tenant. Each panel supports click-to-drill, opening detailed views with raw metrics and recent events.

  • Click on a pool in Pool Saturation to open the pool detail view (connections, transactions/s, errors).
  • Select a row in the Wait Queue table to list blocked clients and current queries.
  • Toggle Show system metrics to overlay host CPU/RAM metrics alongside pool stats.

Alert Configuration

Alerts configured in the UI write to Prometheus-compatible rules and trigger Slack/PagerDuty webhooks.

Alert thresholds

pgsentinel alerts create \
  --name high_wait_queue \
  --pool primary \
  --expression 'wait_queue_size > 5' \
  --severity warning \
  --webhook https://hooks.slack.com/services/T000/B000/XXXXX

Alert definitions are stored in pgsentinel.alert_rules; export them to version control with the REST API for reproducible configuration.

Exporting & Embedding Panels

Every chart can be exported as JSON or embedded in external dashboards.

  • Use the panel menu → Export data to download CSV snapshots.
  • Copy the Embed link to display charts in Confluence, Statuspage, or custom portals.
  • Enable PGSENTINEL_EMBED_TOKEN to protect embedded panels with signed URLs.