Zapytania dotyczące tabeli AzureMetrics

Wykres kołowy kodów odpowiedzi HTTP

Podział kodów odpowiedzi dla każdej metryki w ciągu ostatnich 12 godzin.

AzureMetrics 
| where TimeGenerated > ago(12h)  
| where MetricName in ("Http2xx", "Http3xx", "Http4xx", "Http5xx") 
| summarize sum(Total) by MetricName  
| render piechart

Wykres liniowy czasów odpowiedzi

Szereg czasu średniego czasu odpowiedzi (w odstępach 5 minut).

AzureMetrics 
| extend timeBin = bin(TimeGenerated, 5m) 
| summarize ResponseTime = sumif(Average, MetricName=="AverageResponseTime") by timeBin, bin(TimeGenerated, 1h) 
| sort by TimeGenerated desc 
| render timechart

[Klasyczny] Znajdowanie w usłudze AzureMetrics

[Klasyczny] Znajdź w usłudze AzureMetrics, aby wyszukać określoną wartość w tabeli AzureMetrics./nNote, że to zapytanie wymaga zaktualizowania parametru <SeachValue> w celu wygenerowania wyników

// This query requires a parameter to run. Enter value in SearchValue to find in table.
let SearchValue =  "<SearchValue>";//Please update term you would like to find in the table.
AzureMetrics
| where * contains tostring(SearchValue)
| take 1000

Najnowsze metryki

Pokaż najnowsze raporty metryk dla każdej zgłoszonej metryki.

AzureMetrics 
| summarize arg_max(TimeGenerated, UnitName, Total, Count, Maximum, Minimum, Average) by MetricName

Znajdowanie w usłudze AzureMetrics

Znajdź w usłudze AzureMetrics, aby wyszukać określoną wartość w tabeli AzureMetrics./nNote, że to zapytanie wymaga zaktualizowania parametru <SeachValue> w celu wygenerowania wyników

// This query requires a parameter to run. Enter value in SearchValue to find in table.
let SearchValue =  "<SearchValue>";//Please update term you would like to find in the table.
AzureMetrics
| where * contains tostring(SearchValue)
| take 1000

Wykres ruchu bitów obwodu usługi ExpressRouteInPerSecond

Wykres ruchu BitsInPerSecond (ostatnia godzina).

AzureMetrics
| where MetricName == "BitsInPerSecond"
| summarize by Average, bin(TimeGenerated, 1h), Resource
| render timechart

Wykres ruchu bitów obwodu usługi ExpressRouteOutPerSecond

Wykres ruchu BitsOutPerSecond (ostatnia godzina).

AzureMetrics
| where MetricName == "BitsOutPerSecond"
| summarize by Average, bin(TimeGenerated, 1h), Resource
| render timechart

Wykres ArpAvailablility obwodu usługi ExpressRoute

Wykres ruchu dla ArpAvailability (5 minut).

AzureMetrics
| where MetricName == "ArpAvailability"
| summarize by Average, bin(TimeGenerated, 5m), Resource
| render timechart

Dostępność protokołu BGP obwodu usługi ExpressRoute

Wykres ruchu dla BgpAvailability (5 minut).

AzureMetrics
| where MetricName == "BgpAvailability"
| summarize by Average, bin(TimeGenerated, 5m), Resource
| render timechart

Średnie użycie procesora CPU

Średnie użycie procesora CPU w ciągu ostatniej godziny według nazwy zasobu.

//consistently high averages could indicate a customer needs to move to a larger SKU
AzureMetrics
| where ResourceProvider == "MICROSOFT.SQL" // /DATABASES
| where TimeGenerated >= ago(60min)
| where MetricName in ('cpu_percent') 
| parse _ResourceId with * "/microsoft.sql/servers/" Resource  // subtract Resource name for _ResourceId
| summarize CPU_Maximum_last15mins = max(Maximum), CPU_Minimum_last15mins = min(Minimum), CPU_Average_last15mins = avg(Average) by Resource , MetricName

Rozwiązywanie problemów z wydajnością

Potencjalnie zapytanie lub zakleszczenie w systemie, które może prowadzić do niskiej wydajności.

//potentially a query or deadlock on the system that could lead to poor performance
AzureMetrics
| where ResourceProvider == "MICROSOFT.SQL"
| where TimeGenerated >=ago(60min)
| where MetricName in ('deadlock')
| parse _ResourceId with * "/microsoft.sql/servers/" Resource // subtract Resource name for _ResourceId
| summarize Deadlock_max_60Mins = max(Maximum) by Resource, MetricName

Ładowanie danych

Monitoruj ładowanie danych w ciągu ostatniej godziny.

AzureMetrics
| where ResourceProvider == "MICROSOFT.SQL"
| where TimeGenerated >= ago(60min)
| where MetricName in ('log_write_percent')
| parse _ResourceId with * "/microsoft.sql/servers/" Resource// subtract Resource name for _ResourceId
| summarize Log_Maximum_last60mins = max(Maximum), Log_Minimum_last60mins = min(Minimum), Log_Average_last60mins = avg(Average) by Resource, MetricName

Liczba połączeń punkt-lokacja

Liczba połączeń aktywnych punkt-lokacja przez ostatnie 30 dni.

AzureMetrics 
| where TimeGenerated > ago(30d)
| where MetricName == "P2SConnectionCount"
| summarize by Maximum, bin(TimeGenerated,1h), Resource
| render timechart

Wykorzystanie przepustowości punkt-lokacja

Średnie wykorzystanie przepustowości P2S w ciągu ostatnich 12 godzin w bitach/sekundach.

AzureMetrics
| where TimeGenerated > ago(24h)
| where MetricName == "P2SBandwidth" 
| summarize by Average, bin(TimeGenerated, 1h), Resource
| render timechart

Przepływność bramy

Agregowanie przepływności bramy w bajtach/s.

AzureMetrics 
| where TimeGenerated > ago(24h)
| where MetricName == "AverageBandwidth"
| summarize by Average, bin(TimeGenerated, 1h), Resource
| render timechart

Pokaż dzienniki z tabeli AzureMetrics

Listy najnowsze dzienniki w tabeli AzureMetrics posortowane według czasu (najnowsza pierwsza).

AzureMetrics
| top 10 by TimeGenerated

Pokaż dzienniki z tabeli AzureMetrics

Listy najnowsze dzienniki w tabeli AzureMetrics posortowane według czasu (najnowsza pierwsza).

AzureMetrics
| top 10 by TimeGenerated

Dostępność klastra (KeepAlive)

Wyświetl dostępność klastra w ciągu ostatniej godziny.

// To create an alert for this query, click '+ New alert rule'
AzureMetrics 
| where ResourceProvider == "MICROSOFT.KUSTO"
| where TimeGenerated > ago(1d)
| where MetricName == "KeepAlive"
| parse _ResourceId with * "providers/microsoft.kusto/clusters/" cluster_name // Get the cluster name from the ResourceId string
| summarize heartbeat_count = count() by bin(TimeGenerated, 30m), cluster_name // bin is used to set the time grain to 30 minutes
| extend alive=iff(heartbeat_count > 0, true, false)
| sort by TimeGenerated asc // sort the results by time (ascending order)