For disambiguation, there are
3 different kinds of SQL Server offerings on Azure at the time of this writing:
SQL Server on Azure VM falls into the industry category Infrastructure-as-a-Service (IaaS) and allows you to run SQL Server inside a fully managed virtual machine (VM) in Azure.
This kind of SQL Server can be monitored the same way an on premise SQL Server Instance. Ideally with a
DB_SQL_Server agent from the
SQL Server Cartridge and a
WindowsAgent from the Infrastructure Cartridge. As long as the
WindowsAgent is able to collect the OS-level metrics, these agents should populate System Utilization OS metrics in the Database dashboard (Global View).
Azure SQL Managed Instance falls into the industry category of Platform-as-a-Service (PaaS) [...] is a collection of system and user databases with a shared set of resources that is lift-and-shift ready.
This kind of SQL Server can be monitored with a normal
DB_SQL_Server agent from the
SQL Server Cartridge, but the underlying OS-level metrics are not accessible through WinRM or DCOM as with an On Premise Instance, since the OS is intended to be managed by the
Azure platform. These agents will not populate System Utilization OS metrics in the Database dashboard (Global View) by design.
Azure SQL Database is a relational database-as-a-service (DBaaS) hosted in Azure that falls into the industry category of Platform-as-a-Service (PaaS).
This kind of SQL database can be monitored with the
DB_Azure_Database agent from the
Azure SQL Database Cartridge, OS-level metrics are even further removed than in Azure SQL Managed Instances. The agent does collect a few platform-level metrics but those are available from the Overview Dashboard. These agents will not populate System Utilization OS metrics in the Database dashboard (Global View) by design.
Note: Starting from Azure SQL Database Cartridge version 6.1.5,
Azure SQL DB Elastic Pools can be monitored. More details in KB article
How to create an Elastic Pool Azure SQL agent (4369512).