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


Az Application Insights teljesítményproblémáinak megkeresése és diagnosztizálása

Az Application Insights telemetriát gyűjt az alkalmazásból a teljesítmény és a működés elemzésének segítése érdekében. Ezekkel az információkkal feltárhatja a potenciális problémákat, illetve használatukkal azonosíthatja azokat a továbbfejlesztési lehetőségeket az alkalmazásban, amelyek a legnagyobb hatással lehetnek a felhasználókra. Ez az oktatóanyag az alkalmazás kiszolgáló-összetevőinek, valamint az ügyfél teljesítményének elemzési módszereit ismerteti.

Az alábbiak végrehajtásának módját ismerheti meg:

  • A kiszolgálóoldali műveletek teljesítményének azonosítása.
  • Elemezze a kiszolgálóműveleteket a lassú teljesítmény alapvető okának meghatározásához.
  • Azonosítsa a leglassabb ügyféloldali műveleteket.
  • Az oldalmegtekintések részleteinek elemzése lekérdezési nyelv használatával.

Előfeltételek

Az oktatóanyag elvégzéséhez:

  • Telepítse a Visual Studio 2019-et a következő számítási feladatokkal:
    • ASP.NET és webfejlesztés
    • Azure-fejlesztés
  • .NET-alkalmazás üzembe helyezése az Azure-ban és az Application Insights SDK engedélyezése
  • Engedélyezze az Application Insights profilkészítőt az alkalmazásához.

Bejelentkezés az Azure-ba

Jelentkezzen be az Azure Portalra.

Lassú kiszolgálói műveletek azonosítása

Az Application Insights teljesítményadatokat gyűjt az alkalmazás különböző műveleteiről. A leghosszabb időtartamú műveletek azonosításával diagnosztizálhatja a lehetséges problémákat, vagy megcélzhatja a folyamatban lévő fejlesztést az alkalmazás általános teljesítményének javítása érdekében.

  1. Válassza ki az Application Insights elemet, majd az előfizetését.

  2. A Teljesítmény panel megnyitásához válassza a Teljesítmény lehetőséget a Vizsgálat menüben, vagy válassza a Kiszolgáló válaszidejének grafikonját.

    Képernyőkép a Teljesítmény nézetről.

  3. A Teljesítmény képernyő az alkalmazás egyes műveleteinek számát és átlagos időtartamát jeleníti meg. Ezekkel az információkkal azonosíthatja azokat a műveleteket, amelyek a leginkább érintik a felhasználókat. Ebben a példában a GET Customers/Details és a GET Home/Index elemeket érdemes megvizsgálni a viszonylagosan hosszú időtartamuk és a hívások magas száma miatt. Más műveletek hosszabb időtartamúak lehetnek, de ritkán fordulnak elő, ezért a fejlesztésük hatása minimális lenne.

    Képernyőkép a Teljesítménykiszolgáló panelről.

  4. Ez a grafikon jelenleg a kijelölt műveletek átlagos időtartamát mutatja. A teljesítményproblémákat a 95. percentilisre váltva találhatja meg. Adja hozzá a kívánt műveletet a gráfhoz való rögzítéssel. A grafikonon látható, hogy vannak olyan csúcsok, amelyeket érdemes megvizsgálni. További elkülönítésükhöz csökkentse a gráf időablakát.

    Képernyőkép a rögzítési műveletekről.

  5. A jobb oldali teljesítmény panelen a kiválasztott művelet különböző kéréseihez tartozó időtartamok eloszlását láthatja. Szűkítse a keretet úgy, hogy a 95. percentilisnél kezdődjön. A 3 legfontosabb függőségi elemzési kártya egy pillantással megállapíthatja, hogy a külső függőségek valószínűleg hozzájárulnak a lassú tranzakciókhoz. A minták listájának megtekintéséhez válassza a minták számát tartalmazó gombot. Ezután válasszon ki egy mintát a tranzakció részleteinek megtekintéséhez.

  6. Egy pillantással láthatja, hogy a Fabrikamaccount Azure Table hívása a legnagyobb mértékben hozzájárul a tranzakció teljes időtartamához. Láthatja továbbá, hogy egy kivétel miatt meghiúsult. Jelölje ki a lista bármely elemét a jobb oldalon lévő részletek megtekintéséhez.

    Képernyőkép a művelet végpontok közötti tranzakcióinak részleteiről.

  7. A Profiler a művelethez futtatott tényleges kód és az egyes lépésekhez szükséges idő megjelenítésével segíti a kódszintű diagnosztikát. Előfordulhat, hogy egyes műveletek nem rendelkeznek nyomkövetéssel, mert a Profiler rendszeresen fut. Idővel több műveletnek lehet nyoma. A művelet profilkészítőjének elindításához válassza a Profiler-nyomkövetések lehetőséget.

  8. A nyomkövetés az egyes műveletek egyedi eseményeit jeleníti meg, így a teljes művelet időtartamára vonatkozóan diagnosztizálhatja a kiváltó okot. Válassza ki a leghosszabb időtartamú leggyakoribb példák egyikét.

  9. A gyakori elérésű elérési út kiválasztásával kiemelheti azokat az eseményeket, amelyek a legtöbbet járulnak hozzá a művelet teljes időtartamához. Ebben a példában láthatja, hogy a leglassabb hívás a FabrikamFiberAzureStorage.GetStorageTableData metódusból származik. Az a rész, amely a legtöbb időt veszi igénybe, a CloudTable.CreateIfNotExist módszer. Ha ezt a kódsort minden alkalommal végrehajtja, amikor a függvényt meghívják, a rendszer szükségtelen hálózati hívásokat és CPU-erőforrásokat használ fel. A kód javításának legjobb módja, ha ezt a sort egy olyan indítási metódusba helyezi, amely csak egyszer hajtja végre.

    Képernyőkép a Profiler részleteiről.

  10. A képernyő tetején található teljesítménytipp támogatja azt az értékelést, hogy a túl hosszú időtartam várakozás miatt van. Válassza a várakozási hivatkozást a különböző típusú események értelmezésére vonatkozó dokumentációhoz.

    Képernyőkép egy teljesítménytippről.

  11. További elemzéshez válassza a Nyomkövetés letöltése lehetőséget a nyomkövetés letöltéséhez. Ezeket az adatokat a PerfView használatával tekintheti meg.

Naplóadatok használata kiszolgálóhoz

A naplók gazdag lekérdezési nyelvet biztosítanak, amellyel elemezheti az Application Insights által gyűjtött összes adatot. Ezzel a funkcióval részletes elemzéseket végezhet a kérések és a teljesítményadatok alapján.

  1. Térjen vissza a művelet részletei panelre, és válassza Naplók ikona Nézet a naplókban (Elemzés) lehetőséget.

  2. Megnyílik a Naplók képernyő, amelyen egy lekérdezés látható a panel minden nézetéhez. Ezeket a lekérdezéseket futtathatja alapértelmezetten, vagy módosíthat rajtuk az igényei szerint. Az első lekérdezés megjeleníti ennek a műveletnek a teljes időtartamát.

    Képernyőkép egy napló lekérdezésről.

Lassú ügyfélműveletek azonosítása

Amellett, hogy azonosítja a kiszolgálói folyamatokat az optimalizálás érdekében, az Application Insights az ügyfélböngészők szempontjából is képes elemzést végezni. Ezek az információk segíthetnek azonosítani az ügyfélösszetevők lehetséges fejlesztéseit, és akár a különböző böngészőkkel vagy különböző helyekkel kapcsolatos problémák azonosítását is.

  1. Válassza a Böngésző lehetőséget a Vizsgálat csoportban, majd válassza a Böngésző teljesítménye lehetőséget. Másik lehetőségként válassza a Teljesítmény elemet a Vizsgálat csoportban, és váltson a Böngésző lapra a jobb felső sarokban található Kiszolgáló/Böngésző váltógombbal a böngésző teljesítmény-összegzésének megnyitásához. Ez a nézet az alkalmazás különböző telemetriai adatainak vizuális összegzését tartalmazza a böngésző szemszögéből.

    A Böngésző összegzését bemutató képernyőkép.

  2. Válassza ki a műveletnevek egyikét, válassza a jobb alsó sarokban található Minták gombot, majd válasszon ki egy műveletet. A végpontok közötti tranzakció részletei a jobb oldalon nyílnak meg, ahol megtekintheti az oldalnézet tulajdonságait. Megtekintheti az oldalt kérő ügyfél adatait, beleértve a böngésző típusát és helyét. Ez az információ segítheti abban, hogy megállapítsa, vannak-e az adott ügyféltípusokra jellemző teljesítményproblémák.

    Képernyőkép a Lapnézet tulajdonságairól.

Naplóadatok használata az ügyfélhez

A kiszolgálói teljesítményhez gyűjtött adatokhoz hasonlóan az Application Insights minden ügyféladatot elérhetővé tesz a mély elemzéshez naplók használatával.

  1. Térjen vissza a böngésző összegzéséhez, és válassza Naplók ikon a Megtekintés a naplókban (Elemzés) lehetőséget.

  2. Megnyílik a Naplók képernyő, amelyen egy lekérdezés látható a panel minden nézetéhez. Az első lekérdezés a különböző oldalmegtekintések időtartamát jeleníti meg az idő függvényében.

    Képernyőkép a Naplók képernyőről.