Diagnosztikai naplók az Application Gatewayhez

Az Application Gateway-naplók részletes információkat nyújtanak az erőforráshoz és annak műveleteihez kapcsolódó eseményekről. Ezek a naplók olyan eseményekhez érhetők el, mint az Access, a Tevékenység, a Tűzfal és a Teljesítmény (csak v1 esetén). A naplók részletes információi hasznosak a probléma elhárításához vagy elemzési irányítópult létrehozásához ezen nyers adatok felhasználásával.

A naplók az Application Gateway összes erőforrásához elérhetők; azonban a felhasználásukhoz engedélyeznie kell a gyűjteményt egy tetszőleges tárolóhelyen. A Azure-alkalmazás Átjáróba való bejelentkezést az Azure Monitor szolgáltatás engedélyezi. Javasoljuk, hogy használja a Log Analytics-munkaterületet, mivel könnyen használhatja az előre definiált lekérdezéseket, és riasztásokat állíthat be adott naplófeltételek alapján.

Diagnosztikai naplók típusai

Az Azure-ban különböző típusú naplókat használhat az alkalmazásátjárók kezeléséhez és hibaelhárításához. Az alábbi típusokról az alábbiakban olvashat bővebben:

  • Tevékenységnapló: Az Azure-tevékenységnaplók (korábbi nevén működési naplók és auditnaplók) használatával megtekintheti az Azure-előfizetésbe küldött összes műveletet és azok állapotát. A tevékenységnaplók bejegyzéseit alapértelmezés szerint gyűjti a rendszer, ezeket az Azure Portalon tekintheti meg.
  • Hozzáférési napló: Ezzel a naplóval megtekintheti az Application Gateway hozzáférési mintáit, és elemezheti a fontos információkat. Ez magában foglalja a hívó IP-címét, a kért URL-címet, a válasz késését, a visszatérési kódot és a bájtokat. A rendszer 60 másodpercenként gyűjt egy hozzáférési naplót. Ez a napló az Application Gateway példányonként egy rekordot tartalmaz. Az Application Gateway-példányt a instanceId tulajdonság azonosítja.
  • Teljesítménynapló: Ezzel a naplóval megtekintheti az Application Gateway-példányok teljesítményét. Ez a napló rögzíti az egyes példányok teljesítményadatait, beleértve a kiszolgált összes kérést, a bájtban megadott átviteli sebességet, a teljes kiszolgált kéréseket, a sikertelen kérelmek számát, valamint a háttérpéldányok kifogástalan és nem kifogástalan számát. A rendszer 60 másodpercenként gyűjt teljesítménynaplót. A teljesítménynapló csak az 1. verziós termékváltozathoz érhető el. A v2 termékváltozathoz használja a Metrikákat a teljesítményadatokhoz.
  • Tűzfalnapló: Ezzel a naplóval megtekintheti a webalkalmazási tűzfallal konfigurált application gateway észlelési vagy megelőzési módjával naplózott kéréseket. A rendszer 60 másodpercenként gyűjti a tűzfalnaplókat.

Feljegyzés

A naplók csak az Azure Resource Manager-alapú üzemi modellben üzembe helyezett erőforrásokhoz érhetők el. A klasszikus üzemi modellben nem használhat naplókat erőforrásokhoz. A két modell jobb megértéséhez tekintse meg a Resource Manager üzembe helyezésének ismertetése és a klasszikus üzembe helyezésről szóló cikket.

Tárolási helyek

A naplók az ön által előnyben részesített helyen való tárolására az alábbi lehetőségek közül választhat.

Log Analitikus munkaterület: Ezzel a beállítással könnyen használhatja az előre definiált lekérdezéseket, vizualizációkat, és riasztásokat állíthat be adott naplófeltételek alapján. A Log Analytics-munkaterület erőforrásnaplói által használt táblák attól függenek, hogy milyen típusú gyűjteményt használ az erőforrás:

Azure-diagnosztika: Az adatok az Azure Diagnostics táblába íródnak. Az Azure Diagnostics tábla több erőforrástípus között van megosztva, és mindegyik saját egyéni mezőket ad hozzá. Ha az Azure Diagnostics-táblába betöltött egyéni mezők száma meghaladja az 500-as értéket, az új mezők nem lesznek legfelső szintűek, hanem dinamikus kulcsértékpárokként hozzáadva az "AdditionalFields" mezőhöz.

Erőforrás-specifikus(ajánlott): Az adatok dedikált táblákba lesznek írva az erőforrás egyes kategóriáihoz. Erőforrás-specifikus módban a diagnosztikai beállításban kiválasztott összes naplókategória saját táblát kap a kiválasztott munkaterületen belül. Ennek számos előnye van, például:

  • Egyszerűbb adatkezelés a napló lekérdezéseiben
  • A sémák és azok struktúráinak jobb felderíthetősége
  • Továbbfejlesztett teljesítmény a betöltési késés és a lekérdezési idő tekintetében
  • Az Azure szerepköralapú hozzáférés-vezérlési jogosultságainak hozzárendelése adott táblákhoz

Az Application Gateway esetében az erőforrás-specifikus mód három táblát hoz létre:

Feljegyzés

Az erőforrás-specifikus beállítás jelenleg minden nyilvános régióban elérhető.
A meglévő felhasználók továbbra is használhatják az Azure Diagnostics szolgáltatást, vagy dedikált táblákat választhatnak a diagnosztikai beállítások kapcsolójának erőforrás-specifikusra vagy dedikált API-célhelyre való váltásával. Kettős mód nem lehetséges. Az összes napló adatai az Azure Diagnosticsba vagy dedikált táblákba áramolhatnak. Azonban több diagnosztikai beállítással is rendelkezhet, ahol az egyik adatfolyam az Azure-beli diagnosztika, a másik pedig egy adott erőforrást használ egyszerre.

A céltábla kiválasztása a Log Analyticsben: Az összes Azure-szolgáltatás végül az erőforrás-specifikus táblákat használja. Az áttűnés részeként egy váltógombbal kiválaszthatja az Azure diagnosztikai vagy erőforrás-specifikus táblát a diagnosztikai beállításban. A kapcsoló alapértelmezés szerint erőforrás-specifikusra van állítva, és ebben a módban az új kiválasztott kategóriák naplói a Log Analytics dedikált tábláiba kerülnek, míg a meglévő streamek változatlanok maradnak. Tekintse meg a következő példát.

Képernyőkép az Application Gateway erőforrás-azonosítójáról a portálon.

Munkaterület-átalakítások: Az erőforrás-specifikus beállítás kiválasztásával szűrheti és módosíthatja az adatokat, mielőtt betöltené a munkaterület-átalakításokat. Ez részletes vezérlést biztosít, így az adatköltségek csökkentésével és a biztonság növelésével a naplók legrelevánsabb információira összpontosíthat. A munkaterület-átalakítások beállításával kapcsolatos részletes útmutatásért lásd: Oktatóanyag: Munkaterület-átalakítás hozzáadása az Azure Monitor-naplókhoz az Azure Portal használatával.

Példák a hozzáférési naplók munkaterület-átalakítások használatával történő optimalizálására

1. példa: Az oszlopok szelektív kivetítése: Tegyük fel, hogy az Application Gateway hozzáférési naplói 20 oszlopot tartalmaznak, de csak 6 adott oszlop adatait szeretné elemezni. A munkaterület átalakításával ezt a 6 oszlopot kivetítheti a munkaterületre, gyakorlatilag kizárva a többi 14 oszlopot. Annak ellenére, hogy a kizárt oszlopok eredeti adatai nem lesznek tárolva, az üres helyőrzők továbbra is megjelennek a Naplók panelen. Ez a megközelítés optimalizálja a tárolást, és biztosítja, hogy csak a releváns adatok maradnak meg elemzésre.

Feljegyzés

A Naplók panelen az Új Log Analytics kipróbálása lehetőség kiválasztásával nagyobb mértékben szabályozhatja a felhasználói felületen megjelenő oszlopokat.

2. példa: Konkrét állapotkódokra összpontosítva: A hozzáférési naplók elemzésekor az összes naplóbejegyzés feldolgozása helyett egy lekérdezést is írhat, amely csak adott HTTP-állapotkódokkal rendelkező sorokat kér le (például 4xx és 5xx). Mivel a legtöbb kérés ideális esetben a 2xx és a 3xx kategóriába tartozik (a sikeres válaszokat jelképezve), a problémás állapotkódokra összpontosítva szűkíti az adatkészletet. Ez a célzott megközelítés lehetővé teszi, hogy a legrelevánsabb és legrelevánsabb információkat nyerje ki, így mind előnyös, mind költséghatékony.

Ajánlott áttűnési stratégia az Azure Diagnosticról az erőforrás-specifikus táblára való áttéréshez:

  1. Az aktuális adatmegőrzés értékelése: Határozza meg, hogy az Adatok jelenleg milyen ideig vannak megőrzve az Azure diagnosztikai táblában (például: tegyük fel, hogy a diagnosztikai tábla 15 napig őrzi meg az adatokat).
  2. Erőforrás-specifikus megőrzés létrehozása: Új diagnosztikai beállítás implementálása erőforrás-specifikus táblával.
  3. Párhuzamos adatgyűjtés: Egy átmeneti időszakban egyszerre gyűjtsön adatokat az Azure Diagnosticsban és az erőforrás-specifikus beállításokban is.
  4. Ellenőrizze az adatok pontosságát: Ellenőrizze, hogy az adatgyűjtés pontos és konzisztens-e mindkét beállításban.
  5. Az Azure diagnosztikai beállításainak eltávolítása: Távolítsa el az Azure Diagnosztikai beállítást az ismétlődő adatgyűjtés megakadályozása érdekében.

Egyéb tárolási helyek:

  • Azure Storage-fiók: A tárfiókokat akkor érdemes használni a naplókhoz, ha a naplók hosszabb ideig vannak tárolva, és szükség esetén felülvizsgálják őket.
  • Azure Event Hubs: Az eseményközpontok kiváló lehetőséget biztosítanak az egyéb biztonsági információkkal és eseménykezelési (SIEM) eszközökkel való integrációra, hogy riasztásokat kapjunk az erőforrásokról.
  • Azure Monitor-partnerintegrációk.

További információ az Azure Monitor diagnosztikai beállítások célhelyeiről .

Naplózás engedélyezése a PowerShell-lel

A tevékenységnaplózás automatikusan engedélyezve van minden Resource Manager-erőforráshoz. Engedélyeznie kell a hozzáférés- és teljesítménynaplózást a naplókon keresztül elérhető adatok gyűjtésének megkezdéséhez. A naplózás engedélyezéséhez kövesse az alábbi lépéseket:

  1. Jegyezze fel azon Storage-fiók erőforrás-azonosítóját, ahol a naplóadatokat tárolja. Ez az érték a következő formában jelenik meg: /subscriptions/subscriptionId>/resourceGroups/<resource group name>/providers/Microsoft.Storage/storageAccounts/<storage account name>.< Az előfizetés bármilyen tárfiókját használhatja. Ezeket az információkat az Azure Portalon találhatja meg.

    Képernyőkép a tárfiók végpontjairól

  2. Jegyezze fel az Application Gateway erőforrás-azonosítóját, amelyhez engedélyezve van a naplózás. Ez az érték a következő formában jelenik meg: /subscriptions/subscriptionId>/resourceGroups/<resource group name>/providers/Microsoft.Network/applicationGateways/<Application Gateway name>.< Ezeket az információkat a portálon találhatja meg.

    Képernyőkép az App Gateway tulajdonságairól

  3. Engedélyezze a diagnosztikai naplózást az alábbi PowerShell-parancsmaggal:

    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.

A tevékenységnaplókhoz nincs szükség külön tárfiókra. A Storage hozzáférés- és teljesítménynaplózásra való használata szolgáltatási díjjal jár.

Naplózás engedélyezése az Azure Portalon

  1. Az Azure Portalon keresse meg az erőforrást, és válassza a Diagnosztikai beállítások lehetőséget.

    Az Application Gateway esetében három napló érhető el:

    • Hozzáférési napló
    • Teljesítménynapló
    • Tűzfalnapló
  2. Az adatgyűjtés megkezdéséhez válassza a Diagnosztikák bekapcsolása lehetőséget.

    A diagnosztika bekapcsolása

  3. A Diagnosztikai beállítások lap megadja a diagnosztikai naplók beállításait. Ebben a példában a Log Analytics tárolja a naplókat. Eseményközpontot és tárfiókot is használhat a diagnosztikai naplók mentésére.

    A konfigurációs folyamat indítása

  4. Írja be a beállítások nevét, erősítse meg a beállításokat, és válassza a Mentés lehetőséget.

Tevékenységnapló

Az Azure alapértelmezés szerint létrehozza a tevékenységnaplót. A naplók 90 napig maradnak meg az Azure eseménynapló-tárolójában. Ezekről a naplókról az Események megtekintése és a tevékenységnapló című cikkből tudhat meg többet.

Hozzáférési napló

A hozzáférési napló csak akkor jön létre, ha engedélyezte azt minden Application Gateway-példányon, az előző lépésekben leírtak szerint. Az adatok a naplózás engedélyezésekor megadott tárfiókban lesznek tárolva. Az Application Gateway minden hozzáférése JSON formátumban van naplózva az alábbiak szerint.

Application Gateway és WAF v2 termékváltozat esetén

Feljegyzés

A TLS/TCP-proxyval kapcsolatos információkért látogasson el az adathivatkozásra.

Érték Leírás
instanceId A kérést kézbesítő Application Gateway-példány.
clientIP Az Application Gateway közvetlen ügyfélének IP-címe. Ha egy másik proxy előtérként használja az application Gatewayt, ez megjeleníti az előtér-proxy IP-címét.
httpMethod A kérés által használt HTTP-metódus.
requestUri A kapott kérelem URI-ja.
Useragent A HTTP-kérelem fejlécéből származó felhasználói ügynök.
httpStatus HTTP-állapotkód az Application Gatewayről adva vissza az ügyfélnek.
httpVersion A kérés HTTP-verziója.
receivedBytes A fogadott csomagok mérete bájtban.
sentBytes Az elküldött csomagok mérete bájtban.
clientResponseTime Az ügyfélnek küldött első bájt és az utolsó bájt alkalmazásátjáró közötti időeltolódás (másodpercben). Hasznos lehet az Application Gateway feldolgozási idejének a válaszokhoz vagy a lassú ügyfelekhez való beszűkítésében.
timeTaken Az ügyfélkérés első bájtjának feldolgozása és az ügyfélnek küldött válaszban küldött utolsó bájt hossza ( másodpercben). Fontos megjegyezni, hogy az Időalapú mező általában azt az időt tartalmazza, amikor a kérés- és válaszcsomagok a hálózaton keresztül haladnak.
WAFEvaluationTime A kérelem WAF általi feldolgozásához szükséges időtartam (másodpercben).
WAFMode Az érték lehet észlelés vagy megelőzés
transactionId Az ügyféltől kapott kérés korrelációjának egyedi azonosítója
sslEnabled Azt jelzi, hogy a háttérkészletekkel folytatott kommunikáció TLS-t használt-e. Az érvényes értékek be- és ki vannak kapcsolva.
sslCipher A TLS-kommunikációhoz használt titkosítási csomag (ha a TLS engedélyezve van).
sslProtocol SSL/TLS protokoll használata (ha a TLS engedélyezve van).
serverRouted Az a háttérkiszolgáló, amelybe az Application Gateway átirányítja a kérést.
serverStatus A háttérkiszolgáló HTTP-állapotkódja.
serverResponseLatency A háttérkiszolgáló válaszának késése (másodpercben).
házigazda A kérés állomásfejlécében felsorolt cím. Ha a fejléc újraírásával újraírták, ez a mező tartalmazza a frissített gazdagépnevet
originalRequestUriWithArgs Ez a mező az eredeti kérelem URL-címét tartalmazza
requestUri Ez a mező az Application Gateway újraírási művelete utáni URL-címet tartalmazza
upstreamSourcePort Az Application Gateway által a háttérbeli célhoz való kapcsolat kezdeményezéséhez használt forrásport
originalHost Ez a mező az eredeti kérelem állomásnevét tartalmazza
error_info A 4xx és az 5xx hiba oka. Egy sikertelen kérés hibakódját jeleníti meg. További részletek a hibakód információiban .
contentType Az Application Gateway által feldolgozott vagy kézbesített tartalom vagy adatok típusa
{
    "timeStamp": "2021-10-14T22:17:11+00:00",
    "resourceId": "/SUBSCRIPTIONS/{subscriptionId}/RESOURCEGROUPS/{resourceGroupName}/PROVIDERS/MICROSOFT.NETWORK/APPLICATIONGATEWAYS/{applicationGatewayName}",
    "listenerName": "HTTP-Listener",
    "ruleName": "Storage-Static-Rule",
    "backendPoolName": "StaticStorageAccount",
    "backendSettingName": "StorageStatic-HTTPS-Setting",
    "operationName": "ApplicationGatewayAccess",
    "category": "ApplicationGatewayAccessLog",
    "properties": {
        "instanceId": "appgw_2",
        "clientIP": "185.42.129.24",
        "clientPort": 45057,
        "httpMethod": "GET",
        "originalRequestUriWithArgs": "\/",
        "requestUri": "\/",
        "requestQuery": "",
        "userAgent": "Mozilla\/5.0 (Windows NT 6.1; WOW64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/52.0.2743.116 Safari\/537.36",
        "httpStatus": 200,
        "httpVersion": "HTTP\/1.1",
        "receivedBytes": 184,
        "sentBytes": 466,
        "clientResponseTime": 0,
        "timeTaken": 0.034,
        "WAFEvaluationTime": "0.000",
        "WAFMode": "Detection",
        "transactionId": "592d1649f75a8d480a3c4dc6a975309d",
        "sslEnabled": "on",
        "sslCipher": "ECDHE-RSA-AES256-GCM-SHA384",
        "sslProtocol": "TLSv1.2",
        "sslClientVerify": "NONE",
        "sslClientCertificateFingerprint": "",
        "sslClientCertificateIssuerName": "",
        "serverRouted": "52.239.221.65:443",
        "serverStatus": "200",
        "serverResponseLatency": "0.028",
        "upstreamSourcePort": "21564",
        "originalHost": "20.110.30.194",
        "host": "20.110.30.194",
        "error_info":"ERRORINFO_NO_ERROR",
        "contentType":"application/json"
    }
}

Feljegyzés

A 127.0.0.1 ügyfélIP-értékkel rendelkező hozzáférési naplók az Application Gateway-példányokon futó belső biztonsági folyamatból származnak. Ezeket a naplóbejegyzéseket nyugodtan figyelmen kívül hagyhatja.

Application Gateway Standard és WAF termékváltozat (v1) esetén

Érték Leírás
instanceId A kérést kézbesítő Application Gateway-példány.
clientIP A kérés eredeti IP-címe.
clientPort A kérés feladó portja.
httpMethod A kérés által használt HTTP-metódus.
requestUri A kapott kérelem URI-ja.
RequestQuery Server-Routed: A kérést küldő háttérkészletpéldány.
X-AzureApplicationGateway-LOG-ID: A kéréshez használt korrelációs azonosító. A háttérkiszolgálók forgalmi problémáinak elhárítására használható.
Standard kiadás RVER-STATUS: HTTP-válaszkód, amelyet az Application Gateway kapott a háttérrendszerből.
Useragent A HTTP-kérelem fejlécéből származó felhasználói ügynök.
httpStatus HTTP-állapotkód az Application Gatewayről adva vissza az ügyfélnek.
httpVersion A kérés HTTP-verziója.
receivedBytes A fogadott csomagok mérete bájtban.
sentBytes Az elküldött csomagok mérete bájtban.
timeTaken A kérelem feldolgozásához és a válasz elküldéséhez szükséges időtartam (ezredmásodpercben). Ez attól az időszaktól számítható ki, amikor az Application Gateway megkapja a HTTP-kérés első bájtját a válaszküldési művelet befejezésének időpontjáig. Fontos megjegyezni, hogy az Időalapú mező általában azt az időt tartalmazza, amikor a kérés- és válaszcsomagok a hálózaton keresztül haladnak.
sslEnabled Azt jelzi, hogy a háttérkészletekkel folytatott kommunikáció TLS-t/SSL-t használt-e. Az érvényes értékek be- és ki vannak kapcsolva.
házigazda Az a gazdagépnév, amelynek a kérését a háttérkiszolgálóra küldte. Ha a háttérbeli gazdagépnév felül van bírálva, ez a név ezt tükrözi.
originalHost Az a gazdagépnév, amelynek a kérését az Application Gateway megkapta az ügyféltől.
{
    "resourceId": "/SUBSCRIPTIONS/{subscriptionId}/RESOURCEGROUPS/PEERINGTEST/PROVIDERS/MICROSOFT.NETWORK/APPLICATIONGATEWAYS/{applicationGatewayName}",
    "operationName": "ApplicationGatewayAccess",
    "time": "2017-04-26T19:27:38Z",
    "category": "ApplicationGatewayAccessLog",
    "properties": {
        "instanceId": "ApplicationGatewayRole_IN_0",
        "clientIP": "191.96.249.97",
        "clientPort": 46886,
        "httpMethod": "GET",
        "requestUri": "/phpmyadmin/scripts/setup.php",
        "requestQuery": "X-AzureApplicationGateway-CACHE-HIT=0&SERVER-ROUTED=10.4.0.4&X-AzureApplicationGateway-LOG-ID=874f1f0f-6807-41c9-b7bc-f3cfa74aa0b1&SERVER-STATUS=404",
        "userAgent": "-",
        "httpStatus": 404,
        "httpVersion": "HTTP/1.0",
        "receivedBytes": 65,
        "sentBytes": 553,
        "timeTaken": 205,
        "sslEnabled": "off",
        "host": "www.contoso.com",
        "originalHost": "www.contoso.com"
    }
}

Hibakód adatai

Ha az Application Gateway nem tudja befejezni a kérést, az alábbi okkódok egyikét tárolja a hozzáférési napló error_info mezőjében.

4XX-hibák (A 4xx hibakód azt jelzi, hogy hiba történt az ügyfél kérésével kapcsolatban, és az Application Gateway nem tudja teljesíteni.)
ERRORINFO_INVALID_METHOD Az ügyfél olyan kérést küldött, amely nem RFC-kompatibilis. Lehetséges okok: a kiszolgáló által nem támogatott HTTP-metódust használó ügyfél, hibásan írt módszer, nem kompatibilis HTTP protokoll verziója stb.
ERRORINFO_INVALID_REQUEST A kiszolgáló helytelen szintaxis miatt nem tudja teljesíteni a kérést.
ERRORINFO_INVALID_VERSION Az Application Gateway érvénytelen vagy nem támogatott HTTP-verziójú kérelmet kapott.
ERRORINFO_INVALID_09_METHOD Az ügyfél a HTTP Protocol 0.9-es verziójával küldött kérelmet.
ERRORINFO_INVALID_HOST A "Gazdagép" fejlécben megadott érték hiányzik, helytelenül van formázva, vagy nem felel meg a várt gazdagépértéknek. Ha például nincs alapszintű figyelő, és a többhelyes figyelők egyik gazdagépneve sem egyezik meg a gazdagéppel.
ERRORINFO_INVALID_CONTENT_LENGTH Az ügyfél által a content-Length fejlécben megadott tartalom hossza nem egyezik meg a kérelemben szereplő tartalom tényleges hosszával.
ERRORINFO_INVALID_METHOD_TRACE Az ügyfél HTTP TRACE metódust küldött, amelyet az Application Gateway nem támogat.
ERRORINFO_CLIENT_CLO Standard kiadás D_REQUEST Az ügyfél az üresjárati időtúllépési időszak lejárta előtt lezárta a kapcsolatot az application gatewayrel. Ellenőrizze, hogy az ügyfél időtúllépési időszaka nagyobb-e, mint az Application Gateway üresjárati időkorlátja .
ERRORINFO_REQUEST_URI_INVALID Az ügyfél kérésében megadott egységes erőforrás-azonosítóval (URI) kapcsolatos problémát jelzi.
ERRORINFO_HTTP_NO_HOST_HEADER Az ügyfél állomásfejléc nélkül küldött egy kérelmet.
ERRORINFO_HTTP_TO_HTTPS_PORT Az ügyfél egyszerű HTTP-kérelmet küldött egy HTTPS-portra.
ERRORINFO_HTTPS_NO_CERT Azt jelzi, hogy az ügyfél nem küld érvényes és megfelelően konfigurált TLS-tanúsítványt a kölcsönös TLS-hitelesítés során.
5XX-hibák Leírás
ERRORINFO_UPSTREAM_NO_LIVE Az Application Gateway nem talál aktív vagy elérhető háttérkiszolgálókat a bejövő kérések kezeléséhez
ERRORINFO_UPSTREAM_CLO Standard kiadás D_CONNECTION A háttérkiszolgáló váratlanul vagy a kérés teljes feldolgozása előtt bezárta a kapcsolatot. Ez azért fordulhat elő, mert a háttérkiszolgáló eléri a korlátait, összeomlik stb.
ERRORINFO_UPSTREAM_TIMED_OUT A kiszolgálóval létesített TCP-kapcsolat megszakadt, mivel a kapcsolat hosszabb ideig tartott, mint a konfigurált időtúllépési érték.

Teljesítménynapló

A teljesítménynapló csak akkor jön létre, ha engedélyezte azt minden Application Gateway-példányon, az előző lépésekben leírtak szerint. Az adatok a naplózás engedélyezésekor megadott tárfiókban lesznek tárolva. A teljesítménynapló adatai 1 perces időközönként jönnek létre. Ez csak az 1- s verziós termékváltozathoz érhető el. A v2 termékváltozathoz használja a Metrikákat a teljesítményadatokhoz. A rendszer a következő adatokat naplózza:

Érték Leírás
instanceId Application Gateway-példány, amelyhez teljesítményadatok jönnek létre. Többpéldányos alkalmazásátjáró esetén példányonként egy sor van.
healthyHostCount A háttérkészlet kifogástalan állapotú gazdagépeinek száma.
unHealthyHostCount A háttérkészlet nem kifogástalan gazdagépeinek száma.
requestCount A kézbesített kérelmek száma.
késés A példánytól a kéréseket kiszolgáló háttérrendszerig érkező kérések átlagos késése (ezredmásodpercben).
failedRequestCount Sikertelen kérelmek száma.
Átmenő Átlagos átviteli sebesség az utolsó napló óta, másodpercenként bájtban mérve.
{
    "resourceId": "/SUBSCRIPTIONS/{subscriptionId}/RESOURCEGROUPS/{resourceGroupName}/PROVIDERS/MICROSOFT.NETWORK/APPLICATIONGATEWAYS/{applicationGatewayName}",
    "operationName": "ApplicationGatewayPerformance",
    "time": "2016-04-09T00:00:00Z",
    "category": "ApplicationGatewayPerformanceLog",
    "properties":
    {
        "instanceId":"ApplicationGatewayRole_IN_1",
        "healthyHostCount":"4",
        "unHealthyHostCount":"0",
        "requestCount":"185",
        "latency":"0",
        "failedRequestCount":"0",
        "throughput":"119427"
    }
}

Feljegyzés

A késés attól az időponttól számítható ki, amikor a HTTP-kérés első bájtja a HTTP-válasz utolsó bájtjának elküldésének időpontjáig érkezik. Ez az Application Gateway feldolgozási idejének és a háttérrendszer hálózati költségeinek összege, valamint a háttérrendszernek a kérés feldolgozásához szükséges ideje.

Tűzfalnapló

A tűzfalnapló csak akkor jön létre, ha engedélyezte azt az egyes application gatewayekhez, az előző lépésekben leírtaknak megfelelően. Ez a napló azt is megköveteli, hogy a webalkalmazás tűzfala egy application gatewayen legyen konfigurálva. Az adatok a naplózás engedélyezésekor megadott tárfiókban lesznek tárolva. A rendszer a következő adatokat naplózza:

Érték Leírás
instanceId Application Gateway-példány, amelyhez tűzfaladatok jönnek létre. Többpéldányos alkalmazásátjáró esetén példányonként egy sor van.
clientIp A kérés eredeti IP-címe.
clientPort A kérés feladó portja.
requestUri A fogadott kérelem URL-címe.
ruleSetType Szabálykészlet típusa. Az elérhető érték az OWASP.
ruleSetVersion A szabálykészlet használt verziója. A rendelkezésre álló értékek a 2.2.9 és a 3.0.
ruleId Az eseményindító esemény szabályazonosítója.
üzenet Felhasználóbarát üzenet az eseményindító eseményhez. További részleteket a részletek szakaszban talál.
művelet A kérésen végrehajtott művelet. A rendelkezésre álló értékek blokkolva és engedélyezve vannak (egyéni szabályok esetén), egyezés (ha egy szabály megfelel a kérelem egy részének), és észlelve és letiltva (mindkettő kötelező szabályok esetén, attól függően, hogy a WAF észlelési vagy megelőzési módban van-e).
Webhely Az a hely, amelyhez a naplót létrehozták. Jelenleg csak a Globális lista jelenik meg, mert a szabályok globálisak.
részletek Az eseményindító esemény részletei.
details.message A szabály leírása.
details.data A szabálynak megfelelő kérésben található konkrét adatok.
details.file A szabályt tartalmazó konfigurációs fájl.
details.line Az eseményt aktiváló konfigurációs fájl sorszáma.
gazdaeszköznév Az Application Gateway állomásneve vagy IP-címe.
transactionId Egyedi azonosító egy adott tranzakcióhoz, amely segít az ugyanazon a kérésen belül előforduló több szabálysértés csoportosításában.
{
    "timeStamp": "2021-10-14T22:17:11+00:00",
    "resourceId": "/SUBSCRIPTIONS/{subscriptionId}/RESOURCEGROUPS/{resourceGroupName}/PROVIDERS/MICROSOFT.NETWORK/APPLICATIONGATEWAYS/{applicationGatewayName}",
    "operationName": "ApplicationGatewayFirewall",
    "category": "ApplicationGatewayFirewallLog",
    "properties": {
        "instanceId": "appgw_2",
        "clientIp": "185.42.129.24",
        "clientPort": "",
        "requestUri": "\/",
        "ruleSetType": "OWASP_CRS",
        "ruleSetVersion": "3.0.0",
        "ruleId": "920350",
        "message": "Host header is a numeric IP address",
        "action": "Matched",
        "site": "Global",
        "details": {
            "message": "Warning. Pattern match \\\"^[\\\\d.:]+$\\\" at REQUEST_HEADERS:Host .... ",
            "data": "20.110.30.194:80",
            "file": "rules\/REQUEST-920-PROTOCOL-ENFORCEMENT.conf",
            "line": "791"
        },
        "hostname": "20.110.30.194:80",
        "transactionId": "592d1649f75a8d480a3c4dc6a975309d",
        "policyId": "default",
        "policyScope": "Global",
        "policyScopeName": "Global"
    }
}

A tevékenységnapló megtekintése és elemzése

A tevékenységnaplók adatainak megtekintéséhez és elemzéséhez használja az alábbi módszerek bármelyikét:

  • Azure-eszközök: Információkat kérhet le a tevékenységnaplóból az Azure PowerShell-lel, az Azure CLI-vel, az Azure REST API-val vagy az Azure Portallal. Az egyes módszerek részletes útmutatóit a Resource Managerrel végzett tevékenységművelet című cikkben találja.
  • Power BI: Ha még nem rendelkezik Power BI-fiókkal, ingyenesen kipróbálhatja. A Power BI-sablonalkalmazások használatával elemezheti az adatokat.

A hozzáférési, teljesítmény- és tűzfalnaplók megtekintése és elemzése

Az Azure Monitor-naplók összegyűjthetik a számláló- és eseménynapló-fájlokat a Blob Storage-fiókból. A Log Analytics vizualizációkat és hatékony keresési lehetőségeket is tartalmaz a naplók elemzéséhez.

A Storage-fiókjához is csatlakozhat, és lekérheti a hozzáférés- és teljesítménynaplók JSON-naplóbejegyzéseit. A letöltött JSON-fájlokat átalakíthatja CSV-fájlokká, és ezeket megtekintheti az Excelben, Power BI-ban vagy bármely más adatvizualizációs eszközben.

Tipp.

Ha ismeri a Visual Studiót és az állandók és változók értékeinek C#-ban történő módosításának alapfogalmait, használhatja a GitHubon elérhető naplókonverter-eszközöket .

Hozzáférési naplók elemzése a GoAccessen keresztül

Közzétettünk egy Resource Manager-sablont, amely telepíti és futtatja a népszerű GoAccess-naplóelemzőt az Application Gateway hozzáférési naplóihoz. A GoAccess értékes HTTP-forgalmi statisztikákat biztosít, például egyedi látogatókat, kért fájlokat, gazdagépeket, operációs rendszereket, böngészőket, HTTP-állapotkódokat stb. További részletekért tekintse meg a Readme fájlt a GitHub Resource Manager-sablonmappájában.

Következő lépések