Kusto Query Language für Azure Resource Graph: Ein Leitfaden für Einsteiger
Von Mirko Peters ·
Meistern Sie Kusto Query Language (KQL) für Azure Resource Graph. Lernen Sie die einfache Syntax, Pipeline-Filter, Pipes und Abfragen kennen, mit denen Sie Ihre Cloud-Umgebung verwalten.
Automatisch mit KI aus dem Originalbeitrag übersetzt. Englisches Original lesen

Wer Kusto Query Language (KQL) für Azure Resource Graph beherrscht, kann Cloud-Administratoren saubere, extrem schnelle Abfragen ermöglichen. Damit lassen sich Cloud-Inventar, Sicherheitsrisiken und Governance-Compliance über mehrere Abonnements hinweg mühelos ermitteln, ohne manuell im Portal zu klicken.
Das Wichtigste in Kürze
- KQL-Abfragen lesen sich wie ein Rezept: Mit dem Pipe-Zeichen (|) werden aufeinanderfolgende Verarbeitungsschritte der Daten verkettet.
- Die Standardtabelle 'resources' enthält die meisten Informationen, die Sie abfragen müssen, und zwar über mehrere Azure-Abonnements gleichzeitig.
- Mit den Operatoren project und extend bereinigen Sie unübersichtliche Ausgaben und extrahieren verschachtelte Eigenschaftswerte, ohne unnötigen Code.
- Resource Graph begrenzt Ergebnisse standardmäßig auf 1.000 Datensätze als Schutzmechanismus. Bei sehr großen Umgebungen sind Paging-Token erforderlich.
- Die in Azure Resource Graph erlernten KQL-Kenntnisse lassen sich direkt auf Log Analytics und Azure Data Explorer übertragen.
KQL in Azure Resource Graph verständlich erklärt
Wenn Sie Kusto Query Language (KQL) zum ersten Mal begegnen, wirkt das Akronym womöglich einschüchternd. Lässt man den technischen Fachjargon jedoch beiseite, zeigt sich eine erstaunlich zugängliche, englischähnliche Syntax, die das Abfragen der Cloud-Infrastruktur intuitiv machen soll. Anders als beim Schreiben komplexer Anwendungen oder umfangreicher Skripte geht es bei KQL allein darum, Fragen zu stellen und strukturierte Daten abzurufen.
Jede Frage, die Sie in Azure Resource Graph stellen, basiert auf KQL. Wenn Sie Azure Data Explorer oder Log Analytics kennen, wirkt diese Syntax sofort vertraut. Doch selbst wenn Sie bei null anfangen, ist die Lernkurve überraschend flach. Den Kernbestand an KQL, den Sie für die tägliche Verwaltung der Cloud benötigen, können Sie in einer einzigen Sitzung lernen.
Der Aufbau einer KQL-Abfrage
Eine KQL-Abfrage liest sich wie ein Schritt-für-Schritt-Rezept. Das Geheimnis dieser Lesbarkeit ist das Pipe-Zeichen (|), das einzelne Anweisungen voneinander trennt. Sie beginnen mit einer Basistabelle mit Daten und leiten diese dann an nachfolgende Befehle weiter, die die Ausgabe eingrenzen, filtern oder umformen.
Lesen Sie eine KQL-Abfrage von oben nach unten, klingt sie fast wie ein normaler Satz. Betrachten Sie zum Beispiel die einfachste nützliche Abfrage, die Sie schreiben können:
resources | summarize countLaut ausgesprochen bedeutet dieser Befehl: Nimm alles aus der Standardtabelle resources und gib mir eine Anzahl. Das System liefert eine einzige, sehr aussagekräftige Zahl, die den Gesamtumfang Ihrer Cloud-Umgebung widerspiegelt.
Wesentliche Operatoren für Cloud-Administratoren
Sobald Sie das Zählen Ihrer Ressourcen beherrschen, werden Sie die Daten filtern und formatieren wollen. Einige grundlegende Operatoren übernehmen in fast jeder administrativen Abfrage die Hauptarbeit:
- where: Filtert Ihren Datensatz anhand bestimmter Bedingungen. Wenn Sie Ihre Abfrage zum Beispiel in
resources | where type == "Microsoft.Compute/virtualMachines"ändern, beschränkt sich die Zählung strikt auf virtuelle Computer. - project: Legt fest, welche Spalten in der endgültigen Ausgabe erscheinen. So zeigen Sie nur den Ressourcennamen, den Standort und die Abonnement-ID an, statt einer riesigen Menge an rohen JSON-Daten.
- order by: Sortiert Ihre Ergebnisse alphabetisch oder numerisch und macht aus einem zufälligen Datenhaufen eine übersichtliche, leicht überblickbare Tabelle.
- extend: Erstellt eine temporäre benutzerdefinierte Spalte, mit der Sie tief verschachtelte Konfigurationswerte extrahieren und mit kurzen, wiederverwendbaren Bezeichnungen versehen können.
Häufige Fallstricke bei KQL vermeiden
KQL ist in mancher Hinsicht nachsichtig, bei der Groß- und Kleinschreibung gelten jedoch strikte Regeln. Der Operator für den Vergleich ohne Berücksichtigung der Groß- und Kleinschreibung (geschrieben als Gleichheitszeichen mit Tilde, etwa =~) ignoriert die Schreibweise zuverlässig, wenn Sie nach Zeichenfolgenwerten wie Ressourcentypen suchen. Bei Eigenschaftsnamen gilt jedoch etwas völlig anderes. Wenn Sie einen Eigenschaftsnamen falsch schreiben oder die Groß- und Kleinschreibung falsch wählen, gibt KQL keinen deutlichen Syntaxfehler aus. Stattdessen liefert die Abfrage still leere Werte zurück, und Sie suchen womöglich einen Fehler, der in Ihrer Logik gar nicht existiert.
Tabellen jenseits der Grundlagen nutzen
Die Tabelle resources deckt die meisten alltäglichen Verwaltungsprüfungen ab. Für tiefergehende Governance-Aufgaben gibt es jedoch spezialisierte Tabellen. Wenn Sie Sicherheitsstatus prüfen, Richtlinienzuweisungen überprüfen oder Ihre Organisationsstrukturen untersuchen möchten, etwa Verwaltungsgruppen, Abonnements und Ressourcengruppen, können Sie Ihre KQL-Abfragen direkt auf diese dedizierten Tabellen richten.
Da KQL ein plattformübergreifender Standard im Microsoft-Ökosystem ist, zahlt sich die Beherrschung dieser Muster sofort aus. Die Abfragen, die Sie heute zum Bereinigen verwaister Netzwerksicherheitsgruppen oder zum Auffinden nicht getaggter virtueller Maschinen schreiben, eignen sich genauso gut für Sicherheitswarnungen in Microsoft Defender oder für operative Dashboards in Log Analytics.
Fazit und nächste Schritte
Die Kusto Query Language verwandelt Azure Resource Graph von einer undurchsichtigen Backend-Engine in Ihr bevorzugtes Werkzeug für die tägliche Cloud-Verwaltung. Mit präzisen, gut lesbaren Abfragen ersetzen Sie mühsame Klickorgien im Portal und fragile Skripte und gewinnen volle Transparenz über Ihre Umgebung mit mehreren Abonnements.
Um tiefer in die Vereinfachung Ihrer Cloud-Administrationsprozesse einzusteigen, hören Sie sich die vollständige Episode an mit weiteren Experteneinblicken, praktischen Beispielen und Anleitungen, wie Sie Azure Resource Graph für Ihre Organisation nutzbar machen.
Häufige Fragen
Was ist KQL und warum wird es in Azure Resource Graph verwendet?
KQL steht für Kusto Query Language. Es handelt sich um eine schlanke, intuitive Abfragesprache, mit der Sie in Resource Graph Fragen an Ihre Azure-Umgebung stellen. Sie ermöglicht es, Tausende Cloud-Ressourcen sofort zu filtern, zu sortieren und zu gruppieren, und zwar mit einer lesbaren, durch Pipe-Zeichen getrennten Syntax.
Wie filtere ich Ressourcen nach Typ mit KQL?
Sie filtern Ressourcen, indem Sie nach der ersten Tabellendeklaration eine „where“-Klausel hinzufügen. Beispielsweise gibt 'resources | where type =~ "microsoft.keyvault/vaults"' nur Ihre Azure Key Vaults zurück.
Warum gibt meine KQL-Abfrage leere Werte statt eines Fehlers zurück?
Eigenschaftsnamen in KQL unterscheiden zwischen Groß- und Kleinschreibung. Wenn Sie einen Eigenschaftsnamen in der Schreibweise falsch wählen, gibt Azure Resource Graph keinen Syntaxfehler aus, sondern liefert still leere Werte zurück, was die Fehlersuche erschwert.
Was ist das Limit von 1.000 Datensätzen in Azure Resource Graph?
Standardmäßig gibt eine Resource-Graph-Abfrage höchstens 1.000 Datensätze zurück, damit Benutzer nicht versehentlich riesige Datenmengen abrufen. Wenn Ihre Umgebung Tausende Ressourcen umfasst, können Sie dieses Limit mithilfe von Fortsetzungstoken umgehen oder seitenweise durchblättern.