Förstå Kusto-frågespråk-instruktionsstrukturen
En KQL-fråga är en skrivskyddad begäran om att bearbeta data och returnera resultat. Begäran anges i oformaterad text med hjälp av en dataflödesmodell som är utformad för att göra syntaxen enkel att läsa, skriva och automatisera. Frågan använder schemaentiteter som är ordnade i en hierarki som liknar SQL: databaser, tabeller och kolumner.
Frågan består av en sekvens med frågeinstruktioner. Minst en instruktion är en tabelluttryckssats som genererar data ordnade i ett tabellliknande nät med kolumner och rader. Frågans tabellbaserade uttrycksinstruktioner producerar resultatet av frågan.
Syntaxen för tabelluttrycksinstrukna har tabelldataflöde från en tabellfrågasoperator till en annan. Börjar med datakällan och flödar sedan genom en uppsättning datatransformeringsoperatorer som binds samman med hjälp av pipe-avgränsare (|).
Följande fråga har till exempel en enda instruktion, som är en tabelluttryckssats. -instruktionen börjar med en tabell med namnet SecurityEvent. EventID-kolumnens värde filtrerar data (rader) och sedan sammanfattas resultaten genom att skapa en ny kolumn för count() per konto. I förberedelsefasen begränsas sedan resultatet till 10 rader.
Viktigt!
Det är viktigt att förstå hur resultatet flödar genom röret |. Allt till vänster om röret bearbetas och skickas sedan till höger om röret.
Få åtkomst till Log Analytics-demomiljön
Microsoft ger åtkomst till en miljö för att öva på att skriva KQL-instruktioner. Det enda kravet är att ha ett konto för att logga in på Azure. Det finns inga avgifter för ditt Azure-konto för åtkomst till den här miljön. Du kan köra KQL-uttrycken i den här modulen i demomiljön.
Du kan komma åt demomiljön på logs demo-webbplatsen. Om du får meddelandet "Inga resultat hittades" kan du prova att ändra tidsintervallet.
Viktigt!
Log Analytics-demodatabasen är en dynamisk miljö. Händelserna som registreras i tabellerna i den miljön uppdateras kontinuerligt med olika säkerhetshändelser. Detta liknar vad en person skulle uppleva i en verklig säkerhetsåtgärdsinställning. Därför kan begränsade frågor i den här utbildningen inte visa några resultat beroende på demodatabasens tillstånd när frågan körs. En fråga i tabellen SecurityEvent för "discardEventID = 4688" under den senaste dagen kan till exempel inte visa några resultat om den specifika händelsen senast ägde rum för tre dagar sedan. Därför kan du behöva justera variabler i skripten som anges i den här utbildnings-ad hoc beroende på vilka data som finns i demodatabasen när du kör skriptet för att frågan ska visa resultat. Dessa skriptjusteringar liknar vad du skulle göra i verkligheten och bör hjälpa dig att lära dig hur de specifika delarna i skriptfunktionen.
Frågefönstret har tre primära avsnitt:
Det vänstra området är en referenslista över tabellerna i miljön.
Det övre området i mitten är frågeredigeraren.
Det nedre området är frågeresultatet.
Innan du kör en fråga justerar du tidsintervallet för att begränsa data. Om du vill ändra de resultatkolumner som visas markerar du rutan Kolumner och väljer de kolumner som krävs.