← All databases
AS

AWS RDS for SQL Server monitoring

Amazon RDS for SQL Server is monitored agentlessly in ClusterEye: the connection is made over TDS from the ClusterEye API server and nothing is installed on the RDS instance. Because RDS never grants sysadmin, monitoring is designed to run on the read-only privileges the master user can actually grant. Query, wait and blocking data come from inside the database; resource metrics such as CPU, memory, IOPS and tempdb come from CloudWatch and the RDS management API.

AgentlessDefault port: 1433Versions: RDS

What we read

sys.dm_exec_* — running requests, sessions and query statistics
Query Store views — query and plan history, plan regression and plan comparison
sys.dm_os_wait_stats — wait statistics and the pressure profile
sys.dm_exec_requests — blocking chains and blocking sessions
sys.dm_db_index_usage_stats and the missing index DMVs — index usage and advice
CloudWatch — CPU, memory, IOPS, network and storage metrics
the RDS management API — instance class, purchased size and storage configuration
Extended Events — deadlock graphs

What it does specifically for AWS RDS SQL Server

A control plane for resource visibility

Azure SQL reports its own limits from inside the database; RDS SQL Server has no such view. ClusterEye closes that gap with CloudWatch and the RDS management API — host CPU, memory, IOPS, tempdb usage and the purchased size all come from there.

Query and resource metrics on one timeline

The in-database wait profile and the CloudWatch series share an axis, separating an instance ceiling from a specific query generating load.

Query Store based plan analysis

Different plans for the same query are compared and regressed ones identified, with the most expensive queries ranked by resource consumption.

Derived from the endpoint

Region and DB instance identifier are inferred from the RDS endpoint you enter, labelled as derived, and remain editable.

Minimum privileges required

The baseline is read-only and safe to grant in production.

sql
-- Run as the RDS master user (RDS never grants sysadmin)
USE master;
CREATE LOGIN [clustereye] WITH PASSWORD = '<strong-password>';
GRANT VIEW SERVER STATE   TO [clustereye];
GRANT VIEW ANY DEFINITION TO [clustereye];

-- each monitored database
USE [<db>];
CREATE USER [clustereye] FOR LOGIN [clustereye];
GRANT VIEW DATABASE STATE TO [clustereye];
GRANT SHOWPLAN            TO [clustereye];

Prerequisites

·Agentless: the connection is made from the ClusterEye API server; nothing is installed on the RDS instance.
·The RDS security group must allow 1433/tcp from the ClusterEye API server.
·RDS never grants sysadmin; privileges are granted by the master user and the baseline is read-only.
·Query Store must be enabled per database for query intelligence and plan comparison: ALTER DATABASE [<db>] SET QUERY_STORE = ON
·Resource metrics (CPU, memory, IOPS, tempdb, purchased size) come from CloudWatch and the RDS management API — RDS SQL Server has no equivalent of Azure SQL's sys.dm_user_db_resource_governance view. Region and instance identifier are derived automatically from the endpoint you enter.
Install and privilege details →

Frequently asked questions

Yes, and sysadmin was never needed. VIEW SERVER STATE and VIEW ANY DEFINITION at server scope, plus VIEW DATABASE STATE and SHOWPLAN in each monitored database, is the whole set — and the RDS master user can grant all of it. The baseline is read-only.

Start monitoring your AWS RDS for SQL Server estate in five minutes.

One command to install. Talk to us if you have questions.

Book a live demoInstall and privilege details