Query Performance Logs in KQL
less than a minute
This uses Azure Logs and KQL to query performance vales.
Average disk IOPS
Perf
| where TimeGenerated > ago(30d)
| where ObjectName == "LogicalDisk"
| where CounterName == "Disk Transfers/sec"
| summarize IopsAvg = avg(CounterValue), IopsMax = max(CounterValue) by InstanceName
| where strlen(InstanceName) ==2 and InstanceName contains ":"
Average disk throughput in MBps
Perf
| where TimeGenerated > ago(30d)
| where ObjectName == "LogicalDisk"
| where CounterName == "Disk Bytes/sec"
| summarize ThroughputInMBsAvg = (avg(CounterValue)/1024/1024), ThroughputInMBsMax = (max(CounterValue)/1024/1024) by InstanceName
| where strlen(InstanceName) ==2 and InstanceName contains ":"
Disk free space
Perf
| where TimeGenerated > ago(1d)
| where ObjectName == "LogicalDisk"
| where CounterName == "% Free Space"
| summarize Free_Space_Percent = max(CounterValue) by InstanceName
| where strlen(InstanceName) ==2 and InstanceName contains ":"
Last modified July 21, 2024: update (e2ae86c)