> For the complete documentation index, see [llms.txt](https://docs.tessell.com/tessell/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.tessell.com/tessell/database-engines/tessell-for-sqlserver/db-services/my-services/database-service-home-page/monitoring.md).

# Monitoring

The Monitoring tab provides real-time and historical observability for your SQL Server database service. Metrics are grouped into **OS Metrics**, **DB Metrics**, and **Performance Insights**. By default, graphs show metrics for the current primary node; for HA services you can select a specific node.

***

## What time range and granularity options are available?

**Preset intervals:** 1h, 3h, 6h, 12h, 24h (default: 1h). Graphs display averaged values over the selected period.

**Custom range:**

1. Select **Custom**.
2. Choose the desired date and time.
3. Click **Apply**.

**Granularity** controls the interval between data points, using the dropdown at the top right of the Monitoring tab. Options: 1 Min, 5 Mins, 15 Mins, 30 Mins, 1 Hour.

***

## What interactive features are available on each monitoring chart?

| Feature              | How to use                                                                                                                                                            |
| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Full-screen view** | Click the full-screen icon (top-right of graph) to open an expanded view with metrics shown at 5-minute intervals                                                     |
| **Zoom**             | Click and drag over a section of the graph (using the selection zoom button, top-right) to zoom in for granular analysis                                              |
| **Drag and explore** | Use the crosshair cursor to select and drag across a portion of the graph                                                                                             |
| **Download**         | Click the menu icon (top-right) → choose **SVG** or **PNG** for an image capture of the graph as-is, or **CSV** for an Excel-ready file of the underlying metric data |

Use the **refresh button** (top-right of the Monitoring tab) to manually refresh all metrics. Use the **search bar** to locate a specific metric chart by name.

***

## What does the Service Availability graph show?

The Service Availability graph displays database service uptime, with green indicating availability and gray representing unavailability. Data is updated every five minutes.

> **Note:** This graph represents the availability of the current primary node. For HA services, select a specific node using the node selector at the top of the Monitoring tab.

***

## What OS metrics does the Monitoring tab provide?

The OS Metrics section graphs the following operating system metrics (default interval: 10 minutes; zoom in via full-screen for a 5-minute view):

| Metric                      | What it shows                                                                        |
| --------------------------- | ------------------------------------------------------------------------------------ |
| **CPU Usage**               | CPU resource usage as a percentage. Shows the latest used value.                     |
| **Memory Usage**            | Used and available memory in GiB (two lines).                                        |
| **Disk IO**                 | Read and write operations per second (two lines).                                    |
| **Filesystem: Data**        | Used and available disk space on the volume where database files are stored, in GiB. |
| **Filesystem: TempDB**      | Used and available disk space on the volume where TempDB files are stored, in GiB.   |
| **Network Usage**           | Sent and received network data in MiB/s (two lines).                                 |
| **Top Processes by CPU**    | Table: PID, process name, average CPU % (current data only, not historical).         |
| **Top Processes by Memory** | Table: PID, process name, average memory % (current data only, not historical).      |

***

## What SQL Server DB metrics does the Monitoring tab provide?

The DB Metrics section graphs the following SQL Server–specific metrics (default interval: 10 minutes):

| Metric                            | What it shows                                                                                                  |
| --------------------------------- | -------------------------------------------------------------------------------------------------------------- |
| **Connections**                   | Count of user connections. Shows latest, maximum, and minimum values.                                          |
| **Batch Requests**                | Batch requests per second. Shows latest, maximum, average, and minimum values.                                 |
| **Stored Procedure Compilations** | Compilations and recompilations per second (two lines).                                                        |
| **Active Transactions**           | Total count of active transactions. Shows latest, maximum, and minimum values.                                 |
| **Processes Blocked**             | Count of blocked processes. Shows latest, maximum, and minimum values.                                         |
| **Deadlocks**                     | Deadlocks per second. Shows latest, maximum, average, and minimum values.                                      |
| **Page File**                     | Total and available page file size in GiB (two lines).                                                         |
| **Buffer Pool**                   | Committed target and committed buffer pool memory in GiB (two lines).                                          |
| **Buffer Database Pages**         | Target and current page count of buffer database pages (two lines). Shows latest, maximum, and average values. |
| **Buffer Cache Hit Ratio**        | Buffer cache hit ratio as a count. Shows latest, maximum, and minimum values.                                  |
| **Locked Page Allocation**        | Count of locked page allocations. Shows latest, maximum, average, and minimum values.                          |
| **Transaction Delay**             | Count of transaction delays. Shows latest, maximum, average, and minimum values.                               |
| **Page Stats**                    | Reads, lookups, and writes per second (three lines). Shows latest, maximum, and average values.                |
| **Write Transactions**            | Write transactions per second. Shows latest, maximum, average, and minimum values.                             |
| **TempDB Log/Data File Size**     | Size of log files used, log files, and data files in MiB (three lines).                                        |
| **Wait Times**                    | Page IO latch waits and Network IO waits in milliseconds (two lines).                                          |
| **Log Flushes**                   | Log flushes per second. Shows latest, maximum, average, and minimum values.                                    |
| **Log Flush Waits**               | Log flush waits per second. Shows latest, maximum, average, and minimum values.                                |
| **Average Latch Wait Time**       | Average latch wait time in milliseconds. Shows latest, maximum, and average values.                            |
| **Memory Grants Pending**         | Count of memory grants pending. Shows latest, maximum, average, and minimum values.                            |
| **Page Life Expectancy**          | Page life expectancy count. Shows latest, maximum, and average values.                                         |
| **Connection Resets**             | Connection resets per second. Shows latest, maximum, average, and minimum values.                              |
| **Logins/Logouts**                | Logins and logouts per second (two lines). Shows latest, maximum, average, and minimum values.                 |
| **Active Temp Tables**            | Count of active temporary tables. Shows latest, maximum, average, and minimum values.                          |
| **Checkpoint Pages**              | Checkpoint pages per second. Shows latest, maximum, average, and minimum values.                               |
| **Log Send Queue**                | Count of the log send queue. Shows latest, maximum, average, and minimum values.                               |
| **TempDB Version Store**          | Size of the TempDB version store in MB. Shows latest, maximum, average, and minimum values.                    |
| **Mirrored Write Transactions**   | Mirrored write transactions per second. Shows latest, maximum, average, and minimum values.                    |
| **Bytes Sent to Replica**         | Bytes sent to the replica per second. Shows latest, maximum, average, and minimum values.                      |

***

## How does Performance Insights work and how do I enable it?

Performance Insights is a database load analysis tool that identifies bottlenecks by measuring the **Average Active Sessions (AAS)** — the average number of sessions concurrently active on the database.

**Prerequisites:** Create a **Monitoring Performance Insights Infrastructure** in the **Monitoring Performance Insights Infrastructure** application under the **DB Services** app family. After the infrastructure is deployed, enable Performance Insights per service either at provisioning time or from the Settings tab.

**Key concepts:**

| Concept                    | Description                                                                                                                                                                  |
| -------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Database Load / DBLoad** | The key metric — collected every second and expressed as AAS                                                                                                                 |
| **Active session**         | A connection that has submitted work and is either running on CPU or waiting for a resource (e.g., waiting for a page to be read into memory, then consuming CPU to read it) |
| **AAS**                    | Total sessions sampled divided by number of samples in the time period                                                                                                       |

For each active session, Performance Insights collects: session state (Wait — running on CPU or waiting), the SQL statement, the host, the user running the SQL, and the database the SQL is running on.

**Top Dimensions** — dimensions of database load within a timeframe:

| Dimension         | Description                                                      |
| ----------------- | ---------------------------------------------------------------- |
| **Top Waits**     | Wait events contributing most to DB load                         |
| **Top SQLs**      | Top SQL queries by DB load (masked and grouped by type)          |
| **Top Hosts**     | Client hosts contributing most to DB load                        |
| **Top Users**     | Database users contributing most to DB load                      |
| **Top Databases** | Databases contributing most to DB load (multi-database services) |

### Steps to view Performance Insights

1. Click **View Detailed Insights** on the Monitoring tab (graph shown at a 5-minute interval).
2. Select a time interval: 1h, 3h, 6h, 12h, or 24h (default: 1h).
3. For a custom range, select **Custom**, choose a date and time, and click **Apply**.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.tessell.com/tessell/database-engines/tessell-for-sqlserver/db-services/my-services/database-service-home-page/monitoring.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
