You are here

Azure MySQL Monitoring

Requires Opsview Cloud or Opsview Monitor 6
Opsview Supported

Azure - MySQL Opspack

SQL Azure is Microsoft's cloud database service. Based on SQL Server database technology and built on Microsoft's Windows Azure cloud computing platform, SQL Azure enables organizations to store relational data in the cloud and quickly scale the size of their databases.

What You Can Monitor

Opsview Monitor's Azure MySQL Opspack provides all the metrics to track your MySQL databases. MySQL service checks include active connections, CPU Percentage, memory and storage metrics.

Service Checks

Service Check Description
Percentage CPU The percentage of CPU resources being consumed.
Compute Limit The database compute limit expressed in either Database Throughput Units (DTUs) or vCores (depending on the purchasing model of the Azure SQL Database deployment).
Compute Consumption Percent The percentage of database computing resources being used.
Memory Percent The percentage of database memory in use.
IO Consumption Percent The percentage of IO consumption in use. High I/O consumption produces slower disk write times.
Storage Percent The percentage of storage used out of the server's maximum.
Storage Used The amount of storage in use. The storage used by the service includes the database files, transaction logs, and the server logs.
Storage Limit The total disk capacity of the database.
Active Connections The number of active connections to the server.
Connections Failed The number of failed connections to the server.


The monitoring plugin for this Opspack has been tested with Python 2.7. In order for the Opspack to run, you will need to have some Python packages installed by running the pip python package tool.

If a cryptography error occurs when trying to install the Azure packages, you can run the commands which should fix the problem.

Debian and Ubuntu

sudo apt-get install build-essential libssl-dev libffi-dev python-dev python-pip

CentOS and RHEL

sudo yum install gcc libffi-devel python-devel openssl-devel python-pip


When python-pip is installed, you can then run:

sudo pip install --upgrade pip==9.0.2
sudo pip install --upgrade setuptools
sudo pip install --upgrade requests
sudo pip install nagiosplugin
sudo pip install azure
sudo pip install azure-monitor

Setup Azure for Monitoring

To monitor you Azure environment, you need to configure it for monitoring

This requires Administrator access on Azure. You need to retrieve the following credentials:

  • Subscription ID
  • Tenant/Directory ID
  • Client/Application ID
  • Secret Key

Step 1: Find Subscription ID

The Subscription ID can be found in the Subscriptions section under the All services section from the Azure dashboard

Azure Find Subscription Step 1

Azure Find Subscription Step 2

Step 2 : Find the Tenant/Directory ID

The Tenant/Directory ID can be found in the Azure Active Directory under the Properties section from the Azure dashboard

Azure Find Directory ID

Step 3: Find the Client/Application ID for your application

You need to create and register your application if you haven't already. Use the following documentation from Microsoft: Create an Azure Active Directory application

The Client/Application ID can be found in Azure Active Directory under the App registrations section from the Azure dashboard

Azure Find Application ID

Step 4: Generate the Secret Key for your application

You will need to create a Secret Key for your application, once this has been created its value will be hidden so save the value during creation

To create the Secret Key, select your application from the list, select the Settings within your application and then select the Keys option

There you can create a new key by adding the description and expiration period and the value will be generated

Azure Create Secret Key

Step 5: Provide access to the subscription you wish to monitor

Navigate to the Subscriptions section and select the Subscription you selected before

In the Subscription to be monitored, click Access Control (IAM)

Then click the Add button, select Monitoring Contributor and select the application

Azure Add Subscription

Azure Add Role

If you are running more than one subscription these steps will need to be done for each one you wish to monitor

Setup and Configuration

To configure and utilize this Opspack, you simply need to add the 'Cloud - Azure - Virtual Machines' Opspack to your Opsview Monitor system

Step 1: Add the Host Template

Add the Cloud - Azure - MySQL Server Host Template to your Opsview Monitor host.

For more information, refer to Opsview Knowledge Center Adding Host Templates to Hosts.

Step 2: Add and configure variables required for this host

Add 'AZURE_CREDENTIALS' to the host and set the Resource Group as its variable value, then override the Subscription ID, Client ID, Secret Key and Tenant ID to match the values retrieved earlier.

Azure Add Variables

For more information, refer to Opsview Knowledge Center - Adding Variables to Hosts.

Step 3: Apply changes and the system will now be monitored

Azure MySQL Service Checks