BlogWissen ist Macht – Azure Monitor einsetzen
Teil 3 – Protokolle

Wissen ist Macht – Azure Monitor einsetzen
Teil 3 – Protokolle

Auch Azure stellt wie alle Public-Cloud-Anbieter mit dem Azure Monitor einen zentralen Überwachungsdienst zu Verfügung. Mit ihm kannst du Performance und Verfügbarkeit oder Kosten und Nutzung deiner Anwendungen und Dienste kontrollieren, sowie Security-Audits durchführen. Microsoft positioniert den Dienst als All-in-One-Solution für das Sammeln, Analysieren und Behandeln von Telemetriedaten aus der Azure-Cloud, anderen Clouds und lokalen Umgebungen. In drei Teilen stellen wir dir die wichtigsten Funktionen und Anwendungsbereiche vor. Dieses ist der dritte und letzte Teil.

Azure Log-Analytics

Den Log-Analytics-Agent aktivierst du bei gewählter VM im Haupt-Navigationsmenü im Abschnitt „Überwachung“ unter „Protokolle“. Hier musst du auf den Knopf „Aktivieren“ klicken. Die Abrechnung der in Log Analytics zu analysierenden Daten läuft dann über eine eigene Entität namens „Log Analytics Workspace“. Mindestens einen solchen musst du entweder hier direkt beim Aktivieren des Agents aktivieren (die betreffenden VM wird dann direkt als Quelle in diesem Log-Analytics-Workspace aktiviert) oder du legst vorher im Azure Portal einen neuen „Log-Analytics Arbeitsbereich“ an und registrierst dort im Abschnitt „Arbeitsbereichdatenquellen / Virtuelle Computer“ die gewünschte VM bei diesem Arbeitsbereich.

In Log Analytics eine Datenquelle verbinden

Weitere valide Datenquellen sind „System Center“, „Azure Aktivitätsprotokoll“ (s. o.) oder „Speicherkontoprotokolle“. Wähle einfach die gewünschte VM aus und klicke auf „Verbinden“. VM und Log-Analytics Workspace müssen sich übrigens nicht in der gleichen Region befinden. Ist mindestens eine Quelle verbunden, kannst du Log-Analytics nutzen. Hierzu wählst du wie oben beschrieben entweder von der VM ausgehend das Menü „Überwachung / Protokolle“ oder du wählst im Azure Monitor den Abschnitt „Protokolle“: Hier musst du dann allerdings zunächst wieder den gewünschten Scope eingrenzen.

Kusto Query Language (KQL)

Azure Monitor Logs ist mit seiner mächtigen Abfragesprache Kusto Query Language (gelegentlich auch „Azure Data Explorer“ genannt) – Ähnlichkeiten zu Splunk und SQL sind durchaus gewollt – auf die Aggregation von Daten aus unterschiedlichsten Quellen abzielt, um Informationen aus der Zusammenführung dieser unterschiedliche Quellen und unterschiedlichen Datentypen zu gewinnen, macht es in der Praxis wenig Sinn, den Log-Analytics-Agent z. B. auf einer oder wenigen VMs zu aktivieren. Die Abrechnung von/für Log Analyics erfolgt übrigens auf Basis der Menge an erfassten Daten, welche „in“ den Workspace laufen sowie auf Basis der für die Datenaufbewahrungszeit getroffenen Einstellungen. Es kann übrigens bis zu 10 Minuten nach Aktivierung der Quelle dauern, bis z. B. ein Virtueller Computer konfiguriert ist und die Überwachungsdaten angezeigt werden.

Azure Monitor Log Analytics basiert auf einer sehr mächtigen Abfragesprache

Kusto ist wie erwähnt sehr mächtig und eine systematische Einführung würde den Rahmen diesen Beitrags sprengen. Daher hier nur ein paar Basics. Jede Kusto-Abfrage ist eine schreibgeschützte Anforderung zur Verarbeitung von Daten und zur Rückgabe der Ergebnisse, formuliert als unformatierter Text. Kusto verwendet ein Datenflussmodell, das einerseits Lesbarkeit und andererseits das Verfassen und die Automatisierung der Syntax vereinfachen soll. Die Abfrage verwendet Schema-Entitäten, die in einer SQL-ähnlichen Hierarchie organisiert sind wie Datenbanken, Tabellen und Spalten.

Jede Abfrage besteht daher aus einer Folge von Anweisungen, getrennt durch ein Semikolon mit mindestens einer https://docs.microsoft.com/de-de/azure/data-explorer/kusto/query/tabularexpressionstatements tabellarischen Ausdrucksanweisung, die Daten in einem tabellenähnlichen Raster aus Spalten und Zeilen erzeugt. Die tabellarischen Ausdrucksanweisungen der Abfrage erzeugen dann die Ergebnisse der Abfrage.

Du musst dich aber nicht beim ersten Aufruf von Log Analytics intensiv in Kusto einarbeiten, da Microsoft zum Einem einen großen Fundus an Beispielabfragen mitliefert, die du als Basis verwenden kannst und weil du Abfragen im Abfrage-Editor auch interaktiv zusammenbauen kannst, in dem du im Menü auf die in den Datenbanken und Tabellen organisierten Datenstrukturen zugreifen kannst. Sobald du das beim ersten Start von Log-Analytics angezeigte Beispielvideo gesehen oder übersprungen hast, öffnet Log Analytics ein Popup-Fenster mit Beispielabfragen.

Log Analytics bringt eine große Auswahl an Beispielabfragen mit

Jede davon kannst du mit dem gleichnamigen Knopf entweder „Ausführen“ oder nur „In den Editor laden“.  Letzteres zeigt die Abfrage in Kusto-Syntax im Query-Editor an und du kannst von hier „Ausführen“ anklicken.

Der Abfrage-Editor von Log-Analytics

Die folgende Abfrage …

// Virtual Machine free disk space
// Show the latest report of free disk space, per instance.
// To create an alert for this query, click '+ New alert rule'
Perf
| where ObjectName == "LogicalDisk" or // the object name used in Windows records
ObjectName == "Logical Disk" // the object name used in Linux records
| where CounterName == "Free Megabytes"
| summarize arg_max(TimeGenerated, *) by InstanceName // arg_max over TimeGenerated returns the latest record
| project TimeGenerated, InstanceName, CounterValue, Computer, _ResourceId

… liefert z. B.  einen Report über den freien Disk-Speicher über alle verbundenen Instanzen je Instanz als Maximalwert über den angegeben Zeitbereich (hier 24 Stunden). Nach erfolgreicher Abfrage kannst du jederzeit wieder rechts oben auf den Knopf „Abfragen“ klicken, um wieder zum Fenster mit den Muster-Abfragen zu gelangen. Nicht alle Beispiel-Abfragen werden im Popup-Fenster angeboten. Du kannst aber im Navigationsbereich links bei markiertem Tab „Abfragen“ aus einer vollständigen Liste auswählen.

Eine vollständige Liste an Muster-Abfragen steht im Navigationsbereich zur Verfügung

Fahre mit der Maus ohne zu klicken über eine Abfrage aus der Liste wie z. B. in der Abbildung 3 „Track VM Availability“ popt ebenfalls ein Fenster auf, von dem aus du die Abfrage entweder ausführen oder in den Editor laden kannst. Sofern die Abfrage sinnvolle Daten liefert, werden diese nicht nur im Tab „Ergebnisse“ angezeigt, sondern können im Tab „Diagramm“ auch wieder grafisch dargestellt oder mit dem Button „Exportieren“ oben rechts als CSV exportiert werden.

Das Ergebnisfenster eine Kusto-Abfrage

Darüber lassen sich Kusto-Abfragen from Scratch formulieren. Dazu kannst du im Navigationsmenü links statt auf „Abfragen“ auch den Tab „Tabellen“ auswählen und dann einzelne Entitäten doppelklicken, die dadurch in das das Editor-Fenster übernommen werden.

Kusto-Abfragen lassen sich auch teilweise interaktiv formulieren

Schulungen die dich interessieren könnten

Bewertungen

Kundenstimme männlich
Markus H.
CARAT Dreieich
star-participantstar-participantstar-participantstar-participantstar-participant
Der Trainer machte einen sehr netten und kompetenten Eindruck und ging auf unsere Wünsche und Anregungen sehr praxisorientiert ein .
Kundenstimme männlich
Mausolf B.
Struers GmbH
star-participantstar-participantstar-participantstar-participantstar-participant
Tolle Schulung - kompetenter Trainer, der geduldig auf alle Fragen einging, diese beantworten konnte und darüber hinaus viele neue Anregungen mit auf den Weg gab. Die Schulung hat Spaß gemacht.
Kundenstimme männlich
Martin S.
Bundeseisenbahnvermögen
star-participantstar-participantstar-participantstar-participantstar-participant
Das Training zeichnet sich durch einen sehr hohen Praxisbezug und Raum für individuelle Hilfe persönlicher Problemstellungen sowie durch einen engagierten und hoch kompetenten Trainer aus.
Kundenstimme männlich
Wolfgang N.
ThyssenKrupp Nirosta
star-participantstar-participantstar-participantstar-participantstar-participant
Eine gute Adresse für das Erlernen scheinbar schwieriger und trockener Themen, die hier gut aufbereitet werden.