Teljesítményproblémák keresése és diagnosztizálása az Application Insightsban
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 kiváltó 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.
Válassza ki az Application Insights elemet, majd az előfizetését.
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.
A Teljesítmény képernyőn az alkalmazás egyes műveleteinek száma és átlagos időtartama látható. Ezekkel az információkkal azonosíthatja a felhasználókat leginkább érintő műveleteket. 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 nevezték őket, így a fejlesztésük hatása minimális lenne.
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űveleteket úgy, hogy kitűzi őket a gráfra. A grafikonon látható, hogy vannak olyan csúcsok, amelyeket érdemes megvizsgálni. A további elkülönítésük érdekében csökkentse a gráf időablakát.
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 Top 3 Dependencies insights 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.
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öljön ki egy elemet a listában a jobb oldalon lévő részletek megtekintéséhez.
A Profiler segít továbbjutni a kódszintű diagnosztikában a művelethez futtatott tényleges kód és az egyes lépésekhez szükséges idő megjelenítésével. 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.
A nyomkövetés az egyes műveletek egyedi eseményeit jeleníti meg, hogy diagnosztizálhassa a teljes művelet időtartamának kiváltó okát. Válassza ki a leghosszabb időtartamú példák egyikét.
Válassza a Gyakori elérésű elérési út lehetőséget a művelet teljes időtartamához leginkább hozzájáruló események adott útvonalának kiemeléséhez. 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, aCloudTable.CreateIfNotExist
metódus. Ha ezt a kódsort minden alkalommal végrehajtja a rendszer, 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 fut.A képernyő tetején található teljesítménytipp támogatja azt az értékelést, hogy a túl hosszú időtartam a 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.
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 a 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ést végezhet a kérések és a teljesítményadatok alapján.
Térjen vissza a művelet részletei panelre, és válassza a Nézet a Naplókban (Elemzések) lehetőséget.
Ekkor megnyílik a Naplók képernyő, amelyen a panelen található összes nézethez tartozik lekérdezés. 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.
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.
Válassza a Böngésző lehetőséget a Vizsgálat területen, 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 lehetőséget a Vizsgálat területen, é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 vizuálisan összefoglalja az alkalmazás különböző telemetriáit a böngésző szemszögéből.
Válasszon ki egy műveletnevet, kattintson a jobb alsó sarokban található Minták gombra, 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.
Naplóadatok használata az ügyfélhez
A kiszolgáló teljesítményéhez gyűjtött adatokhoz hasonlóan az Application Insights a naplók használatával minden ügyféladatot elérhetővé tesz a mély elemzéshez.
Térjen vissza a böngésző összegzéséhez, és válassza a Nézet a Naplókban (Elemzések) lehetőséget.
Ekkor megnyílik a Naplók képernyő, amelyen a panelen található összes nézethez tartozik lekérdezés. Az első lekérdezés a különböző oldalmegtekintések időtartamát jeleníti meg az idő függvényében.