Monitoring SQL Azure
Quest Software (the company I’m working for) just brought out a SQL Azure cartridge for its application performance management solution Foglight.
Other than Spotlight on Azure and Spotlight on SQL Server Enterprise (covering also SQL Azure) which are tools focused on the Azure platform or SQL Server/SQL Azure, Foglight is a much broader story, covering among others end user, application, database, OS and virtualization layer performance.
So, how does Foglight’s SQL Azure part look like?
For playing around, I used my existing Foglight environment covering on-premise Oracle and SQL Server. After importing the SQL Azure cartridge, the starting page looks like this:
Clicking on the SQL Azure button launched a short wizard with these steps:
- Step 1: Choosing an agent manager: This is Foglight administrative stuff, determining where the remote collector agent is running. I used my local VM here. Alternatively, it could be deployed inside the Azure cloud.
- Step 2: Providing an Azure instance and login credentials.
- Step 3: Choosing one or more databases in the Azure instance.
- Step 4: Validating connectivity and starting monitoring
After that, the starting page looks like this. You may have to wait for a few minutes until all parts are actually filled with data:
On the upper part, it’s the overall database environment, including current alarm status. The lower part gives a quick overview of the selected Azure database. While the components are quite self-explaining, most of them offer some more details when clicked onto.
The Home Page button at the lower right sets the focus to the selected Azure database:
Among others it shows the current alarms, availability, performance and storage capacity of the database, I/O from applications in the Azure cloud as well as from those outside (on-premise applications), and cost. Again, all of these item are clickable and lead to detailed drilldowns. The same drilldowns can be reached via the menu on the top.
Nearly all of the displayed information is gathered automatically from the Azure instance and/or database. Two optional pieces of information have to provided manually in the Administration drilldown (see next screenshot):
- The Data Center and Windows Live ID, displayed in the upper left corner.
- Pricing information: Based on provided storage price and price for outgoing and incoming I/O, both per GB, the total storage cost is calculated and displayed in the upper right corner.
Only thing I couldn’t get working was the pricing information. From the error messages it looked very much like an issue with my German Windows mixing up dot and comma on the price values. OK, it’s the very first version of the SQL Azure cartridge… nevertheless, I already filed a CR to Quest support on this.
So, all this looks quite cool for diagnostics. But Foglight also claims to cover monitoring and alarming. Around a dozen alarms are pre-defined and can be adjusted in the Administation drilldown:
- Database Reaching Maximum Limit Capacity
- Database Requires Change In Edition
- Database Reaching Current Limit Capacity
- Long Lock Running
- Response Time
- Connection Time
- Instance/Database Unresponsive
- Database Property Changed
- Collection Status
- Executions Baseline Deviation
- Total CLR Time Baseline Deviation
- Total I/O Baseline Deviation
If you want to give it try, you can start downloading here.
Have fun with it!









