Sdílet prostřednictvím


Příkaz .show commands

.show commands vrátí tabulku s dokončenými příkazy pro správu. Tyto příkazy jsou k dispozici pro dotazování po dobu 30 dnů.

Poznámka

Tento příkaz je užitečný při zkoumání problémů s výkonem, protože zobrazuje prostředky spotřebované jednotlivými příkazy pro správu. Podívejte se na příklady.

Oprávnění

Správce databáze nebo monitorování databáze uvidí jakýkoli příkaz, který byl v databázi vyvolán. Ostatní uživatelé vidí jenom svoje příkazy.

Syntax

.show commands

Návraty

Návratová tabulka obsahuje dva sloupce s podrobnostmi o spotřebě prostředků pro každý dokončený příkaz.

  • TotalCpu – Celkový čas procesoru (uživatelský režim + režim jádra) spotřebovaný tímto příkazem.
  • ResourceUtilization – Obsahuje všechny informace o použití prostředků souvisejících s tímto příkazem, včetně totalCpu.

Spotřeba prostředků, která se sleduje, zahrnuje aktualizace dat a všechny dotazy přidružené k aktuálnímu příkazu správce. Tabulka příkazů v současné době pokrývá jenom některé příkazy pro správu (.ingest, .set, .append, .set-or-replace). .set-or-append Postupně se do tabulky příkazů přidávají další příkazy.

Příklad výstupu

ClientActivityId Commandtype Text Databáze SpuštěnoOn LastUpdatedOn Doba trvání Stav RootActivityId Uživatel ChybaReason Aplikace Objekt zabezpečení TotalCpu Využití prostředků Skupina úloh
KD2RunCommand; a069f9e3-6062-4a0e-aa82-75a1b5e16fb4 RozsahyMerge .merge async Operations ... DB1 2017-09-05 11:08:07.5738569 2017-09-05 11:08:09.1051161 00:00:01.5312592 Dokončeno b965d809-3f3e-4f44-bd2b-5e1f49ac46c5 ID aplikace AAD=5ba8cec2-9a70-e92c98cad651 Kusto.Azure.DM.Svc aadapp=5ba8cec2-9a70-e92c98cad651 00:00:03.5781250 { "ScannedExtentsStatistics": { "MinDataScannedTime": null, "MaxDataScannedTime": null }, "CacheStatistics": { Memory": { "Misses": 2, "Hits": 20 }, "Disk": { "Misses": 2, "Hits": 0 } }, "MemoryPeak": 159620640, "TotalCpu": "00:00:03.5781250" } internal
KE. Spustitpříkaz; 710e08ca-2cd3-4d2d-b7bd-2738d335aa50 DataIngestPull .ingest do MyTableName ... TestDB 2017-09-04 16:00:37.0915452 2017-09-04 16:04:37.2834555 00:04:00.1919103 Neúspěšný a8986e9e-943f-81b0270d6fae4 cooper@fabrikam.com Připojení soketu bylo odstraněno. Kusto.Explorer aaduser=... 00:00:00 { "ScannedExtentsStatistics": { "MinDataScannedTime": null, "MaxDataScannedTime": null }, "CacheStatistics": { "Memory": { "Misses": 0, Hits": 0 }, "Disk": { "Misses": 0, "Hits": 0 } }, "MemoryPeak": 0, "TotalCpu": "00:00:00"} default
KD2RunCommand; 97db47e6-93e2-4306-8b7d-670f2c3307ff RozsahyRebuild .merge async Operations ... DB2 2017-09-18 13:29:38.5945531 2017-09-18 13:29:39.9451163 00:00:01.3505632 Dokončeno d5ebb755-d5df-4e94-b240-9accdf06c2d1 ID aplikace AAD=5ba8cec2-9a70-e92c98cad651 Kusto.Azure.DM.Svc aadapp=5ba8cec2-9a70-e92c98cad651 00:00:00.8906250 { "ScannedExtentsStatistics": { "MinDataScannedTime": null, "MaxDataScannedTime": null }, "CacheStatistics": { Memory": { "Misses": 0, "Hits": 1 }, "Disk": { "Misses": 0, "Hits": 0 } }, "MemoryPeak": 88828560, "TotalCpu": "00:00:00.8906250"} internal

Příklady

Extrahování dat ze ResourceUtilization sloupce

Pokud chcete získat přístup k jedné z vlastností ve sloupci ResourceUtilization , zavolejte na ResourcesUtilization.PropertyName.

Poznámka

ResourceUtilization je dynamický sloupec. Pokud chcete pracovat s jeho hodnotami, měli byste je nejprve převést na konkrétní datový typ. Použijte funkci převodu, například tolong, toint, totimespan.

Příklad:

.show commands
| where CommandType == "TableAppend"
| where StartedOn > ago(1h)
| extend MemoryPeak = tolong(ResourcesUtilization.MemoryPeak)
| top 3 by MemoryPeak desc
| project StartedOn, MemoryPeak, TotalCpu, Text

Výstup

SpuštěnoOn MemoryPeak TotalCpu Text
2017-09-28 12:11:27.8155381 800396032 00:00:04.5312500 .append Server_Boots <| let bootStartsSourceTable = SessionStarts; ...
2017-09-28 11:21:26.7304547 750063056 00:00:03.8218750 .set-or-append WebUsage <| database('CuratedDB'). WebUsage_v2 | summarize ... | Projektu...
2017-09-28 12:16:17.4762522 676289120 00:00:00.0625000 .set-or-append AtlasClusterEventStats with(...) <| Atlas_Temp(datetime(2017-09-28 12:13:28.7621737), datetime(2017-09-28 12:14:28.8168492))

Dotaz na TotalCpu sloupec

10 dotazů s nejvyšším využitím procesoru za poslední den

.show commands
| where StartedOn > ago(1d)
| top 10 by TotalCpu
| project StartedOn, CommandType, ClientActivityId, TotalCpu 

Všechny dotazy za posledních 10 hodin, jejichž totalcpu uplynuly 3 minuty.

.show commands
| where StartedOn > ago(10h) and TotalCpu > 3m
| project StartedOn, CommandType, ClientActivityId, TotalCpu 
| order by TotalCpu 

Všechny dotazy za posledních 24 hodin, jejichž totalcpu uplynulo 5 minut, seskupené podle uživatele a objektu zabezpečení.

.show commands  
| where StartedOn > ago(24h)
| summarize TotalCount=count(), CountAboveThreshold=countif(TotalCpu > 2m), AverageCpu = avg(TotalCpu), MaxTotalCpu=max(TotalCpu), (50th_Percentile_TotalCpu, 95th_Percentile_TotalCpu)=percentiles(TotalCpu, 50, 95) by User, Principal
| extend PercentageAboveThreshold = strcat(substring(CountAboveThreshold * 100 / TotalCount, 0, 5), "%")
| order by CountAboveThreshold desc
| project User, Principal, CountAboveThreshold, TotalCount, PercentageAboveThreshold, MaxTotalCpu, AverageCpu, 50th_Percentile_TotalCpu, 95th_Percentile_TotalCpu

Časový graf: Průměrný procesor vs. 95. percentil vs. maximální využití procesoru.

.show commands 
| where StartedOn > ago(1d) 
| summarize MaxCpu_Minutes=max(TotalCpu)/1m, 95th_Percentile_TotalCpu_Minutes=percentile(TotalCpu, 95)/1m, AverageCpu_Minutes=avg(TotalCpu)/1m by bin(StartedOn, 1m)
| render timechart

Dotaz na MemoryPeak sloupec

Prvních 10 dotazů za poslední den s nejvyššími MemoryPeak hodnotami

.show commands
| where StartedOn > ago(1d)
| extend MemoryPeak = tolong(ResourcesUtilization.MemoryPeak)
| project StartedOn, CommandType, ClientActivityId, TotalCpu, MemoryPeak
| top 10 by MemoryPeak  

Časový diagram průměrné pamětiPeak vs. 95. percentil vs. Max MemoryPeak.

.show commands 
| where StartedOn > ago(1d)
| project MemoryPeak = tolong(ResourcesUtilization.MemoryPeak), StartedOn 
| summarize Max_MemoryPeak=max(MemoryPeak), 95th_Percentile_MemoryPeak=percentile(MemoryPeak, 95), Average_MemoryPeak=avg(MemoryPeak) by bin(StartedOn, 1m)
| render timechart