Ressourcenlogs zentral auswerten? Log Analytics konfigurieren

Veröffentlicht am:

Ein Upload oder Download schlägt fehl. Du brauchst Zeitpunkt, Operation und Ergebnis der Anfrage an einem durchsuchbaren Ort. In dieser Übung sammelst du Ressourcenlogs von Blob Storage und findest deine eigenen Upload-, Download- und Löschanfragen wieder.

Bestandteil Aufgabe
Azure Monitor Monitoringdienst für Logs, Metriken und Warnungen.
Log-Analytics-Workspace Speichert gesammelte Logs in Tabellen mit Zugriffs- und Aufbewahrungseinstellungen.
Diagnoseeinstellung Legt fest, welche Logkategorien einer Ressource an den Workspace gehen.
KQL Kusto Query Language: filtert, wählt aus und fasst Logeinträge zusammen.

Der Weg lautet Blob-Anfrage → Ressourcenlog → Diagnoseeinstellung → Workspace-Tabelle → KQL-Ergebnis. Weitere Ressourcen können ihre Logs später an denselben Workspace senden.

Verwende CloudTrips TEST und dein Laborkonto mit Owner-Rolle im Abonnement. Du arbeitest im Azure-Portal mit einem neuen Workspace und einem kleinen Storage Account. Für Logaufnahme, Aufbewahrung und Storage-Operationen können nutzungsabhängige Kosten entstehen. Prüfe im Verlauf der Monitoring-Übungen Usage and estimated costs im Workspace.

Log-Analytics-Workspace erstellen

Öffne Azure portal → Log Analytics workspaces → Create:

Subscription: CloudTrips TEST
Resource group: rg-cloudtrips-monitor-test-weu (neu erstellen)
Name: law-ctmonitorweu
Region: West Europe

Wähle Review + create → Create und öffne anschließend Overview des Workspace. Prüfe Name, Ressourcengruppe und Region. Dieser Workspace wird das gemeinsame Ziel für deine Monitoring-Übungen.

Screenshot 1: Log-Analytics-Workspace Overview mit law-ctmonitorweu in rg-cloudtrips-monitor-test-weu, West Europe.

Übersicht des Log-Analytics-Workspace law-ctmonitorweu in West Europe

Logs einer Ressource verbinden

Erstelle unter Storage accounts → Create einen kleinen Storage Account:

Resource group: rg-cloudtrips-monitor-test-weu
Storage account name: stctmonitorweu (bei Bedarf ändern)
Region: West Europe
Preferred storage type: Blob storage or Azure Data Lake Storage (ADLS) Gen 2
Performance: Standard
Redundancy: Locally-redundant storage (LRS)
Hierarchical namespace: Disabled
Allow storage account key access: Enabled für diese Übung
Allow Blob anonymous access: Disabled
Public network access: Enabled from all networks für diese Übung

Prüfe die Einstellungen und erstelle den Account. Notiere seinen tatsächlichen Namen für die Abfragen. Der Testcontainer verlangt authentifizierten Zugriff.

Öffne stctmonitorweu → Monitoring → Diagnostic settings. Wähle in der Ressourcenliste den Dienst blob und anschließend Add diagnostic setting.

Diagnostic setting name: blob-to-log-analytics
Logs: StorageRead, StorageWrite, StorageDelete
Destination: Send to Log Analytics workspace
Subscription: CloudTrips TEST
Log Analytics workspace: law-ctmonitorweu
Destination table: Resource specific (falls angeboten)

Lasse Metriken für diese Übung abgewählt und wähle Save. Öffne die Einstellung erneut und prüfe Kategorien und Ziel. Diese drei Kategorien liefern Daten für die Tabelle StorageBlobLogs.

Screenshot 2: Gespeicherte Blob-Diagnoseeinstellung mit StorageRead, StorageWrite, StorageDelete und law-ctmonitorweu als Ziel.

Blob-Diagnoseeinstellung blob-to-log-analytics mit Ziel law-ctmonitorweu

Anfragen erzeugen und abfragen

Öffne nach dem Speichern Data storage → Containers → + Container. Erstelle monitor-demo mit Zugriff Private. Öffne den Container und verwende Switch to access key, falls das Portal eine Authentifizierungsmethode benötigt, die dein Laborkonto mit Owner-Rolle nutzen kann.

Lade monitor-check.txt herunter und führe in monitor-demo diese Aktionen aus:

  1. Wähle Upload und lade die Datei hoch.
  2. Wähle den hochgeladenen Blob und Download. Prüfe, dass sich die heruntergeladene Datei öffnen lässt.
  3. Lösche nur monitor-check.txt aus dem Container. Notiere den Testzeitpunkt.

Dabei entstehen Schreib-, Lese- und Löschanfragen. Das Portal kann beim Navigieren weitere Anfragen senden.

Öffne Log Analytics workspaces → law-ctmonitorweu → Logs. Schließe eine gegebenenfalls eingeblendete Abfragegalerie, wähle bei Bedarf KQL mode und als Zeitraum Last 24 hours. Führe diese Abfrage aus und passe den Accountnamen bei Bedarf an:

StorageBlobLogs
| where TimeGenerated > ago(24h)
| where AccountName == "stctmonitorweu"
| where Uri contains "/monitor-demo/monitor-check.txt"
| project TimeGenerated, OperationName, StatusCode,
          StatusText, DurationMs, AuthenticationType, Uri
| order by TimeGenerated desc

Jedes | reicht das Ergebnis an den nächsten Schritt weiter. where filtert Datensätze, project wählt Spalten und order by sortiert die neuesten Anfragen nach oben. ago(24h) bezeichnet die letzten 24 Stunden zum Zeitpunkt der Abfrage.

Screenshot 3: Workspace Logs mit KQL-Abfrage und passenden monitor-check.txt-Anfragen samt Operationen, HTTP-Statuscodes und Zeitstempeln.

KQL-Abfrage und Blob-Storage-Anfrageergebnisse für monitor-check.txt

Suche nach Upload-Operationen wie PutBlob oder PutBlock / PutBlockList, dem Download GetBlob und DeleteBlob. Erfolgreiche Anfragen haben HTTP-Statuscodes im Bereich 2xx. Vergleiche Dateipfad und Zeitpunkt mit deinem Test. DurationMs ist die Dauer der Anfrage; AuthenticationType zeigt die verwendete Authentifizierung. TimeGenerated wird in UTC gespeichert, das Portal kann jedoch deine lokale Zeit anzeigen.

Zähle die aufgezeichneten Anfragen mit dieser zweiten Abfrage:

StorageBlobLogs
| where TimeGenerated > ago(24h)
| where AccountName == "stctmonitorweu"
| where Uri contains "/monitor-demo/monitor-check.txt"
| summarize Requests = count() by OperationName, StatusCode
| order by Requests desc

summarize gruppiert passende Zeilen; count() zählt sie. Eine Portalaktion kann mehrere Anfragen auslösen. Das Ergebnis zählt daher Anfragen und muss nicht genau drei Zeilen enthalten.

Wenn Tabelle oder Ergebnisse fehlen

Nach dem Erstellen der Diagnoseeinstellung kann der Beginn der Sammlung bis zu 90 Minuten dauern. Azure erstellt die Tabelle mit den ersten eingehenden Datensätzen. Prüfe, dass die Einstellung auf blob gespeichert ist, auf law-ctmonitorweu zeigt und alle drei Kategorien enthält. Wiederhole Upload, Download und Löschung, nachdem die Sammlung Zeit zum Starten hatte.

Existiert die Tabelle, aber die Abfrage liefert keine Zeilen, entferne vorübergehend den Uri-Filter. Prüfe den tatsächlichen AccountName, Dateipfad und Zeitraum. Erweitere bei älteren Tests sowohl den Portalzeitraum als auch ago(24h).

Abschluss

Erfolgreich ist die Übung, wenn du in law-ctmonitorweu den passenden Dateipfad mit den erwarteten Operationen und Ergebnissen findest. Behalte Workspace und Storage Account für die nächsten Monitoring-Trips. Zum Pausieren der Sammlung löschst du blob-to-log-analytics; gespeicherte Logs unterliegen weiter der Aufbewahrung. Um das gesamte Labor zu entfernen, lösche zuerst die Diagnoseeinstellung und anschließend rg-cloudtrips-monitor-test-weu, sobald du deren Ressourcen nicht mehr benötigst.