Pobieranie plików dziennika aplikacji

Ukończone

Dzienniki są cennym zasobem dla dewelopera internetowego, ale tylko wtedy, gdy wiadomo, jak wyszukiwać i stosować zarejestrowane informacje. W tym miejscu przyjrzymy się metodom, których można użyć do pobierania zarejestrowanych informacji na potrzeby analizy offline.

Lokalizacje magazynu plików dziennika

Infrastruktura platformy Azure używana do uruchamiania usługi Azure Web Apps w systemie Windows nie jest taka sama jak w przypadku aplikacji systemu Linux, a pliki dziennika nie są przechowywane w tych samych lokalizacjach.

Pliki dziennika aplikacji systemu Windows

W przypadku aplikacji systemu Windows pliki dziennika systemu plików są przechowywane na dysku wirtualnym skojarzonym z aplikacją internetową. Ten dysk jest adresowany jako D:\Home i zawiera folder LogFiles; wewnątrz tego folderu znajduje się co najmniej jeden podfolder:

  • Aplikacja — zawiera komunikaty generowane przez aplikację, jeśli rejestrowanie aplikacji systemu plików jest włączone.
  • DetailedErrors — zawiera szczegółowe dzienniki błędów serwera sieci Web, jeśli są włączone szczegółowe komunikaty o błędach.
  • http — zawiera dzienniki na poziomie usług IIS, jeśli włączono rejestrowanie serwera internetowego.
  • Numer> W3SVC<— zawiera szczegóły wszystkich żądań HTTP zakończonych niepowodzeniem, jeśli włączono śledzenie żądań zakończonych niepowodzeniem.

W przypadku włączenia magazynu w kontenerze obiektów blob dzienniki są przechowywane w folderach rok, miesiąc, data i godzina, na przykład:

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

W folderze godziny istnieje co najmniej jeden plik CSV zawierający komunikaty zapisane w tym 60-minutowym okresie.

Pliki dziennika aplikacji systemu Linux

W przypadku aplikacji internetowych systemu Linux narzędzia platformy Azure obsługują obecnie mniej opcji rejestrowania niż w przypadku aplikacji systemu Windows. Przekierowania do wskaźników STDERR i STDOUT odbywają się za pomocą podstawowego kontenera platformy Docker, który uruchamia aplikację, a te komunikaty są przechowywane w plikach dziennika platformy Docker. Aby wyświetlić komunikaty rejestrowane przez podstawowe procesy, takie jak Apache, należy otworzyć połączenie SSH z kontenerem platformy Docker.

Metody pobierania plików dziennika

Sposób pobierania plików dziennika zależy od typu pliku dziennika i preferowanego środowiska. W przypadku dzienników systemu plików można użyć interfejsu wiersza polecenia platformy Azure lub konsoli Kudu. Kudu jest aparatem stojącym za wieloma funkcjami w usłudze aplikacja systemu Azure związane z wdrażaniem opartym na kontroli źródła.

Interfejs wiersza polecenia platformy Azure

Aby pobrać pliki dziennika systemu plików przy użyciu interfejsu wiersza polecenia platformy Azure, najpierw skopiuj pliki dziennika z systemu plików aplikacji do magazynu usługi Cloud Shell, a następnie uruchom następujące polecenie.

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

Aby pobrać spakowane pliki dziennika na komputer lokalny, użyj narzędzia do pobierania i przekazywania plików na pasku narzędzi usługi Cloud Shell. Po pobraniu pliki są gotowe do otwierania w programie Microsoft Excel lub innych aplikacjach.

Uwaga

Pobieranie przy użyciu interfejsu wiersza polecenia platformy Azure obejmuje wszystkie dzienniki aplikacji, z wyjątkiem nieudanych operacji śledzenia żądań.

Kudu

Istnieje skojarzona witryna usługi Source Control Management (SCM) skojarzona ze wszystkimi usługami Azure Web Apps. Ta witryna uruchamia usługę Kudu i inne rozszerzenia witryny. Jest to kudu, który zarządza wdrażaniem i rozwiązywaniem problemów z usługą Azure Web Apps, w tym opcjami wyświetlania i pobierania plików dziennika. Określone funkcje dostępne w usłudze Kudu i sposób pobierania dzienników zależą od typu aplikacji internetowej. W przypadku aplikacji systemu Windows możesz przejść do lokalizacji pliku dziennika, a następnie pobrać dzienniki. W przypadku aplikacji systemu Linux może istnieć link pobierania.

Jednym ze sposobów uzyskania dostępu do konsoli Kudu jest przejście do https://< app name.scm.azurewebsites.net>, a następnie zalogowanie się przy użyciu poświadczeń wdrożenia.

Dostęp do usługi Kudu można również uzyskać w witrynie Azure Portal. W menu usługi App Service w obszarze Narzędzia programistyczne wybierz pozycję Narzędzia zaawansowane, a następnie w okienku Narzędzia zaawansowane wybierz pozycję Przejdź , aby otworzyć nową kartę Usługi Kudu.

Aby pobrać pliki dzienników z aplikacji systemu Windows:

  1. Wybierz pozycję Konsola debugowania, a następnie pozycję CMD.

    Screenshot of Kudu's environment page with a callout highlighting the Debug Console cmd menu option.

  2. W sekcji Eksploratora plików wybierz pozycję LogFiles, a w folderze Aplikacja wybierz pozycję Pobierz. Dzienniki są pobierane na komputer jako Application.zip.

    Screenshot of Kudu's user interface. It displays a file and folder listing with a highlight next to the download icon for the Application folder.

    W przypadku aplikacji systemu Linux wybierz link pobierania na stronie Środowisko.

    Screenshot of Kudu's user environment page with a callout highlighting the link to download a zip file containing the current Docker logs.

Przeglądarka usługi Azure Storage

Aby uzyskać dostęp do dzienników systemu Windows zapisanych w kontenerze usługi Azure Blob Storage, możesz użyć witryny Azure Portal. Aby wyświetlić i pobrać zawartość kontenera plików dziennika, wybierz pozycję Konta magazynu z menu portalu. Wybierz konto magazynu, a następnie wybierz pozycję Przeglądarka magazynu. Otwórz typ kontenera magazynu (na przykład kontenery obiektów blob) i wybierz nazwę kontenera obiektów blob, który zawiera plik dziennika. W kontenerze otwórz odpowiedni folder rok, miesiąc, data i godzina, a następnie kliknij dwukrotnie plik CSV, aby pobrać go na komputer.

Screenshot of the Storage browser to download Windows app logs from blob containers.

Jeśli na komputerze jest uruchomiony program Microsoft Excel, plik dziennika zostanie automatycznie otwarty jako arkusz programu Excel. W przeciwnym razie możesz otworzyć plik przy użyciu edytora tekstów, takiego jak Notatnik.