Diagnoseprotokolle für Application Gateway

Application Gateway-Protokolle enthalten detaillierte Informationen über die Ereignisse im Zusammenhang mit einer Ressource und deren Vorgängen. Diese Protokolle sind für Ereignisse wie Access, Aktivität, Firewall und Leistung (nur für V1) verfügbar. Die genauen Informationen in den Protokollen helfen bei Problembehebung oder Erstellung eines Analytics-Dashboards durch Verwenden dieser Rohdaten.

Protokolle sind für alle Ressourcen des Application Gateway verfügbar. Zu deren Nutzung müssen Sie jedoch deren Sammlung an einem Speicherort Ihrer Wahl aktivieren. Die Protokollierung im Azure-Application Gateway wird vom Azure Monitor-Dienst aktiviert. Wir empfehlen die Verwendung des Log Analytics-Arbeitsbereichs, da Sie dessen vordefinierten Abfragen problemlos verwenden und basierend auf bestimmten Protokollbedingungen Warnungen festlegen können.

Typen von Ressourcenprotokollen

Sie können in Azure verschiedene Protokolltypen verwenden, um Anwendungsgateways zu verwalten und eventuelle Fehler zu beheben.

Hinweis

Protokolle sind nur für Ressourcen verfügbar, die über das Azure Resource Manager-Bereitstellungsmodell bereitgestellt werden. Sie können Protokolle nicht für Ressourcen im klassischen Bereitstellungsmodell verwenden. Ein besseres Verständnis der beiden Modelle können Sie entwickeln, indem Sie den Artikel Grundlegendes zur Bereitstellung über den Resource Manager im Vergleich zur klassischen Bereitstellung lesen.

Beispiele für die Optimierung von Zugriffsprotokollen mithilfe von Arbeitsbereichstransformationen

Beispiel 1: Selektive Projektion von Spalten: Stellen Sie sich vor, Sie haben Application Gateway-Zugriffsprotokolle mit 20 Spalten, aber Sie möchte Daten aus nur 6 bestimmten Spalten analysieren. Mithilfe der Arbeitsbereichstransformation können Sie diese 6 Spalten in Ihren Arbeitsbereich projizieren und die anderen 14 Spalten effektiv ausschließen. Obwohl die ursprünglichen Daten aus diesen ausgeschlossenen Spalten nicht gespeichert werden, werden leere Platzhalter für sie weiterhin im Blatt „Protokolle“ angezeigt. Dieser Ansatz optimiert die Speicherung und stellt sicher, dass nur relevante Daten zur Analyse aufbewahrt werden.

Hinweis

Innerhalb des Blatts „Protokolle“ bietet die Auswahl der Option Neue Protokollanalyse testen eine bessere Kontrolle über die Spalten, die auf der Benutzeroberfläche angezeigt werden.

Beispiel 2: Konzentrieren auf bestimmte Statuscodes: Beim Analysieren von Zugriffsprotokollen können Sie eine Abfrage schreiben, um nur Zeilen mit bestimmten HTTP-Statuscodes (z. B. 4xx und 5xx) abzurufen. Da die meisten Anforderungen idealerweise unter die Kategorien „2xx“ und „3xx“ fallen (die erfolgreiche Antworten darstellen), schränkt der Schwerpunkt auf die problematischen Statuscodes den Datensatz ein. Mit diesem gezielten Ansatz können Sie die relevantesten und verwertbaren Informationen extrahieren, was ihn sowohl nützlich als auch kosteneffizient macht.

Empfohlene Übergangsstrategie für den Wechsel von Azure-Diagnose zu ressourcenspezifischen Tabellen:

  1. Bewerten der aktuellen Datenaufbewahrung: Ermitteln Sie die Dauer, für die Daten derzeit in der Azure-Diagnose-Tabelle aufbewahrt werden (Beispiel: die Diagnose-Tabelle bewahrt Daten für 15 Tage auf).
  2. Einrichten einer ressourcenspezifischen Aufbewahrung: Implementieren Sie eine neue Diagnoseeinstellung mit ressourcenspezifischen Tabellen.
  3. Parallele Datensammlung: Sammeln Sie Daten für einen temporären Zeitraum gleichzeitig sowohl in der Azure-Diagnose als auch in den ressourcenspezifischen Einstellungen.
  4. Überprüfen der Datengenauigkeit: Überprüfen Sie, ob die Datensammlung in beiden Einstellungen korrekt und konsistent ist.
  5. Entfernen der Azure-Diagnoseeinstellung: Entfernen Sie die Azure-Diagnoseeinstellung, um doppelte Datensammlung zu verhindern.

Andere Speicherorte:

  • Azure Speicherkonto: Speicherkonten eignen sich am besten für Protokolle, die eine längere Zeit gespeichert und bei Bedarf überprüft werden.
  • Azure Event Hubs: Event Hubs-Instanzen sind eine hervorragende Möglichkeit für die Integration in andere SIEM-Tools (Security Information and Event Management), um Warnungen für Ihre Ressourcen zu erhalten.
  • Azure Monitor – integrierte Partnerlösungen.

Erfahren Sie mehr über die Diagnoseeinstellungsziele von Azure Monitor.

Ermöglichen der Protokollierung mit PowerShell

Die Aktivitätsprotokollierung ist automatisch für alle Resource Manager-Ressourcen aktiviert. Sie müssen die Zugriffs- und Leistungsprotokollierung aktivieren, um mit der Erfassung von Daten aus diesen Protokollen zu beginnen. Führen Sie zum Aktivieren der Protokollierung die folgenden Schritte aus:

  1. Notieren Sie sich die Ressourcen-ID Ihres Speicherkontos, unter dem die Protokolldaten gespeichert werden. Dieser Wert weist folgendes Format auf: /subscriptions/<Abonnement-ID>/resourceGroups/<Ressourcengruppenname>/providers/Microsoft.Storage/storageAccounts/<Speicherkontoname>. Sie können jedes Speicherkonto Ihres Abonnements verwenden. Sie können das Azure-Portal verwenden, um nach diesen Informationen zu suchen.

    Screenshot: Speicherkontoendpunkte

  2. Notieren Sie sich die Ressourcen-ID Ihres Anwendungsgateways, für das die Protokollierung aktiviert ist. Dieser Wert weist folgendes Format auf: /subscriptions/<Abonnement-ID>/resourceGroups/<Ressourcengruppenname>/providers/Microsoft.Network/applicationGateways/<Anwendungsgatewayname>. Sie können das Portal verwenden, um nach diesen Informationen zu suchen.

    Screenshot: Eigenschaften des App-Gateways

  3. Aktivieren Sie die Diagnoseprotokollierung mit dem folgenden PowerShell-Cmdlet:

    Set-AzDiagnosticSetting  -ResourceId /subscriptions/<subscriptionId>/resourceGroups/<resource group name>/providers/Microsoft.Network/applicationGateways/<application gateway name> -StorageAccountId /subscriptions/<subscriptionId>/resourceGroups/<resource group name>/providers/Microsoft.Storage/storageAccounts/<storage account name> -Enabled $true     
    

Tipp

Für Aktivitätsprotokolle ist kein separates Speicherkonto erforderlich. Für die Nutzung des Speichers für die Zugriffs- und Leistungsprotokollierung fallen Dienstgebühren an.

Ermöglichen der Protokollierung über das Azure-Portal

  1. Suchen Sie im Azure-Portal nach Ihrer Ressource, und wählen Sie Diagnoseeinstellungen aus.

    Für Application Gateway sind drei Protokolle verfügbar:

    • Zugriffsprotokoll
    • Leistungsprotokoll
    • Firewallprotokoll
  2. Wählen Sie Diagnose aktivieren aus, um die Erfassung von Daten zu starten.

    Aktivieren der Diagnose

  3. Auf der Seite Diagnoseeinstellungen befinden sich die Einstellungen für die Diagnoseprotokolle. In diesem Beispiel werden die Protokolle in Log Analytics gespeichert. Sie können auch Event Hubs und ein Speicherkonto verwenden, um die Diagnoseprotokolle zu speichern.

    Starten des Konfigurationsprozesses

  4. Geben Sie einen Namen für die Einstellungen ein, bestätigen Sie die Einstellungen, und wählen Sie Speichern aus.

Informationen zum Anzeigen und Analysieren von Aktivitätsprotokolldaten finden Sie unter Analysieren von Überwachungsdaten.

Anzeigen und Analysieren der Zugriffs-, Leistungs- und Firewallprotokolle

Azure Monitor-Protokolle können die Indikator- und Ereignisprotokolldateien aus Ihrem Blobspeicherkonto erfassen. Weitere Informationen finden Sie unter Analysieren von Überwachungsdaten.

Sie können auch eine Verbindung mit Ihrem Speicherkonto herstellen und die JSON-Protokolleinträge für Zugriffs- und Leistungsprotokolle abrufen. Nachdem Sie die JSON-Dateien heruntergeladen haben, können Sie diese in das CSV-Format konvertieren oder in Excel, Power BI oder einem anderen Datenvisualisierungstool anzeigen.

Tipp

Wenn Sie mit Visual Studio und den grundlegenden Konzepten zum Ändern der Werte für Konstanten und Variablen in C# vertraut sind, können Sie die Protokollkonvertierungstools von GitHub verwenden.

Nächste Schritte