Skip to main content
This page lists every metric exposed by the ClickHouse Managed Postgres Prometheus endpoint. For setup and authentication, see the Prometheus endpoint page.

Common labels

Every metric carries the following labels: Some metrics add a label for the dimension they break out (e.g. mode on CPU metrics, state on connections, database on database size, wait on wait events). Those are listed alongside each metric.

Information metric

PostgresServiceInfo is a gauge that always equals 1 and carries the service’s current status and version on its labels. Use it to join status onto other metrics or to alert on a service leaving the running state. postgres_status reports the current lifecycle state of the service (for example running, creating, stopped). postgres_version reports the major Postgres version (e.g. 17, 18).

Capacity

Static limits provisioned for the service. These change only when the service is resized.

Resource utilization

To compute CPU usage as a percentage, take the rate of PostgresServer_CPUSeconds_Total over the modes you care about and divide by PostgresServer_CPUCores.

Disk and network I/O

Database activity

Cumulative counters since service start. Use rate() or irate() to turn them into per-second values.

Query performance

Counters from recorded Query Insights events, excluding UTILITY operations.

Connections, cache, and database size

Wait events

Gauges from the wait samples that ClickHouse Managed Postgres takes on the primary every 30 seconds. These are the same samples behind the wait charts in Query insights. A series appears only while there’s something to report: an idle service has no wait series, and PostgresServer_LockWaitMaxSeconds appears only while a session is blocked on a lock. To count the sessions blocked on locks, sum the Lock wait events: