Grundlegendes zur Anweisungsstruktur der Kusto-Abfragesprache
Eine KQL-Abfrage ist eine schreibgeschützte Anforderung zur Verarbeitung von Daten und zur Rückgabe der Ergebnisse. Die Anforderung wird als Nur-Text angegeben, wobei ein Datenflussmodell verwendet wird, das darauf ausgelegt ist, die Lesbarkeit, das Schreiben und die Automatisierung der Syntax zu vereinfachen. Die Abfrage verwendet Schemaentitäten, die in einer SQL-ähnlichen Hierarchie angeordnet sind: in Datenbanken, Tabellen und Spalten.
Eine Abfrage besteht aus einer Sequenz von Abfrageanweisungen. Mindestens eine Anweisung besteht aus einer tabellarischen Ausdrucksanweisung, die in Spalten und Zeilen angeordnete Daten erzeugt. Die tabellarischen Ausdrucksanweisungen der Abfrage erzeugen die Ergebnisse der Abfrage.
Die Syntax des tabellarischen Ausdrucks lässt tabellarische Daten von einem tabellarischen Abfrageoperator zu einem anderen fließen. Sie beginnen mit der Datenquelle und durchlaufen dann eine Reihe von Datenumwandlungsoperatoren, die durch das Trennzeichen Pipe (|) miteinander verbunden sind.
Beispielsweise enthält die folgende Abfrage eine einzelne Anweisung, die eine tabellarische Ausdrucksanweisung ist. Die Anweisung beginnt mit einer Tabelle mit dem Namen „SecurityEvent“. Der Wert der Spalte „EventID“ filtert die Daten (Zeilen). Anschließend werden die Ergebnisse zusammengefasst, indem eine neue Spalte für „count()“ nach „Account“ erstellt wird. In der Vorbereitungsphase werden die Ergebnisse dann auf 10 Zeilen begrenzt.
Wichtig
Es ist wichtig, den durch die Pipe (|) getrennten Ergebnisfluss zu verstehen. Alle Informationen auf der linken Seite der Pipe werden verarbeitet und dann an die rechte Seite der Pipe übergeben.
Zugreifen auf die Log Analytics-Demoumgebung
Microsoft bietet Zugriff auf eine Umgebung, in der das Schreiben von KQL-Anweisungen geübt werden kann. Sie benötigen hierfür lediglich ein Konto, um sich bei Azure anzumelden. Für den Zugriff auf diese Umgebung fallen keine Gebühren für Ihr Azure-Konto an. Sie können die KQL-Anweisungen in diesem Modul in der Demoumgebung ausführen.
Sie können auf der Protokolldemowebsite auf die Demoumgebung zugreifen. Wenn Sie die Meldung „Keine Ergebnisse gefunden“ erhalten, versuchen Sie, den Zeitraum zu ändern.
Wichtig
Die Log Analytics-Demodatenbank ist eine dynamische Umgebung. Die in den Tabellen in dieser Umgebung aufgezeichneten Ereignisse werden fortlaufend mit unterschiedlichen Sicherheitsereignissen aktualisiert. Dies entspricht dem, was eine Person in einer realen Sicherheitsbetriebsumgebung erleben würde. Daher können endliche Abfragen in diesem Training, abhängig vom Status der Demodatenbank zum Zeitpunkt der Abfrageausführung, keine Ergebnisse anzeigen. Beispielsweise zeigt eine Abfrage der SecurityEvent-Tabelle nach „discardEventID = 4688“ innerhalb des letzten Tages möglicherweise keine Ergebnisse an, wenn dieses spezifische Ereignis zuletzt vor drei Tagen stattgefunden hat. Daher müssen Sie möglicherweise Variablen in den aufgeführten Skripts dieses Trainings ad hoc anpassen, je nachdem, welche Daten sich zum Zeitpunkt der Ausführung des Skripts in der Demodatenbank befinden, damit die Abfrage Ergebnisse anzeigen kann. Diese Skriptanpassungen ähneln dem, was Sie in der realen Welt ausführen würden, und sollten Ihnen helfen zu verstehen, wie die spezifischen Teile des Skripts funktionieren.
Das Abfragefenster umfasst drei Hauptabschnitte:
Der linke Bereich zeigt eine Referenzliste der Tabellen in der Umgebung an.
Im Bereich oben in der Mitte befindet sich der Abfrage-Editor.
Der untere Bereich enthält die Abfrageergebnisse.
Geben Sie vor dem Ausführen einer Abfrage den Zeitbereich an, um den Datenumfang festzulegen. Wenn Sie die Anzeige der Ergebnisspalten ändern möchten, wählen Sie im Feld „Spalten“ die erforderlichen Spalten aus.