Megosztás a következőn keresztül:


Alkalmazások diagnosztikai célú naplózásának engedélyezése az Azure App Service-ben

Feljegyzés

2024. június 1-től az újonnan létrehozott App Service-alkalmazások létrehozhatnak egy egyedi alapértelmezett gazdagépnevet, amely az elnevezési konvenciót <app-name>-<random-hash>.<region>.azurewebsites.nethasználja. A meglévő alkalmazásnevek változatlanok maradnak. Példa:

myapp-ds27dh7271aah175.westus-01.azurewebsites.net

További információ: Az App Service-erőforrás egyedi alapértelmezett gazdagépneve.

Ez a videó bemutatja, hogyan engedélyezheti az alkalmazások diagnosztikai naplózását.

A videó lépéseit a következő szakaszokban is ismertetjük.

Áttekintés

Az Azure beépített diagnosztikát biztosít az App Service-alkalmazások hibakereséséhez. Ebből a cikkből megtudhatja, hogyan engedélyezheti a diagnosztikai naplózást, és hogyan adhat hozzá rendszerállapotokat az alkalmazáshoz, valamint hogyan férhet hozzá az Azure által naplózott adatokhoz.

Ez a cikk az Azure Portalt és az Azure CLI-t használja a diagnosztikai naplók használatához. A diagnosztikai naplók Visual Studióval való használatáról további információt az Azure Visual Studióban történő hibaelhárításában talál.

Feljegyzés

A cikkben szereplő naplózási utasítások mellett használhatja az Azure Monitor integrált naplózási képességét is. Erről a funkcióról a Naplók küldése az Azure Monitorba című szakaszban talál további tudnivalókat.

Típus Platform Naplótároló helye Leírás
Alkalmazásnaplózás Windows, Linux App Service-fájlrendszer és/vagy Azure Storage-blobok Naplózza az alkalmazáskód által létrehozott üzeneteket. Az üzeneteket a választott webes keretrendszer vagy az alkalmazás kódjából hozhatja létre közvetlenül a nyelv szabványos naplózási mintájának használatával. Minden üzenethez a következő kategóriák valamelyike tartozik: Kritikus, Hiba, Figyelmeztetés, Információ, Hibakeresés és Nyomkövetés. Az alkalmazásnaplózás engedélyezésekor megadhatja, hogy milyen részletes legyen a naplózás.
Webkiszolgálói naplózás Windows App Service-fájlrendszer vagy Azure Storage-blobok Nyers HTTP-kérési adatok a W3C kiterjesztett naplófájlformátumában. Minden naplóüzenet olyan adatokat tartalmaz, mint a HTTP-módszer, az erőforrás URI-ja, az ügyfél IP-címe, az ügyfélport, a felhasználói ügynök, a válaszkód stb.
Részletes hibaüzenetek Windows App Service fájlrendszer Az ügyfélböngészőnek küldött .htm hibalapok másolatai. Biztonsági okokból a részletes hibaoldalakat nem szabad elküldeni az éles környezetben lévő ügyfeleknek, de az App Service minden alkalommal mentheti a hibalapot, amikor egy 400-os vagy újabb HTTP-kóddal rendelkező alkalmazáshiba lép fel. A lap tartalmazhat olyan információkat, amelyek segíthetnek meghatározni, hogy a kiszolgáló miért adja vissza a hibakódot.
Sikertelen kérelemkövetés Windows App Service fájlrendszer Részletes nyomkövetési információk a sikertelen kérelmekről, beleértve a kérelem feldolgozásához használt IIS-összetevők nyomkövetését és az egyes összetevőkben töltött időt. Ez az információ akkor hasznos, ha javítani szeretné a webhely teljesítményét, vagy egy adott HTTP-hibát szeretne elkülöníteni. Minden sikertelen kéréshez egy mappa jön létre. A mappa tartalmazza az XML-naplófájlt és az XSL stíluslapot a naplófájl megtekintéséhez.
Üzembehelyezési naplózás Windows, Linux App Service fájlrendszer Naplók, amikor tartalmat tesz közzé egy alkalmazásban. Az üzembe helyezés naplózása automatikusan történik, és nincsenek konfigurálható beállítások az üzembe helyezés naplózásához. Segít meghatározni, hogy miért hiúsult meg egy üzembe helyezés. Ha például egyéni üzembehelyezési szkriptet használ, az üzembe helyezés naplózásával állapíthatja meg, hogy miért hiúsul meg a szkript.

Az App Service fájlrendszerben tárolt naplókra a tarifacsomag rendelkezésre álló tárhelye vonatkozik (lásd az App Service korlátait).

Feljegyzés

Az App Service dedikált, interaktív diagnosztikai eszközt biztosít az alkalmazás hibaelhárításához. További információ: Azure-alkalmazás Szolgáltatásdiagnosztika áttekintése.

Emellett más Azure-szolgáltatásokat is használhat az alkalmazás naplózási és monitorozási képességeinek javítására, például az Azure Monitorra.

Alkalmazásnaplózás engedélyezése (Windows)

Ha engedélyezni szeretné az alkalmazásnaplózást a Windows-alkalmazásokhoz az Azure Portalon, lépjen az alkalmazáshoz, és válassza az App Service-naplók lehetőséget.

Válassza a Be lehetőséget az alkalmazásnaplózás ( fájlrendszer) vagy az alkalmazásnaplózás (Blob) vagy mindkettő esetében.

A Fájlrendszer beállítás ideiglenes hibakeresési célokra használható, és 12 órán belül kikapcsolja magát. A Blob lehetőség hosszú távú naplózásra használható, és blobtárolóra van szüksége a naplók írásához. A Blob beállítás további információkat is tartalmaz a naplóüzenetekben, például a naplóüzenet forrás virtuálisgép-példányának azonosítóját (InstanceId), a szálazonosítót (Tid) és egy részletesebb időbélyeget (EventTickCount).

Feljegyzés

Jelenleg csak .NET-alkalmazásnaplók írhatók a blobtárolóba. A Java-, PHP-, Node.js- és Python-alkalmazásnaplók csak az App Service fájlrendszerében tárolhatók (kódmódosítások nélkül a naplók külső tárolóba való írásához).

Emellett ha újra létrehozza a tárfiók hozzáférési kulcsait, a frissített hozzáférési kulcsok használatához alaphelyzetbe kell állítania a megfelelő naplózási konfigurációt. Megvalósítás:

  1. A Konfigurálás lapon állítsa ki a megfelelő naplózási funkciót. Mentse a beállítást.
  2. Engedélyezze ismét a tárfiók-blobba való naplózást. Mentse a beállítást.

Válassza ki a szint vagy a naplózandó részletek szintjét. Az alábbi táblázat az egyes szintekhez tartozó naplókategóriákat mutatja be:

Level Belefoglalt kategóriák
Letiltva Egyik sem
Hiba Hiba, kritikus
Figyelmeztetés Figyelmeztetés, hiba, kritikus
Tájékoztatás Információ, Figyelmeztetés, Hiba, Kritikus
Bőbeszédű Nyomkövetés, hibakeresés, információ, figyelmeztetés, hiba, kritikus (minden kategória)

Ha végzett, válassza a Mentés lehetőséget.

Feljegyzés

Ha naplókat ír a blobokra, a megőrzési szabályzat már nem érvényes, ha törli az alkalmazást, de a naplókat a blobokban tartja. További információ: Az erőforrás törlése után felmerülő költségek.

Alkalmazásnaplózás engedélyezése (Linux/Container)

Ha engedélyezni szeretné az alkalmazásnaplózást Linux-alkalmazásokhoz vagy egyéni tárolókhoz az Azure Portalon, keresse meg az alkalmazást, és válassza ki az App Service-naplókat.

Az alkalmazásnaplózásban válassza a Fájlrendszer lehetőséget.

A Kvóta (MB) mezőben adja meg az alkalmazásnaplók lemezkvótát. A megőrzési időszakban (napokban) adja meg, hogy hány napig őrizze meg a naplókat.

Ha végzett, válassza a Mentés lehetőséget.

Webkiszolgáló naplózásának engedélyezése

Ha engedélyezni szeretné a webkiszolgálók naplózását a Windows-alkalmazásokhoz az Azure Portalon, lépjen az alkalmazáshoz, és válassza az App Service-naplók lehetőséget.

A webkiszolgáló-naplózáshoz válassza a Storage lehetőséget a naplók blobtárolóban való tárolásához, vagy a fájlrendszert az App Service fájlrendszer naplóinak tárolásához.

A megőrzési időszakban (napokban) adja meg, hogy hány napig őrizze meg a naplókat.

Feljegyzés

Ha újra létrehozza a tárfiók hozzáférési kulcsait, a frissített kulcsok használatához alaphelyzetbe kell állítania a megfelelő naplózási konfigurációt. Megvalósítás:

  1. A Konfigurálás lapon állítsa ki a megfelelő naplózási funkciót. Mentse a beállítást.
  2. Engedélyezze ismét a tárfiók-blobba való naplózást. Mentse a beállítást.

Ha végzett, válassza a Mentés lehetőséget.

Feljegyzés

Ha naplókat ír a blobokra, a megőrzési szabályzat már nem érvényes, ha törli az alkalmazást, de a naplókat a blobokban tartja. További információ: Az erőforrás törlése után felmerülő költségek.

Részletes hibák naplózása

Ha menteni szeretné a hibalapot vagy a sikertelen kéréskövetést a Windows-alkalmazásokhoz az Azure Portalon, keresse meg az alkalmazást, és válassza az App Service-naplók lehetőséget.

A Részletes hibanaplózás vagy a Sikertelen kérelemkövetés csoportban válassza a Be, majd a Mentés lehetőséget.

Mindkét naplótípus az App Service fájlrendszerben van tárolva. A rendszer legfeljebb 50 hibát (fájlokat vagy mappákat) őriz meg. Ha a HTML-fájlok száma meghaladja az 50-et, a rendszer automatikusan törli a legrégebbi hibafájlokat.

A Sikertelen kéréskövetés funkció alapértelmezés szerint rögzíti a 400 és 600 közötti HTTP-állapotkódokkal meghiúsult kérelmek naplóját. Egyéni szabályok megadásához felülbírálhatja a <traceFailedRequests> web.config fájl szakaszát.

Naplóüzenetek hozzáadása kódban

Az alkalmazáskódban a szokásos naplózási eszközökkel küld naplóüzeneteket az alkalmazásnaplóknak. Példa:

Naplók streamelése

Mielőtt valós időben streameli a naplókat, engedélyezze a kívánt naplótípust. A konzol kimenetére vagy .txt, .log vagy .htm végződő fájlokra írt, a /home/LogFiles könyvtárban (D:\home\LogFiles) tárolt adatokat az App Service streameli.

Feljegyzés

A naplózási puffer bizonyos típusai a naplófájlba írnak, ami azt eredményezheti, hogy az események helytelen sorrendben jelennek meg a streamben. Előfordulhat például, hogy egy alkalmazásnapló-bejegyzés, amely akkor fordul elő, amikor egy felhasználó meglátogat egy lapot, megjelenhet a streamben az oldalkérés megfelelő HTTP-naplóbejegyzése előtt.

Az Azure Portalon

Ha naplókat szeretne streamelni az Azure Portalon, lépjen az alkalmazáshoz, és válassza a Naplóstream lehetőséget.

A Cloud Shellben

Ha élőben szeretné streamelni a naplókat a Cloud Shellben, használja a következő parancsot:

Fontos

Ez a parancs nem feltétlenül működik Linux app service-csomagban üzemeltetett webalkalmazásokkal.

az webapp log tail --name appname --resource-group myResourceGroup

Adott naplótípusok( például HTTP) szűréséhez használja a --provider paramétert. Példa:

az webapp log tail --name appname --resource-group myResourceGroup --provider http

A helyi terminálban

Ha naplókat szeretne streamelni a helyi konzolon, telepítse az Azure CLI-t, és jelentkezzen be a fiókjába. Miután bejelentkezett, kövesse a Cloud Shell utasításait.

Naplófájlok elérése

Ha egy naplótípushoz konfigurálja az Azure Storage-blobok beállítását, szüksége lesz egy olyan ügyféleszközre, amely az Azure Storage-ral működik. További információ: Azure Storage Ügyféleszközök.

Az App Service fájlrendszerben tárolt naplók esetében a fájlok elérésének legegyszerűbb módja a ZIP-fájl letöltése a böngészőben a következő címen:

  • Linux/egyéni tárolók: https://<app-name>.scm.azurewebsites.net/api/logs/docker/zip
  • Windows-alkalmazások: https://<app-name>.scm.azurewebsites.net/api/dump

Linux/egyéni tárolók esetén a ZIP-fájl a Docker-gazdagép és a Docker-tároló konzolkimeneti naplóit is tartalmazza. A kibővített alkalmazások esetében a ZIP-fájl minden példányhoz egy-egy naplót tartalmaz. Az App Service fájlrendszerében ezek a naplófájlok a /home/LogFiles könyvtár tartalmát képezik. Az üzembehelyezési naplók tárolása a /site/deployments/ helyen történik.

Windows-alkalmazások esetén a ZIP-fájl tartalmazza a D:\Home\LogFiles könyvtár tartalmát az App Service fájlrendszerében. A következő struktúrával rendelkezik:

Eseménynapló típusa Címtár Leírás
Alkalmazásnaplók /LogFiles/Application/ Egy vagy több szövegfájlt tartalmaz. A naplóüzenetek formátuma a használt naplózási szolgáltatótól függ.
Sikertelen kérelemkövetések /LogFiles/W3SVC#########/ XML-fájlokat és XSL-fájlt tartalmaz. A formázott XML-fájlokat a böngészőben tekintheti meg.
Részletes hibanaplók /LogFiles/DetailedErrors/ HTM-hibafájlokat tartalmaz. A HTM-fájlokat a böngészőben tekintheti meg.
A sikertelen kérések nyomkövetésének megtekintésének másik módja az alkalmazáslapra való navigálás a portálon. A bal oldali menüben válassza a Problémák diagnosztizálása és megoldása lehetőséget, keresse meg a sikertelen kérelmek nyomkövetési naplóit, majd kattintson az ikonra a kívánt nyomkövetés tallózásához és megtekintéséhez.
Webkiszolgálói naplók /LogFiles/http/RawLogs/ A W3C kiterjesztett naplófájlformátummal formázott szövegfájlokat tartalmaz. Ezeket a fájlokat egy szövegszerkesztővel vagy egy olyan segédprogrammal olvashatja el, mint a Log Parser.
Az App Service nem támogatja a , s-ipvagy cs-version a s-computernamemezőket.
Üzembehelyezési naplók /LogFiles/Git/ és /deployments/ A belső üzembehelyezési folyamatok által létrehozott naplókat, valamint a Git-üzemelő példányok naplóit tartalmazza.

Naplók küldése az Azure Monitorba

Az Azure Monitor-integrációval diagnosztikai beállításokat hozhat létre a naplók tárfiókokba, eseményközpontokba és Log Analyticsbe való küldéséhez. Diagnosztikai beállítás hozzáadásakor az App Service alkalmazásbeállításokat ad hozzá az alkalmazáshoz, ami elindítja az alkalmazás újraindítását.

Diagnosztikai beállítások

Támogatott naplótípusok

A támogatott naplótípusok és azok leírásaiért lásd a Microsoft.Web támogatott erőforrásnaplóit.

Hálózati szempontok

A diagnosztikai beállításokra vonatkozó korlátozásokért tekintse meg a diagnosztikai beállítások célkorlátokkal kapcsolatos hivatalos dokumentációját.

Következő lépések