Microsoft Azure Elastic Pool is a solution for managing and scaling multiple SQL databases that have varying resource demands. It ensures on-demand resource allocation for Azure SQL databases. 



This step-by-step guide explains how to setup and monitor Azure SQL Elastic Pool 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 Elastic Pool monitoring with advanced metrics and features. Noteworthy:

  • CloudMonix connects to Azure SQL Elastic Pool 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 Azure Management API, Azure Monitor API and by directly querying databases
  • pre-configured metrics: CPU percent, databases, data IO percentage, DTU percentage, DTU used, in-memory OLTP storage percentage, log IO percentage, sessions percentage, storage percentage, storage used, workers percentage, resource status and recommended actions
  • alerts on database outages, database size, high CPU percentage, high data IO percentage, high DTU percentage, high in-memory OLTP storage percentage, high sessions percentage, high storage percentage and resource outages




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 resource group, management token, Azure SQL server, SQL Azure credentials, Azure resource name, 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 Elastic Pool 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 Elastic Pool:


Azure SQL Elastic Pool




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 Elastic Pool resource configuration dialog:


CloudMonix Azure SQL Elastic Pool 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 Elastic Pool resource configuration dialog:


CloudMonix alerts for Azure SQL Elastic Pool




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 Elastic Pool resource configuration dialog:


Automation allows executing actions on specified conditions. While Azure SQL Elastic Pool resource itself doesn't support any actions on its own, CloudMonix provides the possibility to execute calls to custom API endpoints as well as execute Azure Functions, Runbooks and WebJobs on other resources.



CloudMonix Azure SQL Elastic Pool 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.