How to Detect Azure SQL Database Throttling
Throttling is one of the most common issues a DBA will face when working with Azure SQL Databases. Throttling can cause work to be slowed or aborted causing major issues for applications. The main reason for throttling that we have seen is from high numbers of outstanding requests within your database. Unfortunately there are no hard limits that can be monitored to identify when this throttling occurs. The good news is that the lower limits have been well documented which enables Cotega notify you as your database starts to reach these limits, allowing you to take corrective action before throttling occurs.
Monitoring Outstanding Request Count
As soon as you create a monitoring agent for your database, Cotega will start logging the outstanding request counts for your database. You can see the results of this logging in the charts provided in the dashboard as seen below. This logged data can also be downloaded for further analysis.
How to Setup Azure SQL Throttling Notifications
We are going to use the "Outstanding Request Count" feature to set up notifications as your database starts to approach the "soft" upper limit of 180 requests that Azure SQL supports. To do this click on "Edit Agent" from the dashboard.
In the "Edit Agent" dialog, enable the option "Notify when outstanding requests exceed" and enter a value for outstanding requests (something around 180 which is the soft limit for throttling is recommended).
Once you have set this value, choose "Save Agent" and you will then be notified once this limit is exceeeded.