Strukturování dotazů Log Analytics
Správa istrátory vytvářejí dotazy Log Analytics z dat uložených ve vyhrazených tabulkách v pracovním prostoru služby Log Analytics. Mezi běžné vyhrazené tabulky patří Event, Syslog, Heartbeat a Alert. Když sestavíte dotaz dotazovací jazyk Kusto (KQL), začnete tím, že určíte, které tabulky v úložišti protokolů služby Azure Monitor obsahují data, která hledáte.
Následující obrázek ukazuje, jak dotazy KQL používají vyhrazená data tabulek pro monitorované služby a prostředky.
Co je potřeba vědět o struktuře dotazů KQL
Pojďme se podrobněji podívat na vyhrazená data tabulek a na strukturování dotazu protokolu KQL.
Každý z vybraných zdrojů dat a řešení ukládá data do vyhrazených tabulek v pracovním prostoru služby Log Analytics.
Dokumentace ke každému zdroji dat a řešení obsahuje název datového typu, který vytvoří, a popis jednotlivých vlastností.
Základní struktura dotazu je zdrojová tabulka následovaná řadou příkazů (označovaných jako operátory).
Dotaz může mít řetězec více operátorů, které upřesní data a provádějí pokročilé funkce.
Každý operátor v řetězci dotazu začíná znakem
|
svislé roury .Mnoho dotazů vyžaduje pouze data z jedné tabulky, ale jiné dotazy můžou používat různé možnosti a zahrnout data z více tabulek.
Příklady dotazů protokolu KQL
Pojďme se podívat na některé běžné operátory dotazů protokolu KQL a ukázkovou syntaxi.
Můžeme vytvořit dotazy pro vyhledávání dat v StormEvent
tabulce s pěti položkami:
type | event | závažnost | start | doba trvání | region |
---|---|---|---|---|---|
Water |
Freezing rain |
1 |
6:00 AM 01-27-2023 |
3 hours |
1, 2 |
Wind |
High winds |
1 |
8:00 AM 01-27-2023 |
12 hours |
1, 2, 4, 5 |
Temperature |
Below freezing |
2 |
11:00 PM 01-26-2023 |
10 hours |
1, 2, 4, 5 |
Water |
Snow |
3 |
4:00 PM 01-26-2023 |
10 hours |
1, 2, 4, 5 |
Water |
Flood warning |
2 |
9:00 AM 01-26-2023 |
10 hours |
3 |
Pokud chcete najít další operátory a příklady, projděte si téma: Analýza dat monitorování pomocí dotazovací jazyk Kusto – Školení | Microsoft Learn.
Počet položek
Pomocí operátoru count
můžete zjistit počet záznamů ve vstupní sadě záznamů.
Následující příklad vrátí počet záznamů v StormEvent
tabulce. Výsledky dotazu zobrazí StormEvent
tabulku s pěti položkami.
StormEvent | count
Výsledky dotazu:
count |
---|
5 |
Vrácení prvního počtu položek
Pomocí operátoru top
zobrazíte první N záznamy vstupní sady záznamů seřazené podle zadaných sloupců. Sloupce odpovídají vlastnostem dat definovaným ve vyhrazené tabulce.
Následující příklad vrátí první tři datové záznamy pro StormEvent
. Tabulka výsledků zobrazuje název stormu event
, závažnost a předpokládanou dobu trvání.
StormEvent | top 3 by event severity duration
Výsledky dotazu:
event | závažnost | doba trvání |
---|---|---|
Freezing rain |
1 |
3 hours |
High winds |
1 |
12 hours |
Below freezing |
2 |
10 hours |
Vyhledání odpovídajících položek
Pomocí operátoru where
vyfiltrujte tabulku na podmnožinu řádků, které odpovídají zadané predikátové hodnotě. Predikát označuje, co se má v tabulce hledat, jako v where=="find-this"
.
Následující příklad vyfiltruje datové záznamy tak StormEvent
, aby používaly pouze záznamy, které odpovídají "sněhu".
StormEvent | where event=="snow"
Dotaz filtruje jeden řádek v StormEvent
tabulce:
type | event | závažnost | start | doba trvání | region |
---|---|---|---|---|---|
Water |
Snow |
3 |
4:00 PM 01-26-2023 |
10 hours |
1, 2, 4, 5 |