Rozwiązanie Compuware dynatrace
COMPUWARE DYNATRACE... 3 2
COMPUWARE DYNATRACE Narzędzie Compuware dynatrace oparte jest o unikatową technologię agentową, która pozwala na dogłębną analizę stanu aplikacji działających w ramach maszyn wirtualnych Java (JVM Java Virtual Machine) lub.net (CLR Common Language Runtime). Maszyny wirtualne tworzą w systemie operacyjnych gospodarza (host operating system) zamknięte środowisko, które staje się platformą działania dla wykorzystujących je aplikacji. Z perspektywy systemu operacyjnego maszyna wirtualna widziana jest tak jak każdy inny proces ma przydzieloną pamięd, wykonuje operacje dyskowe i utylizuje procesor. W przypadku pojawienia się problemów wydajnościowych z tego typu aplikacjami, klasyczny monitoring serwerowy nie będzie w stanie wskazad przyczyny problemu. Spowodowane jest to tym, że perspektywa zewnętrzna nie daje wglądu w to, co dzieje się wewnątrz maszyny wirtualnej. Powyższe problemy rozwiązuje narzędzie Compuware dynatrace. Jest ono dedykowane do działania wewnątrz maszyn wirtualnych Java lub CLR (.NET), przez co zapewnia pełen wgląd w działanie aplikacji w nich osadzonych. Wyspecjalizowany bardzo lekki agent (instalowany na maszynie na której działa aplikacja Java lub.net) pozwala na uzyskanie informacji typu: Jakie metody są wywoływane w ramach monitorowanej aplikacji Java/.NET? Jaki jest czas wywołania poszczególnych metod Java/.NET? Gdzie znajduje się wąskie gardło aplikacji Java/.NET? Jakie zapytania SQL generowane są przez aplikację Java/.NET i jaki jest czas ich wykonania? Czy aplikacja Java/.NET nie zawiera przecieków pamięci, które powodowad mogą, że przestaje one nagle działad? Jakie błędy i związane z nimi wyjątki pojawiły się w czasie działania aplikacji? Powyższe informacje zapewniają bardzo szczegółowy wgląd w działanie aplikacji Java/.NET pozwalają identyfikowad elementy aplikacji (do poziomu metody i zapytania SQL) niespełniające założeo wydajnościowych. W odróżnieniu od tradycyjnych rozwiązao tego typu, Compuware dynatrace oparte jest o opatentowaną technologię PurePath (w dosłownym tłumaczeniu Czysta Ścieżka ). Dzięki niej narzędzie Compuware dynatrace jest w stanie przechowywad informacje na temat wszystkich transakcji wszystkich użytkowników koocowych przechodzących przez wszystkie warstwy monitorowanej usługi. Unikatowośd technologii PurePath polega na tym, iż zebrane w ten sposób informacje nie są w żaden sposób uśredniane przechowywane są informacje o każdej pojedynczej transakcji nawet w bardzo dużych środowiskach produkcyjnych (do 35 miliardów pomiarów dziennie). 3
Ta unikatowa funkcjonalnośd pozwala na uzyskanie zupełnie nowej jakości danych biznesowych, operacyjnych, testowych i developerskich. Wykorzystanie funkcjonalności analizy każdej pojedynczej transakcji oferowanej przez rozwiązanie Compuware dynatrace pozwala na jego wykorzystanie w okresie całego życia aplikacji od jej rozwoju, przez testy aż do monitorowania produkcyjnego. Dlatego stworzono 3 różne edycje rozwiązania: produkcyjną, testową i developerską wszystkie zawierające dedykowane dla danej grupy odbiorców pluginy, dashboardy oraz zestawy menu, jednakże wszystkie oparte o wiodącą technologię PurePath. Zawarte w rozwiązaniu moduł analityczny oraz silnik raportowy oparty o mechanizm dashboardów udostępniają poszczególnym odbiorcom następujące informacje: Właściciele biznesowi uzyskują rzetelne, nieuśrednione dane związane z realizacją SLA dotyczących kluczowych transakcji biznesowych z podziałem na ruch syntetyczny i ruch rzeczywisty, typ klienta koocowego, jego lokalizację geograficzną czy też parametry biznesowe transakcji 4
Dział utrzymania uzyskuje narzędzie do szybkiej analizy źródeł problemów, która oparta jest o odpowiednio skorelowane informacje z wszystkich warstw usługi aplikacyjnej: o Warstwy aplikacyjnej pełne ścieżki przebiegu transakcji i pomiar czasu z poziomu kodu o Warstwy serwera aplikacyjnego i warstwy JVM/CLR metryki związane z Garbage Collector, heap (stertą), CPU, JMX/PMI, WMI o Warstwy wirtualnego systemu operacyjnego (jeśli stosowne) o Warstwy systemu operacyjnego gospodarza i sprzętu Obecni klienci Compuware dynatrace przyznają, iż dzięki wykorzystaniu tego narzędzia czas rozwiązania problemów wydajnościowych zmniejszył się nawet o 90%. 5
Architekci rozwiązao uzyskują automatycznie generowane diagramy sekwencyjne UML, dzięki którym są w stanie weryfikowad rzeczywisty przepływ informacji pomiędzy poszczególnymi komponentami usług aplikacyjnych Testerzy otrzymują informacje na temat problemów z działaniem aplikacji w czasie wykonywania testów wydajnościowych. Dane taki w postaci plików zawierających pojedyncze ścieżki mogą byd następnie przekazane programistom, którzy przeglądad je mogą w darmowym programie typu viewer. Program ten pozwala m.in. na odegranie zapisanej ścieżki, dzięki czemu programista otrzymuje narzędzie, pozwalające mu na szybkie znalezienie źródła problemu i jego rozwiązanie Programiści analizowad mogą wąskie gardła, wycieki pamięci czy zasobożerne kawałki kodu już na etapie tworzenia aplikacji, dzięki czemu uniknąd można wielu przykrych niespodzianek wydajnościowych po wdrożeniu produkcyjnym Agenci Compuware dynatrace, dzięki którym możliwe jest uzyskanie wyspecyfikowanych powyżej informacji, wykorzystują mechanizm tzw. sensorów. Sensory są automatycznie umieszczane przez agentów w logicznych miejscach aplikacji bez potrzeby zmiany jej kodu źródłowego. Sensory te uczą się aplikacji poprzez śledzenie transakcji przez wszystkie warstwy aplikacyjne, co pozwala efektywnie monitorowad złożone, wielowarstwowe aplikacje bez potrzeby wcześniejszego poznawania ich wewnętrznej architektury i konfigurowania rozwiązania Compuware dynatrace. Dane, które uzyskiwane są dzięki wykorzystaniu sensorów to nie tylko pomiary czasów, ale też kontekst z poziomu kodu od nazwy metody i argumentów jej wywołania, po wyjątki i logi. Informacje te uzyskiwane mogą byd nie tylko z poziomu kontrolowanego kodu aplikacyjnego, ale również z poziomu kodu bibliotek firm trzecich czy też (dzięki mechanizmowi wtyczek) z poziomu innych niż Java/.NET natywnych środowisk aplikacyjnych (np. C, C++, mainframe). Bardzo ważnym aspektem rozwiązao agentowych tego typu jest ich wpływ na działanie monitorowanej aplikacji. Rozwiązanie powinno zapewniad minimalny narzut na zasoby systemowe oraz nie rywalizowad o zasoby maszyny wirtualnej z monitorowaną aplikacją. Aby spełnid te wymagania agent Compuware dynatrace wprowadza maksymalnie 2% dodatkowego obciążenia systemu w trybie pracy pozwalającym na monitoring wszystkich pojedynczych transakcji. Więcej informacji na temat produktu Compuware dynatrace znaleźd można na stronach internetowych www.dynatrace.com. 6