Erőforrásnaplók hibaelhárítása

Ez az útmutató áttekintést nyújt az Azure Web PubSub erőforrásnaplóiról, valamint néhány tippet a naplók bizonyos problémák elhárításához való használatához. A naplók felhasználhatók a probléma azonosítására, a kapcsolat nyomon követésére, az üzenetkövetésre, a HTTP-kérések nyomon követésére és az elemzésre.

Mik azok az erőforrásnaplók?

Az erőforrásnaplóknak három típusa van: Csatlakozás ivity, Messaging és HTTP-kérések.

  • A Csatlakozás tivitási naplók részletes információkat nyújtanak az Azure Web PubSub Hub-kapcsolatokról. Ilyenek például az alapvető információk (felhasználói azonosító, kapcsolatazonosító stb.) és az eseményadatok (kapcsolódás, leválasztás stb.).
  • Az üzenetnaplók nyomkövetési információkat nyújtanak az Azure Web PubSub-központ Azure Web PubSub szolgáltatáson keresztül fogadott és küldött üzeneteiről. Például az üzenet nyomkövetési azonosítója és üzenettípusa.
  • A HTTP-kérelmek naplói nyomkövetési információkat nyújtanak a HTTP-kérésekhez az Azure Web PubSub szolgáltatásnak. Például HTTP-metódus és állapotkód. A HTTP-kérés általában akkor lesz rögzítve, amikor megérkezik vagy kilép a szolgáltatásból.

Erőforrásnaplók rögzítése az élő nyomkövetési eszközzel

Az Azure Web PubSub szolgáltatás élő nyomkövetési eszköze képes valós időben gyűjteni az erőforrásnaplókat, ami hasznos a fejlesztési környezetben felmerülő problémák elhárításához. Az élő nyomkövetési eszköz képes rögzíteni a kapcsolati naplókat, az üzenetkezelési naplókat és a HTTP-kérelmek naplóit.

Megjegyzés:

Az élő nyomkövetési eszköz használatára az alábbi szempontok vonatkoznak:

  • Az élő nyomkövetési eszköz által rögzített valós idejű erőforrásnaplók üzenetként (kimenő forgalomként) lesznek számlázva.
  • Az élő nyomkövetési eszköz jelenleg nem támogatja a Microsoft Entra engedélyezését. Engedélyeznie kell a hozzáférési kulcsokat az élő nyomkövetés használatához. A Gépház területen válassza a Kulcsok lehetőséget, majd engedélyezze az Access-kulcsot.
  • Az Azure Web PubSub szolgáltatás ingyenes szintű példányának napi korlátja 20 000 üzenet (kimenő forgalom). Az élő nyomkövetés miatt váratlanul elérheti a napi korlátot.

Az élő nyomkövetési eszköz elindítása

Megjegyzés:

A hozzáférési kulcs engedélyezésekor a hozzáférési jogkivonat használatával hitelesíti az élő nyomkövetési eszközt. Ellenkező esetben a Microsoft Entra ID-t fogja használni az élő nyomkövetési eszköz hitelesítéséhez. Ellenőrizheti, hogy engedélyezi-e a hozzáférési kulcsot, vagy sem a SignalR-szolgáltatás Kulcsok lapján az Azure Portalon.

A hozzáférési kulcs engedélyezésének lépései

  1. Nyissa meg az Azure Portalt és a SignalR szolgáltatás oldalát.

  2. A bal oldali menüben a Figyelés csoportban válassza az Élő nyomkövetési beállítások lehetőséget.

  3. Válassza az Élő nyomkövetés engedélyezése lehetőséget.

  4. Válassza a Mentés gombot. A módosítások érvénybe lépnek.

  5. Ha a frissítés befejeződött, válassza az Élő nyomkövetési eszköz megnyitása lehetőséget.

    Screenshot of launching the live trace tool.

A hozzáférési kulcs letiltásának lépései

Élő nyomkövetési eszköz API-engedélyének hozzárendelése saját magához

  1. Nyissa meg az Azure Portalt és a SignalR szolgáltatás oldalát.
  2. Select Access control (IAM).
  3. Az új lapon kattintson a +Hozzáadás, majd a Szerepkör-hozzárendelés elemre.
  4. Az új lapon koncentráljon a Feladatfüggvény-szerepkörök lapra, válassza a SignalR szolgáltatástulajdonosi szerepkört, majd kattintson a Tovább gombra.
  5. A Tagok lapon kattintson a +Tagok kijelölése elemre.
  6. Az új panelen keressen és jelöljön ki tagokat, majd kattintson a Kiválasztás gombra.
  7. Kattintson a Véleményezés + hozzárendelés gombra, és várja meg a befejezési értesítést.

Élő nyomkövetési eszköz felkeresása

  1. Nyissa meg az Azure Portalt és a SignalR szolgáltatás oldalát.

  2. A bal oldali menüben a Figyelés csoportban válassza az Élő nyomkövetési beállítások lehetőséget.

  3. Válassza az Élő nyomkövetés engedélyezése lehetőséget.

  4. Válassza a Mentés gombot. A módosítások érvénybe lépnek.

  5. Ha a frissítés befejeződött, válassza az Élő nyomkövetési eszköz megnyitása lehetőséget.

    Screenshot of launching the live trace tool.

Bejelentkezés saját Microsoft-fiókkal

  1. Az élő nyomkövetési eszköz előugrik egy Microsoft bejelentkezési ablakban. Ha nincs előugró ablak, ellenőrizze és engedélyezze az előugró ablakokat a böngészőben.
  2. Várjon, amíg megjelenik a Kész az állapotsoron.

Az erőforrásnaplók rögzítése

Az élő nyomkövetési eszköz funkcióval segíti az erőforrásnaplók hibaelhárításhoz való rögzítését.

  • Rögzítés: Kezdje el rögzíteni az Azure Web PubSub valós idejű erőforrásnaplóit.
  • Egyértelmű: Törölje a rögzített valós idejű erőforrásnaplókat.
  • Naplószűrő: Az élő nyomkövetési eszköz lehetővé teszi a rögzített valós idejű erőforrásnaplók szűrését egy adott kulcsszóval. A közös elválasztók (például szóköz, vessző, pontosvessző stb.) a kulcsszavak részeként lesznek kezelve.
  • Állapot: Az állapot azt mutatja, hogy az élő nyomkövetési eszköz csatlakoztatva van-e az adott példányhoz, vagy nincs-e leválasztva.

Screenshot of capturing resource logs with live trace tool.

Az élő nyomkövetési eszköz által rögzített valós idejű erőforrásnaplók részletes információkat tartalmaznak a hibaelhárításhoz.

Name Leírás
Idő Naplóesemény ideje
Naplószint Naplóesemény szintje lehet [Trace | Hibakeresés | Tájékoztató | Figyelmeztetés | Hiba]
Eseménynév Az esemény műveletneve
Üzenet Az esemény részletes üzenete
Kivétel Az Azure Web PubSub szolgáltatás futásidejű kivétele
Hub Felhasználó által definiált központ neve
Csatlakozás ion azonosítója A kapcsolat identitása
Felhasználói azonosító Felhasználói azonosító
IP Client IP address
Útvonalsablon Az API útvonalsablonja
Http-metódus A Http metódus (POST/GET/PUT/DELETE)
URL Az egységes erőforrás-lokátor
Nyomkövetési azonosító A meghívás egyedi azonosítója
Állapotkód A Http-válaszkód
Időtartam A kérelem beérkezése és a kérelem feldolgozása közötti időtartam
Fejlécek Az ügyfél és a kiszolgáló által http-kéréssel vagy válaszsal átadott további információk

Erőforrásnaplók rögzítése az Azure Monitorral

Erőforrásnaplók engedélyezése

Az Azure Web PubSub jelenleg támogatja az Azure Storage-ral való integrációt.

  1. Lépjen az Azure Portalra.

  2. Az Azure Web PubSub szolgáltatáspéldány Diagnosztikai beállítások lapján válassza a + Diagnosztikai beállítás hozzáadása lehetőséget. Screenshot of viewing diagnostic settings and create a new one

  3. A Diagnosztikai beállítás neve területen adja meg a beállítás nevét.

  4. A Kategória részletei területen válassza ki a kívánt naplókategóriát.

  5. A Céladatok területen ellenőrizze az Archiválás tárfiókba jelölőnégyzetet.

    Screenshot of configuring diagnostic setting detail

  6. A diagnosztikai beállítás mentéséhez válassza a Mentés lehetőséget.

    Megjegyzés:

    A tárfióknak ugyanabban a régióban kell lennie, mint az Azure Web PubSub szolgáltatásnak.

Archiválás Azure Storage-fiókba

A naplók a Diagnosztikai beállítások panelen konfigurált tárfiókban vannak tárolva. A rendszer automatikusan létrehoz egy névvel ellátott insights-logs-<CATEGORY_NAME> tárolót az erőforrásnaplók tárolásához. A tárolón belül a naplók a fájlban resourceId=/SUBSCRIPTIONS/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/RESOURCEGROUPS/XXXX/PROVIDERS/MICROSOFT.SIGNALRSERVICE/SIGNALR/XXX/y=YYYY/m=MM/d=DD/h=HH/m=00/PT1H.jsonvannak tárolva. Az elérési út össze van kötve a következővel resource ID : és Date Time. A naplófájlok fel vannak osztva .hour A percérték mindig m=00.

Minden napló JavaScript Object Notation (JSON) formátumban van tárolva. Minden bejegyzéshez a következő szakaszokban ismertetett formátumot használó karakterláncmezők vannak beírva.

Az archív napló JSON-sztringjei a következő táblázatokban felsorolt elemeket tartalmazzák:

Format

Name Leírás
time Naplóesemény ideje
szint Naplóesemény szintje
resourceId Az Azure SignalR szolgáltatás erőforrás-azonosítója
hely Az Azure SignalR szolgáltatás helye
kategória A naplóesemény kategóriája
operationName Az esemény műveletneve
callerIpAddress A kiszolgáló vagy az ügyfél IP-címe
tulajdonságok A naplóeseményhez kapcsolódó részletes tulajdonságok. További részletekért tekintse meg az alábbi tulajdonságokat tartalmazó táblázatot

Tulajdonságok táblázat

Name Leírás
Gyűjtemény A naplóesemény gyűjteménye. Az engedélyezett értékek a következők: Connection, Authorization és Throttling
connectionId A kapcsolat identitása
userId A felhasználó identitása
message A naplóesemény részletes üzenete
Hub Felhasználó által definiált központ neve
routeTemplate Az API útvonalsablonja
httpMethod A Http metódus (POST/GET/PUT/DELETE)
url Az egységes erőforrás-lokátor
traceId A meghívás egyedi azonosítója
statusCode A Http-válaszkód
időtartam A kérelem beérkezése és feldolgozása közötti időtartam
Fejlécek Az ügyfél és a kiszolgáló által http-kéréssel vagy válaszsal átadott további információk

Az alábbi kód egy archív napló JSON-sztringjének példája:

{
  "properties": {
    "message": "Connection started",
    "collection": "Connection",
    "connectionId": "LW61bMG2VQLIMYIVBMmyXgb3c418200",
    "userId": null
  },
  "operationName": "ConnectionStarted",
  "category": "ConnectivityLogs",
  "level": "Informational",
  "callerIpAddress": "167.220.255.79",
  "resourceId": "/SUBSCRIPTIONS/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/RESOURCEGROUPS/MYGROUP/PROVIDERS/MICROSOFT.SIGNALRSERVICE/WEBPUBSUB/MYWEBPUBSUB",
  "time": "2021-09-17T05:25:05Z",
  "location": "westus"
}

Archiválás az Azure Log Analyticsbe

Naplók küldése Log Analytics-munkaterületre:

  1. A Diagnosztikai beállítás lap Céladatok csoportjában válassza a **Küldés a Log Analytics-munkaterületre lehetőséget.
  2. Válassza ki a használni kívánt előfizetést.
  3. Válassza ki a naplók célhelyeként használni kívánt Log Analytics-munkaterületet .

Az erőforrásnaplók megtekintéséhez kövesse az alábbi lépéseket:

  1. Válassza ki Logs a cél Log Analytics elemét.

    Log Analytics menu item

  2. Írja be WebPubSubConnectivityvagy WebPubSubHttpRequestWebPubSubMessaging , majd válassza ki az időtartományt a napló lekérdezéséhez. A speciális lekérdezésekért tekintse meg a Log Analytics használatának első lépéseit az Azure Monitorban.

    Query log in Log Analytics

Ha minta lekérdezést szeretne használni a SignalR szolgáltatáshoz, kövesse az alábbi lépéseket.

  1. Válassza ki Logs a cél Log Analytics elemét.
  2. Válassza ki Queries a lekérdezéskezelő megnyitásához.
  3. Válassza ki Resource type a minta lekérdezések erőforrástípusba való csoportosításához.
  4. Válassza ki Run a szkript futtatásához. Sample query in Log Analytics

Az archív naplóoszlopok az alábbi táblázatban felsorolt elemeket tartalmazzák.

Name Leírás
TimeGenerated Naplóesemény ideje
Gyűjtemény A naplóesemény gyűjteménye. Az engedélyezett értékek a következők: Connection, Authorization és Throttling
OperationName Az esemény műveletneve
Location Az Azure SignalR szolgáltatás helye
Szint Naplóesemény szintje
HívóIPCíme A kiszolgáló/ügyfél IP-címe
Üzenet A naplóesemény részletes üzenete
UserId A felhasználó identitása
Csatlakozás ionId A kapcsolat identitása
Csatlakozás ionType A kapcsolat típusa. Az engedélyezett értékek a következők: Server | Client. Server: kapcsolat kiszolgálóoldalról; Client: kapcsolat ügyféloldalról
TransportType A kapcsolat átviteli típusa. Az engedélyezett értékek a következők: Websockets | ServerSentEvents | LongPolling

Hibaelhárítás az erőforrásnaplókkal

Ha váratlan változásokat tapasztal a kapcsolatok számában, akár növekszik, akár csökken, kihasználhatja az erőforrásnaplók előnyeit a probléma elhárításához. A gyakori problémák gyakran a kapcsolatok váratlan mennyiségváltozásai, a kapcsolatok csatlakozási korlátainak elérése és az engedélyezési hiba miatt merülnek fel.

Váratlan változások a kapcsolatok számában

Váratlan kapcsolat megszakadása

Ha egy kapcsolat megszakad, az erőforrásnaplók rögzítik a leválasztási eseményt a következővel ConnectionAborted vagy ConnectionEnded a következővel operationName: .

A különbség ConnectionAbortedConnectionEnded és az, hogy ConnectionEnded az ügyfél- vagy kiszolgálóoldal által aktivált, várhatóan megszakadó kapcsolat. Bár ez ConnectionAborted általában egy váratlan kapcsolatleválasztási esemény, és a kapcsolat bontásának okát a rendszer megadja.message

A megszakítás okait az alábbi táblázat sorolja fel:

Ok Leírás
Csatlakozás ionok száma eléri a korlátot Csatlakozás a darabszám eléri az aktuális árszint korlátját. Fontolja meg a szolgáltatási egység vertikális felskálázását
Szolgáltatás újratöltése, újracsatlakoztatása Az Azure Web PubSub szolgáltatás újra betöltődik. Saját újracsatlakozási mechanizmust kell implementálnia, vagy manuálisan újra kell csatlakoznia az Azure Web PubSub szolgáltatáshoz
Belső kiszolgáló átmeneti hibája Átmeneti hiba történik az Azure Web PubSub szolgáltatásban, automatikusan helyre kell állítani

A kapcsolatok váratlan növekedése

Amikor váratlanul megnő az ügyfélkapcsolatok száma, az első teendő a felesleges kapcsolatok kiszűrése. Adjon hozzá egy egyedi tesztfelhasználó-azonosítót a tesztügyfél-kapcsolathoz. Ezután ellenőrizze az erőforrásnaplókat; Ha egynél több ügyfélkapcsolat ugyanazt a tesztfelhasználói azonosítót vagy IP-címet látja, akkor valószínű, hogy az ügyfél a vártnál több kapcsolatot hoz létre. Ellenőrizze az ügyfélkódot a további kapcsolatok forrásának megkereséséhez.

Engedélyezési hiba

Ha 401 jogosulatlanul visszaadott ügyfélkérést kap, ellenőrizze az erőforrásnaplókat. Ha megtalálta Failed to validate audience. Expected Audiences: <valid audience>. Actual Audiences: <actual audience>, az azt jelenti, hogy a hozzáférési jogkivonat összes célközönsége érvénytelen. Próbálja meg használni a naplóban javasolt érvényes célközönségeket.

Throttling

Ha úgy találja, hogy nem tud ügyfélkapcsolatokat létesíteni az Azure Web PubSub szolgáltatással, ellenőrizze az erőforrásnaplókat. Ha megjelenik Connection count reaches limit az erőforrásnaplóban, túl sok kapcsolatot létesített az Azure Web PubSub szolgáltatással, és elérte a kapcsolatszám korlátját. Fontolja meg az Azure Web PubSub szolgáltatáspéldány skálázását. Ha megjelenik Message count reaches limit az erőforrásnaplóban, és az ingyenes szintet használja, az azt jelenti, hogy felhasználta az üzenetek kvótáját. Ha további üzeneteket szeretne küldeni, fontolja meg az Azure Web PubSub szolgáltatáspéldány standard szintre való módosítását. További információ: Azure Web PubSub szolgáltatás díjszabása.