Microsoft Azure SQL Database is a scalable Database-as-a-Service that provides managed SQL database capabilities to applications running in the Azure Cloud.



This step-by-step guide explains how to setup and monitor Azure SQL Database using CloudMonix.



In this article


1. Monitoring setup

2. Collect, understand and use your data

    2.1 Metrics

    2.2 Alerts

    2.3 Actions

3. Setup verification and troubleshooting



Did you know?

CloudMonix extends native Azure SQL Database monitoring with advanced metrics and features. Noteworthy:

  • CloudMonix connects to Azure SQL Database directly from within own cloud premise thru user-defined IP address and port which need to be white-listed as described in this article
  • CloudMonix receives data from the Dynamic Management Views and by directly querying databases
  • CloudMonix supports both Classic and ARM API
  • pre-configured metrics: blocking queries, blocking query count, connection list, active connections, CPU, data IO utilization, DTU, event logs metrics, log write utilization, queries in progress, response time, database size, resource status, top queries
  • alerts on blocking queries, database approaching maximum size, high CPU utilization, open sessions approaching maximum limit, resource outages and slow responses
  • ability to resize Azure SQL Database resource and run a custom SQL script on the database based on conditions or schedule




Setup


a. Run the Setup Wizard in the portal (preferred way):


CloudMonix setup wizard

This article explains how to add resources to CloudMonix via the Setup Wizard.




b. Firewall configuration:


CloudMonix monitoring services are hosted in Azure and use static IP addresses to perform monitoring. In certain circumstances user-defined firewall rules may prevent CloudMonix from accessing the monitored resources. Given this scenario, it is necessary to white-list CloudMonix IP addresses as described in this article.




c. Tweak settings in the Definition tab (optional):


Definition tab for an existing resource can be accessed by clicking the resource's monitoring settings in the performance dashboard:


Resource monitoring settings



Definition tab provides optional settings for the resource name, Azure API, SQL Azure credentials, Azure resource management token, Azure resource group, Azure SQL server, Azure resource name, scale-up / scale-down cooling periods, configuration template and categories:



Definition settings



Best Practices

Configuration Template setting provides pre-defined configuration templates available in CloudMonix by default as well as previously stored custom templates. See predefined templates for Azure SQL Database for reference.




d. Manual setup (optional instead of the Setup Wizard route):



Click the Add New button in the top right corner of your dashboard:


Add new resource


Fill in required information in the Definition tab as described in the previous step.




e. Advanced configuration:


Advanced configuration


Advanced configuration tab provides additional monitoring settings, which are already set as default for most use-cases.




f. Scale Ranges and Scale Adjustments:


Auto-scaling and scale adjustments provide powerful reactive, proactive and scheduled auto-scaling rules. These settings can be accessed via the Scale Ranges and Scale Adjustments tabs:


Scale ranges & scale adjustments



Read the full article on how to use auto-scaling and scale adjustments features in CloudMonix.





Collect, understand and use your data


Specific Metrics, Templates, Alerts and Automation Actions for Azure SQL Database:


Azure SQL Database Settings




a. Metrics:


Diagnostic data points retrieved from the monitored resource are referred to as metrics . CloudMonix provides default templates for the metrics recommended for common configurations. Metrics can be further added, removed or customized in the Metrics tab of the Azure SQL Database resource configuration dialog:


CloudMonix Azure SQL Database monitoring metrics




b. Alerts:


CloudMonix features a sophisticated alert engine that allows alerts to be published for very particular conditions pre-defined by a template configuration or custom based on any of the available metrics. Alerts can be further added, removed or customized in the Alerts tab of the Azure SQL Database resource configuration dialog:


CloudMonix alerts for Azure SQL Database




c. Actions:


Actions are automation features that can be configured to fire based on specific conditions or schedule. Actions can be added and configured in the Actions tab of the Azure SQL Database resource configuration dialog:


Available actions include the ability to resize Azure SQL Database resource and run a custom SQL script on the database based on conditions or schedule.



CloudMonix Azure SQL Database automation






Setup verification and troubleshooting


a. Setup verification:


Successful resource setup can be verified by clicking Test button in the resource configuration dialog and visiting the Test Results tab:


Monitoring setup test results



b. Troubleshooting monitoring issues:


CloudMonix provides deep insights into resource monitoring issues via the Status Dashboard screen. The screen allows to overview resources that have raised alerts and troubleshoot them by diving into the monitoring logs.


Status dashboard


Read the full article on how to use Status Dashboard to diagnose resource monitoring issues.