# Render OpenTelemetry Metrics Reference — Look up supported metrics and their properties.

After you [enable metrics streaming](metrics-streams) for your workspace, Render streams service metrics that pertain to the following categories:

- [CPU](#cpu)
- [Memory](#memory)
- [Network](#network)
- [HTTP requests](#http-requests)
- [Disk usage](#disk-usage)
- [Render Postgres](#render-postgres)
- [Render Key Value](#render-key-value)

All metrics use OpenTelemetry JSON format. The first component of each metric's name is `render.` (e.g., `render.service.memory.usage`).

> *Some observability providers transform metric names to match their conventions.*
>
> For example, Grafana converts the metric `render.service.memory.usage` to `render_service_memory_usage_bytes`.
>
> After you set up your metrics stream, inspect incoming data in your provider's dashboard to verify how it formats Render metrics.

See names, descriptions, and included properties for each reported metric below.

## Universal properties

All reported metrics include the following properties:

| Property | Description |
| --- | --- |
| `service.name` | The name of the service (e.g., `my-service`). Grafana displays this property as `job`. |
| `service.id` | The ID of the service (e.g., `srv-abc123`). |
| `service.instance.id` | For _most_ metrics, this is the ID of the metric's associated service instance (e.g., `srv-abc123-def456`). This is _not_ the case for [HTTP request metrics](#http-requests). Everything before the final hyphen is the service ID (`srv-abc123`), and the final component (`def456`) uniquely identifies the instance. This value enables you to segment metrics by individual instances of a [scaled service](scaling), and to identify when a service's instances are cycled as part of a redeploy. |

The following properties are also universal but optional:

| Property | Description |
| --- | --- |
| `service.project` | The name of the service's associated [project](projects), if it belongs to one (otherwise this property is omitted). |
| `service.environment` | The name of the service's associated [environment](projects), if it belongs to one (otherwise this property is omitted). |

## CPU

These metrics apply to all compute instances and datastores.

###### `render.service.cpu.limit`

The maximum amount of CPU available to a particular service instance (as determined by its instance type).

Includes [universal properties](#universal-properties) only.

###### `render.service.cpu.time`

The cumulative amount of CPU time used by a particular service instance, in seconds.

To visualize changes to CPU load over time, apply a `rate()` function or similar in your observability provider.

Includes [universal properties](#universal-properties) only.

## Memory

These metrics apply to all compute instances and datastores.

###### `render.service.memory.limit`

The maximum amount of memory available to a particular service instance (as determined by its instance type), in bytes.

Includes [universal properties](#universal-properties) only.

###### `render.service.memory.usage`

The amount of memory that a particular service instance is currently using, in bytes.

Includes [universal properties](#universal-properties) only.

###### `render.service.memory.rss`

The amount of anonymous and swap cache memory that a particular service instance is currently using, in bytes.

Includes [universal properties](#universal-properties) only.

###### `render.service.memory.cache`

The amount of page cache memory that a particular service instance is currently using, in bytes.

Includes [universal properties](#universal-properties) only.

## Network

These metrics apply to all compute instances and datastores.

###### `render.service.network.transmit.bytes`

The cumulative number of bytes transmitted by a particular service instance to any destination, including both private network traffic and public internet traffic.

To visualize changes to network traffic over time, apply a `rate()` function or similar in your observability provider.

Includes [universal properties](#universal-properties) only.

###### `render.service.network.receive.bytes`

The cumulative number of bytes received by a particular service instance from any source, including both private network traffic and public internet traffic.

To visualize changes to network traffic over time, apply a `rate()` function or similar in your observability provider.

Includes [universal properties](#universal-properties) only.

## HTTP requests

These metrics apply only to [web services](web-services).

> *HTTP request metrics are not reported per instance.*
>
> Render aggregates these metrics across all instances of a given web service. For these metrics, the value of [`service.instance.id`](#serviceinstanceid) matches that of [`service.id`](#serviceid).

###### `render.service.http.requests.total`

The cumulative number of HTTP requests that a given service has received _across all instances_, segmented by the properties below.

To visualize changes to request load over time, apply a `rate()` function or similar in your observability provider.

Includes [universal properties](#universal-properties), along with the following:

| Property | Description |
| --- | --- |
| `host` | The destination domain for incoming requests. This can be your service's `onrender.com` domain or any [custom domain](custom-domains) you've added. |
| `status_code` | The HTTP status code returned by the service (`200`, `404`, and so on). |

###### `render.service.http.requests.latency`

Provides a particular web service's p50, p95, or p99 response time, in seconds, segmented by the properties below.

Includes [universal properties](#universal-properties), along with the following:

------

###### `quantile`

Indicates the percentile of the provided latency value. One of the following:

- `0.50` (p50)
- `0.95` (p95)
- `0.99` (p99)

###### `host`

The destination domain for incoming requests. This can be your service's `onrender.com` domain or any [custom domain](custom-domains) you've added.

###### `status_code`

The HTTP status code returned by the service (`200`, `404`, and so on).

------

## Disk usage

Each of these metrics applies to one or more of [Render Postgres](postgresql), [Render Key Value](key-value), and [persistent disks](disks).

###### `render.service.disk.capacity`

The total capacity of a service's persistent storage, in bytes.

Applies to [Render Postgres](postgresql) databases and [persistent disks](disks).

Includes [universal properties](#universal-properties) only.

###### `render.service.disk.usage`

The amount of _occupied_ persistent storage for a service, in bytes.

Applies to [Render Postgres](postgresql) databases and [persistent disks](disks).

Includes [universal properties](#universal-properties) only.

### Disk I/O

The following metrics apply to [Render Postgres](postgresql) and [Render Key Value](key-value) instances.

These cumulative metrics reset whenever the datastore's instance is restarted or replaced, such as during a [database upgrade](postgresql-upgrading) or when [changing instance types](postgresql-creating-connecting#changing-your-instance-type).

###### `render.service.disk.read.bytes`

The cumulative number of bytes read from disk by a particular service instance.

To visualize changes to disk read activity over time, apply a `rate()` function or similar in your observability provider.

Includes [universal properties](#universal-properties) only.

###### `render.service.disk.read.count`

The cumulative number of read operations performed on disk by a particular service instance.

To visualize changes to disk read activity over time, apply a `rate()` function or similar in your observability provider.

Includes [universal properties](#universal-properties) only.

###### `render.service.disk.write.bytes`

The cumulative number of bytes written to disk by a particular service instance.

To visualize changes to disk write activity over time, apply a `rate()` function or similar in your observability provider.

Includes [universal properties](#universal-properties) only.

###### `render.service.disk.write.count`

The cumulative number of write operations performed on disk by a particular service instance.

To visualize changes to disk write activity over time, apply a `rate()` function or similar in your observability provider.

Includes [universal properties](#universal-properties) only.

## Render Postgres

These metrics are reported only for [Render Postgres](postgresql) databases.

### Connections

#### Direct connections

###### `render.postgres.connections`

The number of active connections to a particular PostgreSQL database within a Render Postgres instance.

Includes [universal properties](#universal-properties), along with the following:

| Property | Description |
| --- | --- |
| `database_name` | The name of the PostgreSQL database created in the instance (e.g., `my_db_abcd`). This value is helpful if your Render Postgres instance hosts [multiple databases](postgresql-creating-connecting#adding-multiple-databases-to-a-single-instance). This value usually does _not_ match the value of `service.name`. |

###### `render.postgres.connection.limit`

The maximum number of concurrent connections supported by a particular Render Postgres instance (as determined by its instance type).

Includes [universal properties](#universal-properties) only.

#### Connection pooling

Render only reports `connection.pool` metrics for Render Postgres instances that enable integrated [connection pooling](postgresql-connection-pooling).

In the following metrics:

- *Client connections* are between clients and the connection pool.
- *Server connections* are between the connection pool and the Render Postgres database.

###### `render.postgres.connection.pool.client.active`

The number of client connections that either have an assigned server connection or are idle.

Because this value includes idle clients, it often exceeds [`render.postgres.connection.pool.server.active`](#render-postgres-connection-pool-server-active).

Includes [universal properties](#universal-properties) only.

###### `render.postgres.connection.pool.client.max_wait`

The current wait time of the longest-waiting client connection, in seconds. This value is `0` when no clients are waiting.

Includes [universal properties](#universal-properties) only.

###### `render.postgres.connection.pool.client.waiting`

The number of client connections that have sent a query and are waiting for an available server connection. A value above `0` means clients are queuing because the pool is saturated.

Includes [universal properties](#universal-properties) only.

###### `render.postgres.connection.pool.server.active`

The number of server connections currently assigned to a client connection.

Includes [universal properties](#universal-properties) only.

###### `render.postgres.connection.pool.server.idle`

The number of server connections that are idle and available to serve queries.

Includes [universal properties](#universal-properties) only.

###### `render.postgres.connection.pool.server.limit`

The maximum number of server connections the pool can open to the database. To calculate your pool's utilization, divide [`render.postgres.connection.pool.server.total`](#render-postgres-connection-pool-server-total) by this value.

Includes [universal properties](#universal-properties) only.

###### `render.postgres.connection.pool.server.total`

The connection pool's total number of server connections.

Includes [universal properties](#universal-properties) only.

###### `render.postgres.connection.pool.wait_time`

The cumulative time that client connections have spent waiting for a server connection, in seconds.

To visualize changes to queuing activity over time, apply a `rate()` function or similar in your observability provider.

Includes [universal properties](#universal-properties) only.

### Database activity

#### Block reads

###### `render.postgres.blocks.hit`

The cumulative number of block reads served from shared buffers for a particular PostgreSQL database.

This metric corresponds to `blks_hit` in PostgreSQL's [`pg_stat_database` view](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-DATABASE-VIEW).

To visualize changes to buffer cache activity over time, apply a `rate()` function or similar in your observability provider.

Includes [universal properties](#universal-properties), along with the following:

| Property | Description |
| --- | --- |
| `database_name` | The name of the PostgreSQL database created in the instance (e.g., `my_db_abcd`). |

###### `render.postgres.blocks.read`

The cumulative number of block reads that went to disk or the operating system's page cache for a particular PostgreSQL database. To calculate your buffer cache hit rate, compare this value with [`render.postgres.blocks.hit`](#render-postgres-blocks-hit).

This metric corresponds to `blks_read` in PostgreSQL's [`pg_stat_database` view](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-DATABASE-VIEW).

To visualize changes to buffer cache activity over time, apply a `rate()` function or similar in your observability provider.

Includes [universal properties](#universal-properties), along with the following:

| Property | Description |
| --- | --- |
| `database_name` | The name of the PostgreSQL database created in the instance (e.g., `my_db_abcd`). |

#### Table scans

###### `render.postgres.table.scans`

The cumulative number of sequential table scans performed across tables in a particular database in a Render Postgres instance.

This metric corresponds to the sum of `seq_scan` values in PostgreSQL's [`pg_stat_user_tables` view](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-ALL-TABLES-VIEW).

To visualize changes to table scan activity over time, apply a `rate()` function or similar in your observability provider.

Includes [universal properties](#universal-properties), along with the following:

| Property | Description |
| --- | --- |
| `database_name` | The name of the PostgreSQL database created in the instance (e.g., `my_db_abcd`). |

#### Tuples

###### `render.postgres.tuples.inserted`

The cumulative number of rows inserted into a particular PostgreSQL database.

This metric corresponds to `tup_inserted` in PostgreSQL's [`pg_stat_database` view](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-DATABASE-VIEW).

To visualize changes to write activity over time, apply a `rate()` function or similar in your observability provider.

Includes [universal properties](#universal-properties), along with the following:

| Property | Description |
| --- | --- |
| `database_name` | The name of the PostgreSQL database created in the instance (e.g., `my_db_abcd`). |

###### `render.postgres.tuples.updated`

The cumulative number of rows updated in a particular PostgreSQL database.

This metric corresponds to `tup_updated` in PostgreSQL's [`pg_stat_database` view](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-DATABASE-VIEW).

To visualize changes to write activity over time, apply a `rate()` function or similar in your observability provider.

Includes [universal properties](#universal-properties), along with the following:

| Property | Description |
| --- | --- |
| `database_name` | The name of the PostgreSQL database created in the instance (e.g., `my_db_abcd`). |

###### `render.postgres.tuples.deleted`

The cumulative number of rows deleted from a particular PostgreSQL database.

This metric corresponds to `tup_deleted` in PostgreSQL's [`pg_stat_database` view](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-DATABASE-VIEW).

To visualize changes to write activity over time, apply a `rate()` function or similar in your observability provider.

Includes [universal properties](#universal-properties), along with the following:

| Property | Description |
| --- | --- |
| `database_name` | The name of the PostgreSQL database created in the instance (e.g., `my_db_abcd`). |

###### `render.postgres.tuples.fetched`

The cumulative number of live rows fetched by queries on a particular PostgreSQL database.

This metric corresponds to `tup_fetched` in PostgreSQL's [`pg_stat_database` view](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-DATABASE-VIEW).

To visualize changes to read activity over time, apply a `rate()` function or similar in your observability provider.

Includes [universal properties](#universal-properties), along with the following:

| Property | Description |
| --- | --- |
| `database_name` | The name of the PostgreSQL database created in the instance (e.g., `my_db_abcd`). |

### Database size

###### `render.postgres.database.size`

The size of a particular PostgreSQL database, in bytes.

Includes [universal properties](#universal-properties), along with the following:

| Property | Description |
| --- | --- |
| `database_name` | The name of the PostgreSQL database created in the instance (e.g., `my_db_abcd`). |

###### `render.postgres.indexes.size`

The total size of all indexes in a particular PostgreSQL database, in bytes.

Includes [universal properties](#universal-properties), along with the following:

| Property | Description |
| --- | --- |
| `database_name` | The name of the PostgreSQL database created in the instance (e.g., `my_db_abcd`). |

### Lock contention

###### `render.postgres.deadlocks`

The cumulative number of [deadlocks](https://www.postgresql.org/docs/current/explicit-locking.html#LOCKING-DEADLOCKS) detected on a particular PostgreSQL database.

This metric corresponds to `deadlocks` in PostgreSQL's [`pg_stat_database` view](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-DATABASE-VIEW).

To visualize changes to deadlock activity over time, apply a `rate()` function or similar in your observability provider.

Includes [universal properties](#universal-properties), along with the following:

| Property | Description |
| --- | --- |
| `database_name` | The name of the PostgreSQL database created in the instance (e.g., `my_db_abcd`). |

###### `render.postgres.slow.lock.count`

The total number of slow locks on a particular Render Postgres instance. A slow lock occurs when a query waits an extended period to acquire a database lock.

Includes [universal properties](#universal-properties) only.

###### `render.postgres.slow.lock.time`

The cumulative wait time for slow locks on a particular Render Postgres instance, in seconds.

Includes [universal properties](#universal-properties) only.

### Replication and recovery

###### `render.postgres.replication.lag`

The delay between when a change occurs on the primary Render Postgres instance and when its [read replica](postgresql-read-replicas) (if it has any) _fully replicates_ that change, in milliseconds.

Includes [universal properties](#universal-properties), along with the following:

| Property | Description |
| --- | --- |
| `replication_host` | The hostname or identifier of the read replica. |

###### `render.postgres.replication.apply.lag`

The delay between when a transaction commits on the primary Render Postgres instance and when its [read replica](postgresql-read-replicas) (if it has any) _applies_ those changes, in milliseconds.

Includes [universal properties](#universal-properties), along with the following:

| Property | Description |
| --- | --- |
| `replication_host` | The hostname or identifier of the read replica. |

###### `render.postgres.recovery.conflicts`

The cumulative number of queries canceled by [recovery conflicts](https://www.postgresql.org/docs/current/hot-standby.html#HOT-STANDBY-CONFLICT) on a particular PostgreSQL database. Only [read replicas](postgresql-read-replicas) increment this value.

This metric corresponds to `conflicts` in PostgreSQL's [`pg_stat_database` view](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-DATABASE-VIEW).

To visualize changes to conflict activity over time, apply a `rate()` function or similar in your observability provider.

Includes [universal properties](#universal-properties), along with the following:

| Property | Description |
| --- | --- |
| `database_name` | The name of the PostgreSQL database created in the instance (e.g., `my_db_abcd`). |

### Temporary files

###### `render.postgres.temp.bytes`

The cumulative number of bytes written to temporary files by a particular PostgreSQL database. Queries write temporary files when operations like sorts and hashes exceed available working memory ([`work_mem`](https://www.postgresql.org/docs/current/runtime-config-resource.html#GUC-WORK-MEM)).

This metric corresponds to `temp_bytes` in PostgreSQL's [`pg_stat_database` view](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-DATABASE-VIEW).

To visualize changes to temporary file activity over time, apply a `rate()` function or similar in your observability provider.

Includes [universal properties](#universal-properties), along with the following:

| Property | Description |
| --- | --- |
| `database_name` | The name of the PostgreSQL database created in the instance (e.g., `my_db_abcd`). |

###### `render.postgres.temp.files`

The cumulative number of temporary files written by a particular PostgreSQL database. Sustained growth indicates that queries are spilling to disk.

This metric corresponds to `temp_files` in PostgreSQL's [`pg_stat_database` view](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-DATABASE-VIEW).

To visualize changes to temporary file activity over time, apply a `rate()` function or similar in your observability provider.

Includes [universal properties](#universal-properties), along with the following:

| Property | Description |
| --- | --- |
| `database_name` | The name of the PostgreSQL database created in the instance (e.g., `my_db_abcd`). |

### Transactions

###### `render.postgres.transaction.exhaustion`

The percentage of available transaction IDs used by a particular PostgreSQL database. PostgreSQL databases have a maximum of approximately 2.1 billion transaction IDs before wraparound occurs.

Includes [universal properties](#universal-properties), along with the following:

| Property | Description |
| --- | --- |
| `database_name` | The name of the PostgreSQL database created in the instance (e.g., `my_db_abcd`). |

###### `render.postgres.transaction.volume`

The cumulative number of transactions (i.e., commits and rollbacks) on a particular Render Postgres instance.

To visualize changes to transaction activity over time, apply a `rate()` function or similar in your observability provider.

Includes [universal properties](#universal-properties) only.

###### `render.postgres.transactions.committed`

The cumulative number of transactions committed on a particular PostgreSQL database.

This metric corresponds to `xact_commit` in PostgreSQL's [`pg_stat_database` view](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-DATABASE-VIEW).

To visualize changes to transaction activity over time, apply a `rate()` function or similar in your observability provider.

Includes [universal properties](#universal-properties), along with the following:

| Property | Description |
| --- | --- |
| `database_name` | The name of the PostgreSQL database created in the instance (e.g., `my_db_abcd`). |

###### `render.postgres.transactions.rolled.back`

The cumulative number of transactions rolled back on a particular PostgreSQL database. To calculate your rollback rate, compare this value with [`render.postgres.transactions.committed`](#render-postgres-transactions-committed).

This metric corresponds to `xact_rollback` in PostgreSQL's [`pg_stat_database` view](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-DATABASE-VIEW).

To visualize changes to transaction activity over time, apply a `rate()` function or similar in your observability provider.

Includes [universal properties](#universal-properties), along with the following:

| Property | Description |
| --- | --- |
| `database_name` | The name of the PostgreSQL database created in the instance (e.g., `my_db_abcd`). |

### WAL archiving

###### `render.postgres.archiver.failures`

The cumulative number of failed [WAL archive](https://www.postgresql.org/docs/current/continuous-archiving.html) attempts on a particular Render Postgres instance.

This metric corresponds to `failed_count` in PostgreSQL's [`pg_stat_archiver` view](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-ARCHIVER-VIEW).

To visualize changes to archiver activity over time, apply a `rate()` function or similar in your observability provider.

Includes [universal properties](#universal-properties) only.

## Render Key Value

[Render Key Value](key-value) instances include [disk I/O](#disk-i-o) metrics, as well as the following metrics.

### Connections

###### `render.keyvalue.connections`

The number of active connections to a particular Render Key Value instance.

Includes [universal properties](#universal-properties) only.

###### `render.keyvalue.connection.limit`

The maximum number of concurrent connections supported for a particular Render Key Value instance (as determined by its instance type).

Includes [universal properties](#universal-properties) only.

## History of changes to reported metrics

------

###### `2026-08-19`

Added the following Render Postgres metrics: *Block reads*

- [`render.postgres.blocks.hit`](#render-postgres-blocks-hit)
- [`render.postgres.blocks.read`](#render-postgres-blocks-read)

*Temporary files*

- [`render.postgres.temp.bytes`](#render-postgres-temp-bytes)
- [`render.postgres.temp.files`](#render-postgres-temp-files)

*Transactions*

- [`render.postgres.transactions.committed`](#render-postgres-transactions-committed)
- [`render.postgres.transactions.rolled.back`](#render-postgres-transactions-rolled-back)

*Tuples*

- [`render.postgres.tuples.inserted`](#render-postgres-tuples-inserted)
- [`render.postgres.tuples.updated`](#render-postgres-tuples-updated)
- [`render.postgres.tuples.deleted`](#render-postgres-tuples-deleted)
- [`render.postgres.tuples.fetched`](#render-postgres-tuples-fetched)

*Additional metrics*

- [`render.postgres.deadlocks`](#render-postgres-deadlocks)
- [`render.postgres.recovery.conflicts`](#render-postgres-recovery-conflicts)
- [`render.postgres.archiver.failures`](#render-postgres-archiver-failures)

###### `2026-08-04`

Added the following Render Postgres connection pool metrics:

- [`render.postgres.connection.pool.client.active`](#render-postgres-connection-pool-client-active)
- [`render.postgres.connection.pool.client.waiting`](#render-postgres-connection-pool-client-waiting)
- [`render.postgres.connection.pool.client.max_wait`](#render-postgres-connection-pool-client-max-wait)
- [`render.postgres.connection.pool.server.active`](#render-postgres-connection-pool-server-active)
- [`render.postgres.connection.pool.server.idle`](#render-postgres-connection-pool-server-idle)
- [`render.postgres.connection.pool.server.total`](#render-postgres-connection-pool-server-total)
- [`render.postgres.connection.pool.server.limit`](#render-postgres-connection-pool-server-limit)
- [`render.postgres.connection.pool.wait_time`](#render-postgres-connection-pool-wait-time)

###### `2025-06-02`

Added the following Render Postgres transaction metrics:

- [`render.postgres.transaction.exhaustion`](#render-postgres-transaction-exhaustion)
- [`render.postgres.transaction.volume`](#render-postgres-transaction-volume)

###### `2025-05-13`

Added the following Render Postgres metrics:

- [`render.postgres.table.scans`](#render-postgres-table-scans)
- [`render.postgres.replication.apply.lag`](#render-postgres-replication-apply-lag)

###### `2025-04-30`

Added the following Render Postgres metrics:

- [`render.postgres.database.size`](#render-postgres-database-size)
- [`render.postgres.indexes.size`](#render-postgres-indexes-size)
- [`render.postgres.slow.lock.count`](#render-postgres-slow-lock-count)
- [`render.postgres.slow.lock.time`](#render-postgres-slow-lock-time)

Added the following disk I/O metrics:

- [`render.service.disk.read.bytes`](#render-service-disk-read-bytes)
- [`render.service.disk.read.count`](#render-service-disk-read-count)
- [`render.service.disk.write.bytes`](#render-service-disk-write-bytes)
- [`render.service.disk.write.count`](#render-service-disk-write-count)

###### `2025-04-17`

Added the following datastore connection metrics:

- [`render.postgres.connections`](#render-postgres-connections)
- [`render.postgres.connection.limit`](#render-postgres-connection-limit)
- [`render.keyvalue.connections`](#render-keyvalue-connections)
- [`render.keyvalue.connection.limit`](#render-keyvalue-connection-limit)

Added the following memory metrics:

- [`render.service.memory.rss`](#render-service-memory-rss)
- [`render.service.memory.cache`](#render-service-memory-cache)

Added the following networking metrics:

- [`render.service.network.transmit.bytes`](#render-service-network-transmit-bytes)
- [`render.service.network.receive.bytes`](#render-service-network-receive-bytes)

###### `2025-03-11`

Added the following initial set of metrics:

- [`render.service.cpu.time`](#render-service-cpu-time)
- [`render.service.cpu.limit`](#render-service-cpu-limit)
- [`render.service.memory.usage`](#render-service-memory-usage)
- [`render.service.memory.limit`](#render-service-memory-limit)
- [`render.service.http.requests.latency`](#render-service-http-requests-latency)
- [`render.service.http.requests.total`](#render-service-http-requests-total)
- [`render.service.disk.capacity`](#render-service-disk-capacity)
- [`render.service.disk.usage`](#render-service-disk-usage)
- [`render.postgres.replication.lag`](#render-postgres-replication-lag)

------


---

##### Appendix: Glossary definitions

###### private network

Your Render services in the same *region* can reach each other without traversing the public internet, enabling faster and safer communication.

Related article: https://render.com/docs/private-network.md