> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nearbase.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Monitoring

> Monitor your instance's performance, resource usage, and logs in real time

## Overview

The Nearbase console provides live monitoring data for every running instance across four areas: Performance, Usage, Error Logs, and Slow Query Logs.

***

## Performance Tab

The **Performance** tab shows real-time and historical charts for the most important database metrics.

| Metric                 | Description                                                                                                             |
| ---------------------- | ----------------------------------------------------------------------------------------------------------------------- |
| **CPU Usage**          | Percentage of allocated vCPUs in use. Sustained high CPU suggests the instance class needs to be scaled up.             |
| **Memory Usage**       | Percentage of allocated RAM in use. High memory pressure can cause query slowdowns and swapping.                        |
| **Disk IOPS**          | Read and write I/O operations per second. Useful for identifying I/O-bound workloads.                                   |
| **Active Connections** | Number of client connections currently open. Compare against your instance's connection limit.                          |
| **Slow Queries**       | Count of queries that exceeded the slow query threshold in the selected time window.                                    |
| **Long Transactions**  | Count of transactions open for an unusually long time. Long transactions can block vacuuming and cause lock contention. |

<Tip>
  If CPU or connections are consistently near their limits, consider scaling up
  your [instance class](/instances/instance-classes) or adding connection pooling
  in your application.
</Tip>

***

## Usage Tab

The **Usage** tab shows aggregate resource utilization for the instance.

| Metric         | Description                                               |
| -------------- | --------------------------------------------------------- |
| **Disk Usage** | Total storage consumed vs. your provisioned storage size. |
| **Memory**     | Actual memory consumed by the database process.           |

<Note>
  Storage can only be scaled up, not down. Monitor disk usage and scale storage
  before you run out — the platform will alert you when usage is high.
</Note>

***

## Error Logs

The **Error Logs** tab streams PostgreSQL error log entries from your instance.

**Filtering:**

* Use the **date range picker** to view logs from a specific time window.
* Results are paginated; use the navigation controls to scroll through older entries.

**Common log entries to watch for:**

| Message Pattern                                  | What It Means                                                     |
| ------------------------------------------------ | ----------------------------------------------------------------- |
| `FATAL: password authentication failed`          | A client attempted to connect with wrong credentials.             |
| `ERROR: out of shared_buffers`                   | Memory pressure; consider scaling up or tuning `shared_buffers`.  |
| `FATAL: remaining connection slots are reserved` | Connection limit reached; reduce pool size or scale up.           |
| `ERROR: deadlock detected`                       | Two transactions were waiting on each other; one was rolled back. |

***

## Slow Query Logs

The **Slow Query Logs** tab lists queries that exceeded the slow query threshold, along with their execution time and query text.

**Filtering:**

* Use the **date range picker** to scope to a specific time window.
* Results are paginated.

**Using slow query logs:**

1. Sort by execution time to find the worst offenders.
2. Run `EXPLAIN ANALYZE` on slow queries in `psql` to see the query plan.
3. Add indexes on columns used in `WHERE`, `JOIN`, and `ORDER BY` clauses.
4. Consider rewriting queries that perform sequential scans on large tables.

<Tip>
  Slow query logging is enabled by default. The threshold is set in your
  instance's PostgreSQL parameters — see [Parameters](/instances/parameters).
</Tip>
