How to query Azure SQL Metrics using Powershell

Published 10-08-2020 06:48 AM 1,315 Views
Microsoft

One way you can quickly search and query metrics data is using Azure Portal, where you have chart data. But maybe you want to get the raw data and query it yourself. Find below a Powershell sample to get this data

 

Find below a sample I build based on one I got from https://docs.microsoft.com/en-us/azure/azure-sql/database/scripts/monitor-and-scale-database-powersh...

 

And you can get the other possible metric names to send it in as parameter in this other document: https://docs.microsoft.com/en-us/azure/azure-monitor/platform/metrics-supported#microsoftsqlserversd...

 

Find full sample at https://github.com/FonsecaSergio/ScriptCollection/blob/master/Powershell/AzureSQL%20-%20Read%20Azure...

 

But the main idea is using Get-AzMetric powershell command. You will get results as table, that you can save it in the format you want or save it to a database.

 

 

$MonitorParameters = @{
ResourceId = "/subscriptions/$($SubscriptionID)/resourceGroups/$($ResourceGroup)/providers/Microsoft.Sql/servers/$($ServerName)/databases/$($DBName)"
TimeGrain = $TimeGrain
MetricNames = $MetricName
StartTime = (Get-Date).AddDays($DaysToLook)
}
$Metrics = Get-AzMetric @MonitorParameters -DetailedOutput

 

 

TimeStamp           Average Metric                 
---------           ------- ------                 
07/10/2020 11:07:00       0 dtu_consumption_percent
07/10/2020 11:07:00      10 dtu_limit              
07/10/2020 11:07:00       0 dtu_used               
07/10/2020 11:12:00       0 dtu_consumption_percent
07/10/2020 11:12:00      10 dtu_limit              
07/10/2020 11:12:00       0 dtu_used               
07/10/2020 11:17:00    19,6 dtu_consumption_percent
07/10/2020 11:17:00      10 dtu_limit              
07/10/2020 11:17:00    1,96 dtu_used               
07/10/2020 11:22:00   34,85 dtu_consumption_percent
07/10/2020 11:22:00      10 dtu_limit              
07/10/2020 11:22:00   3,485 dtu_used               
07/10/2020 11:27:00    30,1 dtu_consumption_percent
07/10/2020 11:27:00      10 dtu_limit              
07/10/2020 11:27:00    3,01 dtu_used               
07/10/2020 11:32:00    27,7 dtu_consumption_percent
07/10/2020 11:32:00      10 dtu_limit              
07/10/2020 11:32:00    2,77 dtu_used               
07/10/2020 11:37:00       0 dtu_consumption_percent
07/10/2020 11:37:00      10 dtu_limit              
07/10/2020 11:37:00       0 dtu_used               
07/10/2020 11:42:00       0 dtu_consumption_percent
07/10/2020 11:42:00      10 dtu_limit              
07/10/2020 11:42:00       0 dtu_used               

 

%3CLINGO-SUB%20id%3D%22lingo-sub-1753305%22%20slang%3D%22en-US%22%3EHow%20to%20query%20Azure%20SQL%20Metrics%20using%20Powershell%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1753305%22%20slang%3D%22en-US%22%3E%3CP%3EOne%20way%20you%20can%20quickly%20search%20and%20query%20metrics%20data%20is%20using%20Azure%20Portal%2C%20where%20you%20have%20chart%20data.%20But%20maybe%20you%20want%20to%20get%20the%20raw%20data%20and%20query%20it%20yourself.%20Find%20below%20a%20Powershell%20sample%20to%20get%20this%20data%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EFind%20below%20a%20sample%20I%20build%20based%20on%20one%20I%20got%20from%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fazure%2Fazure-sql%2Fdatabase%2Fscripts%2Fmonitor-and-scale-database-powershell%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%22%3Ehttps%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fazure%2Fazure-sql%2Fdatabase%2Fscripts%2Fmonitor-and-scale-database-powershell%3C%2FA%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EAnd%20you%20can%20get%20the%20other%20possible%26nbsp%3B%3CSTRONG%3Emetric%20names%3C%2FSTRONG%3E%26nbsp%3Bto%20send%20it%20in%20as%20parameter%20in%20this%20other%20document%3A%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fazure%2Fazure-monitor%2Fplatform%2Fmetrics-supported%23microsoftsqlserversdatabases%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%22%3Ehttps%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fazure%2Fazure-monitor%2Fplatform%2Fmetrics-supported%23microsoftsqlserversdatabases%3C%2FA%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EFind%20full%20sample%20at%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2FFonsecaSergio%2FScriptCollection%2Fblob%2Fmaster%2FPowershell%2FAzureSQL%2520-%2520Read%2520Azure%2520SQL%2520Metrics.ps1%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%22%3Ehttps%3A%2F%2Fgithub.com%2FFonsecaSergio%2FScriptCollection%2Fblob%2Fmaster%2FPowershell%2FAzureSQL%2520-%2520Read%2520Azure%2520SQL%2520Metrics.ps1%3C%2FA%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EBut%20the%20main%20idea%20is%20using%26nbsp%3B%3CA%20title%3D%22Get-AzMetric%22%20href%3D%22https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fpowershell%2Fmodule%2Faz.monitor%2Fget-azmetric%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%22%3EGet-AzMetric%3C%2FA%3E%20powershell%20command.%26nbsp%3BYou%20will%20get%20results%20as%20table%2C%20that%20you%20can%20save%20it%20in%20the%20format%20you%20want%20or%20save%20it%20to%20a%20database.%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-powershell%22%3E%3CCODE%3E%24MonitorParameters%20%3D%20%40%7B%0AResourceId%20%3D%20%22%2Fsubscriptions%2F%24(%24SubscriptionID)%2FresourceGroups%2F%24(%24ResourceGroup)%2Fproviders%2FMicrosoft.Sql%2Fservers%2F%24(%24ServerName)%2Fdatabases%2F%24(%24DBName)%22%0ATimeGrain%20%3D%20%24TimeGrain%0AMetricNames%20%3D%20%24MetricName%0AStartTime%20%3D%20(Get-Date).AddDays(%24DaysToLook)%0A%7D%0A%24Metrics%20%3D%20Get-AzMetric%20%40MonitorParameters%20-DetailedOutput%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-powershell%22%3E%3CCODE%3ETimeStamp%20%20%20%20%20%20%20%20%20%20%20Average%20Metric%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A---------%20%20%20%20%20%20%20%20%20%20%20-------%20------%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A07%2F10%2F2020%2011%3A07%3A00%20%20%20%20%20%20%200%20dtu_consumption_percent%0A07%2F10%2F2020%2011%3A07%3A00%20%20%20%20%20%2010%20dtu_limit%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A07%2F10%2F2020%2011%3A07%3A00%20%20%20%20%20%20%200%20dtu_used%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A07%2F10%2F2020%2011%3A12%3A00%20%20%20%20%20%20%200%20dtu_consumption_percent%0A07%2F10%2F2020%2011%3A12%3A00%20%20%20%20%20%2010%20dtu_limit%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A07%2F10%2F2020%2011%3A12%3A00%20%20%20%20%20%20%200%20dtu_used%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A07%2F10%2F2020%2011%3A17%3A00%20%20%20%2019%2C6%20dtu_consumption_percent%0A07%2F10%2F2020%2011%3A17%3A00%20%20%20%20%20%2010%20dtu_limit%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A07%2F10%2F2020%2011%3A17%3A00%20%20%20%201%2C96%20dtu_used%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A07%2F10%2F2020%2011%3A22%3A00%20%20%2034%2C85%20dtu_consumption_percent%0A07%2F10%2F2020%2011%3A22%3A00%20%20%20%20%20%2010%20dtu_limit%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A07%2F10%2F2020%2011%3A22%3A00%20%20%203%2C485%20dtu_used%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A07%2F10%2F2020%2011%3A27%3A00%20%20%20%2030%2C1%20dtu_consumption_percent%0A07%2F10%2F2020%2011%3A27%3A00%20%20%20%20%20%2010%20dtu_limit%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A07%2F10%2F2020%2011%3A27%3A00%20%20%20%203%2C01%20dtu_used%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A07%2F10%2F2020%2011%3A32%3A00%20%20%20%2027%2C7%20dtu_consumption_percent%0A07%2F10%2F2020%2011%3A32%3A00%20%20%20%20%20%2010%20dtu_limit%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A07%2F10%2F2020%2011%3A32%3A00%20%20%20%202%2C77%20dtu_used%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A07%2F10%2F2020%2011%3A37%3A00%20%20%20%20%20%20%200%20dtu_consumption_percent%0A07%2F10%2F2020%2011%3A37%3A00%20%20%20%20%20%2010%20dtu_limit%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A07%2F10%2F2020%2011%3A37%3A00%20%20%20%20%20%20%200%20dtu_used%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A07%2F10%2F2020%2011%3A42%3A00%20%20%20%20%20%20%200%20dtu_consumption_percent%0A07%2F10%2F2020%2011%3A42%3A00%20%20%20%20%20%2010%20dtu_limit%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A07%2F10%2F2020%2011%3A42%3A00%20%20%20%20%20%20%200%20dtu_used%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-TEASER%20id%3D%22lingo-teaser-1753305%22%20slang%3D%22en-US%22%3E%3CP%3EOne%20way%20you%20can%20quickly%20search%20and%20query%20metrics%20data%20is%20using%20Azure%20Portal%2C%20where%20you%20have%20chart%20data.%20But%20maybe%20you%20want%20to%20get%20the%20raw%20data%20and%20query%20it%20yourself%3C%2FP%3E%3C%2FLINGO-TEASER%3E%3CLINGO-LABS%20id%3D%22lingo-labs-1753305%22%20slang%3D%22en-US%22%3E%3CLINGO-LABEL%3EAzure%20SQL%3C%2FLINGO-LABEL%3E%3CLINGO-LABEL%3EPowerShell%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E
Version history
Last update:
‎Oct 08 2020 06:48 AM
Updated by: