Abrufen von Anwendungsprotokolldateien

Protokolldateien sind eine großartige Ressource für Webentwickler, aber nur, wenn Sie wissen, wie Sie die protokollierten Informationen finden und nutzen können. Hier erfahren Sie, welche Methoden Sie einsetzen können, um protokollierte Informationen abzurufen, die für eine Offlineanalyse bereit sind.

Speicherorte von Protokolldateien

Die Azure-Infrastruktur, die zum Ausführen von Windows-Web-Apps verwendet wird, ist nicht die gleiche wie bei Linux-Apps. Zudem werden Protokolldateien nicht an den gleichen Orten gespeichert.

Windows-Anwendungsprotokolldateien

Bei Windows-Apps werden Protokolldateien im Dateisystem auf einem virtuellen Laufwerk gespeichert, das Ihrer Web-App zugeordnet ist. Dieses Laufwerk kann als D:\Home adressiert werden und enthält den Ordner LogFiles, der einen oder mehrere Unterordner aufweist:

  • Application enthält von der Anwendung generierte Meldungen, wenn die Anwendungsprotokollierung Dateisystem aktiviert ist.
  • DetailedErrors enthält detaillierte Webserver-Fehlerprotokolle, wenn **Detaillierte Fehlermeldungen aktiviert wurden.
  • http enthält Protokolle auf IIS-Ebene, wenn Webserverprotokollierung aktiviert wurde.
  • W3SVC<number> enthält Details zu allen fehlgeschlagenen HTTP-Anforderungen, wenn Ablaufverfolgung für Anforderungsfehler aktiviert wurde.

Wenn die Speicherung in einem Blobcontainer aktiviert wurde, werden die Protokolle in Ordnern für Jahr, Monat, Datum und Uhrzeit gespeichert, z.B.:

2019
 01
  10
   08 - log entries for the period 08:00:00 to 08:59:59 on January 10th 2019
   09 - log entries for the period 09:00:00 to 09:59:59 on January 10th 2019

Innerhalb des Stundenordners befinden sich eine oder mehrere CSV-Dateien mit Meldungen, die innerhalb dieses 60-minütigen Zeitraums gespeichert wurden.

Linux-Anwendungsprotokolldateien

Für Linux Web-Apps unterstützen die Azure-Tools derzeit weniger Protokollierungsoptionen als für Windows-Apps. Umleitungen zu STDERR und STDOUT werden über den zugrunde liegenden Docker-Container verwaltet, in dem die App ausgeführt wird, wobei diese Meldungen in Docker-Protokolldateien gespeichert werden. Um Meldungen zu sehen, die von zugrunde liegenden Prozessen, wie z.B. Apache, protokolliert werden, müssen Sie eine SSH-Verbindung mit dem Docker-Container öffnen.

Methoden zum Abrufen von Protokolldateien

Wie Sie Protokolldateien abrufen, hängt von der Art der Protokolldatei und der bevorzugten Umgebung ab. Für Dateisystemprotokolle können Sie die Azure CLI oder Kudu-Konsole verwenden.

Azure CLI

Um Protokolldateien des Dateisystems mit der Azure CLI herunterzuladen, verwenden Sie zunächst den folgenden Befehl, um die Protokolldateien aus dem Dateisystem der App in Ihren Azure Cloud Shell-Speicher zu kopieren.

az webapp log download --log-file \<_filename_\>.zip  --resource-group \<_resource group name_\> --name \<_app name_\>

Sie können dann die Schaltfläche zum Herunter- und Hochladen von Dateien auf der Symbolleiste von Azure Cloud Shell verwenden, um die gezippten Protokolldateien auf Ihren lokalen Computer herunterzuladen, um sie in Microsoft Excel oder anderen Anwendungen öffnen zu können.

Hinweis

Der Azure CLI-Download umfasst alle App-Protokolle mit Ausnahme der Ablaufverfolgungen für Anforderungsfehler.

Kudu

Alle Azure-Web-Apps müssen einem SCM-Dienststandort (Source Control Management, Quellcodeverwaltung) zugeordnet sein. Auf dieser Website werden der Dienst Kudu und andere Websiteerweiterungen ausgeführt. Kudu verwaltet die Bereitstellung und Problembehandlung von Azure-Web-Apps, einschließlich Optionen zum Anzeigen und Herunterladen von Protokolldateien. Welche spezifischen Funktionen in Kudu zur Verfügung stehen und wie Protokolle heruntergeladen werden, hängt von der Art der Web-App ab. Bei Windows-Apps können Sie zum Speicherort der Protokolldatei navigieren und dann die Protokolle herunterladen. Bei Linux-Apps gibt es möglicherweise einen Downloadlink.

Eine Möglichkeit des Zugriffs auf die Kudu-Konsole ist das Navigieren zu https://<app name>.scm.azurewebsites.net, um sich dort mit den Anmeldeinformation für die Bereitstellung anzumelden.

Sie können auch im Azure-Portal auf Kudu zugreifen. Klicken Sie im Bereich „App“ im Abschnitt Entwicklungstools auf Erweiterte Tools und dann auf den Bereich „Erweiterte Tools“ auf Los, um eine neue Registerkarte mit „Kudu Services“ zu öffnen.

So laden Sie die Protokolldateien aus Windows-Apps herunter

  1. Klicken Sie auf Debugging-Konsole und dann auf CMD.

    Screenshot: Kudu-Umgebungsseite mit einer Legende, die die CMD-Menüoption „Debugging-Konsole“ hervorhebt

  2. Klicken Sie im Abschnitt „Datei-Explorer“ auf LogFiles. Klicken Sie dann für den Ordner Application (Anwendung) auf die Schaltfläche Herunterladen. Die Protokolle werden als Application.zip auf Ihren Computer heruntergeladen.

    Screenshot: Kudu-Benutzeroberfläche mit Datei- und Ordnerauflistung mit Hervorhebung neben dem Symbol für das Herunterladen des Ordners „Application“ (Anwendung)

Klicken Sie für Linux-Apps auf der Seite „Umgebung“ auf den Downloadlink.

Screenshot: Kudu-Seite „Benutzerumgebung“ mit einer Legende, die den Link zum Herunterladen einer ZIP-Datei mit den aktuellen Docker-Protokollen hervorhebt

Azure Storage-Explorer

Für den Zugriff auf Windows-Protokolle, die in einem Azure Blob Storage-Container gespeichert, können Sie das Azure-Portal und Storage-Explorer verwenden, um den Inhalt des Protokolldateicontainers anzuzeigen und herunterzuladen. Öffnen Sie den entsprechenden Ordner für Jahr, Monat, Datum und Uhrzeit, und doppelklicken Sie dann auf eine CSV-Datei, um sie auf Ihren Computer herunterzuladen.

Screenshot: Storage-Explorer zum Herunterladen von Windows-App-Protokollen aus Blobcontainern

Wenn Sie Microsoft Excel auf Ihrem Computer installiert haben, wird die Protokolldatei automatisch als Arbeitsblatt geöffnet. Andernfalls können Sie die Datei mit einem Text-Editor wie „Editor“ öffnen.