A következőkben a performancia problémák analizálásához kapcsolódó dynaTrace-es dashboard-okat fogom bemutatni. Az analizálást sok hasznos feature is segíti, ilyen például a dashboardok közötti átnavigálhatóság, a hotspotok azonnali kijelzése vagy az időablak széleskörű állíthatósága.
PurePaths
PurePaths
A PurePath-ok minden egyes kérésnek a teljes végrehajtási útvonalát tartalmazzák, (beleértve az RMI, WebService, JMS, EJB hívásokat) kontextus információkkal kiegészítve (naplók, kivételek, metódus argumentumok). Az alábbi példánál a kijelölt PurePath hívási láncán és a jobb oldali HotSpots panelon is könnyen beazonosítható, hogy a teljes végrehajtási időért a validateCreditCardNumber(String,int) metódus volt a felelős! Gondoljunk csak bele, hogy egy nagyobb rendszer esetén ezt mennyi idő lett volna megállapítani a hagyományos módszerek segítségével...
WebRequests
A WebRequests nézetnél megtekinthető, hogy milyen egyedi webes kérések (URI+Query String) érkeztek a kiválasztott időintervallumban. Ahogy a cikk elején említettem innen tovább fúrhatunk bármilyen irányba.
MethodHotspots
A method hotspots nézetből megtudhatjuk, hogy a kijelölt időszakban mely metódusok futása tartott a legtovább. Ez a nézet kiválóan alkalmas arra, hogy beazonosítsuk azokat a metódusokat amelyeken érdemes lesz optimalizálni. Ha további infóra lenne szükségünk, lefúrhatunk azokhoz a PurePath-okhoz is ahol a kiválasztott metódus meghívásra került.
Methods
A metódus nézetnél többek között kideríthetjük, hogy melyik metódus hívódott meg a legtöbbször, mennyi volt a metódusok átlagos végrehajtási ideje vagy hogy összesen mennyi időt vett igénybe a végrehajtásuk.
WebServices, Messaging
A Web szolgáltatásokról és a Messaging-ről is begyűjthetünk néhány információt az ezekhez tartozó dashboard-oknál vagy a lefúrások során.
Logging, Exceptions
Az előbbiekhez hasonlóan a PurePath-okból kiindulva vagy az időablakra való szűkítéssel megnézhetjük a napló üzeneteket és a keletkezett kivételeket is. Feliratkozhatunk egy-egy számunkra érdekes kivételre, majd lefúrhatunk azokhoz a PurePath-okhoz ahol ez előfordult. Érdemes megemlíteni, hogy az alkalmazás belső működéséhez tartozó kivételek is kijelzésre kerülnek, de ezeket mint Business Exception-öket el tudjuk rejteni.
Transaction Flow
A Transaction Flow nézetből megtudhatjuk, hogy a PurePath-ok honnan indultak ki, milyen alrendszereken haladtak keresztül és hogy hol mennyi időt töltöttek el, azaz beazonosíthatjuk azokat a rendszereket amik a belassulásokért felelősek.
Nagyvállalati környezetben legtöbbször nincs a teljes rendszerre kiterjedő architekturális leírás, hiányosan vagy egyáltalán nincsenek ledokumentálva az alkalmazások közötti kapcsolatok és függőségek. Valószínűleg költséges lenne, de gondoljunk bele ha az összes rendszerre feltelepítenénk a dynaTrace ágenseit, a Transaction Flow segítségével automatikusan feltérképezhetnénk a rendszer teljes architektúráját. Sőt! Mivel a feltérképezés folyamatos, mindig naprakészek információink is lennének.
Annak ellenére hogy csak a fontosabb lehetőségekre tértem ki, így a cikk végére azt hiszem már körvonalazódik hogy mire is képes a dynaTrace. A folytatásban a dynaTrace-es performancia monitorozásról fogok blogolni.
A method hotspots nézetből megtudhatjuk, hogy a kijelölt időszakban mely metódusok futása tartott a legtovább. Ez a nézet kiválóan alkalmas arra, hogy beazonosítsuk azokat a metódusokat amelyeken érdemes lesz optimalizálni. Ha további infóra lenne szükségünk, lefúrhatunk azokhoz a PurePath-okhoz is ahol a kiválasztott metódus meghívásra került.
Methods
A metódus nézetnél többek között kideríthetjük, hogy melyik metódus hívódott meg a legtöbbször, mennyi volt a metódusok átlagos végrehajtási ideje vagy hogy összesen mennyi időt vett igénybe a végrehajtásuk.
WebServices, Messaging
A Web szolgáltatásokról és a Messaging-ről is begyűjthetünk néhány információt az ezekhez tartozó dashboard-oknál vagy a lefúrások során.
Logging, Exceptions
Az előbbiekhez hasonlóan a PurePath-okból kiindulva vagy az időablakra való szűkítéssel megnézhetjük a napló üzeneteket és a keletkezett kivételeket is. Feliratkozhatunk egy-egy számunkra érdekes kivételre, majd lefúrhatunk azokhoz a PurePath-okhoz ahol ez előfordult. Érdemes megemlíteni, hogy az alkalmazás belső működéséhez tartozó kivételek is kijelzésre kerülnek, de ezeket mint Business Exception-öket el tudjuk rejteni.
Transaction Flow
A Transaction Flow nézetből megtudhatjuk, hogy a PurePath-ok honnan indultak ki, milyen alrendszereken haladtak keresztül és hogy hol mennyi időt töltöttek el, azaz beazonosíthatjuk azokat a rendszereket amik a belassulásokért felelősek.
Nagyvállalati környezetben legtöbbször nincs a teljes rendszerre kiterjedő architekturális leírás, hiányosan vagy egyáltalán nincsenek ledokumentálva az alkalmazások közötti kapcsolatok és függőségek. Valószínűleg költséges lenne, de gondoljunk bele ha az összes rendszerre feltelepítenénk a dynaTrace ágenseit, a Transaction Flow segítségével automatikusan feltérképezhetnénk a rendszer teljes architektúráját. Sőt! Mivel a feltérképezés folyamatos, mindig naprakészek információink is lennének.
Annak ellenére hogy csak a fontosabb lehetőségekre tértem ki, így a cikk végére azt hiszem már körvonalazódik hogy mire is képes a dynaTrace. A folytatásban a dynaTrace-es performancia monitorozásról fogok blogolni.
Nincsenek megjegyzések:
Megjegyzés küldése
Megjegyzés: Megjegyzéseket csak a blog tagjai írhatnak a blogba.