7 nejlepších nástrojů pro monitorování JVM
The Java Virtual Machine (JVM) se stává plodným a možná si neuvědomujete, že jeden provozujete na podporu svých aplikací. Problém s virtuálními stroji je, že jsou izolovány od operačního systému svých hostitelů. Tolik služeb, které používá mnoho monitorovacích nástrojů, nebude fungovat – oddělení platformy blokuje přístup k operačnímu systému .
Aby bylo možné zakrýtVýkon JVM, musí být monitorovací nástroj schopen monitorovat hypervizory. Musí být vyladěn, aby mohl pracovat se zprávami protokolu generovanými JVM, které předávají informace o vnitřních operacích JVM. Monitor také potřebuje prozkoumat černou skříňku virtuálního počítače, aby se ujistil, že jsou splněny všechny požadavky na prostředky JVM.
Zde je náš seznam sedmi nejlepších nástrojů pro monitorování JVM:
- VOLBA REDAKCE AppOptics Poskytuje monitorování infrastruktury a aplikací, které pokrývá všechny možné příčiny problémů s výkonem JVM. Tento nástroj SaaS monitoruje vše od sítě až po efektivitu kódu. Spusťte 14denní bezplatnou zkušební verzi.
- eG Enterprise JVM Monitoring (ZKUŠEBNÍ ZKOUŠKA ZDARMA) Tento monitor Java Virtual Machine je součástí balíčku monitorování hybridního systému, který pokrývá infrastrukturu a aplikace. Běží na Windows Server a Linux, nebo to vezměte jako balíček SaaS. Získejte 30denní bezplatnou zkušební verzi.
- Správce aplikací ManageEngine Tento monitorovací nástroj je velmi silný při sledování rutin JVM sběru odpadků a správy paměti. Instaluje se na Windows Server a Linux.
- Web 24x7 APM Cloudová infrastruktura a monitorování aplikací, které pokrývá operace JVM a výkon všech jeho podpůrných služeb.
- Datadog APM Monitor výkonu aplikace, který je založen na cloudu a implementuje monitorování JVM.
- Sledování sematextu Služba monitorování systému a zabezpečení zaměřená na protokoly, která je dodávána z cloudu a zahrnuje monitorování výkonu JVM.
- Dynatrace Cloudový systémový monitor, který zahrnuje monitorování JVM a jedinečný end-to-end transakční monitor.
JVM není jen pasivní kontejner. Má své vlastní úkoly, aby mohl obsluhovat procesy Java, které hostí. Tyto zahrnují ' sběr odpadků ” který by měl uvolnit prostředky, jakmile s nimi proces Java skončí.
Existuje mnoho různých služeb, které je třeba sledovat, aby JVM fungoval správně, a to zahrnuje příliš mnoho faktorů, než aby je bylo možné sledovat ručně. Jediným řešením úspěšného fungování JVM a služeb a softwaru, které podporuje, je používat automatizovaný monitorovací nástroj JVM .
Sledování výkonu JVM
Systém JVM má vestavěné ovladače pro správa paměti a zdrojů . Bohužel každou událost přístupu ke zdrojům lze spravovat pouze u jednotlivých programů.
Pokud současně běží několik programů Java, mohou zamknout se navzájem – jeden obsahuje zdroj, který druhý potřebuje k dokončení úkolu, zatímco druhý drží jiný zdroj, ke kterému se první program pokouší získat přístup. Žádný program tedy nemůže pokračovat. Takové scénáře jsou zcela běžné v prostředích JVM s ohledem na paměť a databázová připojení.
Příklad problému souvisejícího s databází nastane, když je databáze vytvořena maximální počet připojení . Žádný proces závislý na databázi proto nemůže pokračovat, dokud se nedokončí některý z dalších procesů připojených k databázi. Pokud se procesy připojené k databázi zablokují kvůli problémy s pamětí , všechny Java programy na serveru se zastaví.
Problémy s výkonem Java spadají do pět kategorií :
- Dostupnost paměti
- Přístup k databázi
- Vícevláknové zablokování
- Dostupnost aplikací/služeb
- Problémy se serverem a sítí
Odhalení těchto problémů a řešení takových problémů vyžaduje monitorovací nástroj JVM které mohou pracovat na mnoha úrovních zásobníku současně a neustále zkoumat výkon hardwaru a aplikací.
Nejlepší nástroje pro monitorování JVM
Naše metodika pro výběr monitorovacího systému JVM
Přezkoumali jsme trh s nástroji pro monitorování virtuálních strojů Java a analyzovali možnosti na základě následujících kritérií:
- Možnosti monitorování hypervisoru
- Monitorování podpůrných zdrojů, jako je alokace paměti
- Monitory pro sledování funkcí JVM, jako je například úklid
- Protokolování aktivity
- Živé grafy výkonu
- Bezplatná zkušební verze nebo demo balíček, který umožňuje bezplatné hodnocení
- Hodnota za peníze z nástroje, který pokrývá řadu virtualizačních služeb a také sledování JVM
Pomocí této sady kritérií jsme hledali řadu syntetických monitorovacích služeb s cloudovými i místními možnostmi.
1. AppOptics (ZKUŠEBNÍ ZKOUŠKA ZDARMA)
AppOpticsje cloudová služba, která provozuje monitorování infrastruktury i aplikací. Cloudová služba je nabízena v dva plány , což jsou Infrastruktura a Monitorování výkonu aplikací . Naštěstí pro uživatele JVM obsahuje balíček APM také modul Infrastructure.
Klíčové vlastnosti:
- Cloudové
- Sleduje dostupnost zdrojů
- Sleduje aktivitu hypervizoru
- Monitorování databází a webových aplikací
- Analýza hlavní příčiny
Složitost JVM znamená, že každý základní zdroj, který přispívá k dodání aplikace obsahující Java, musí být monitorován. Plná služba AppOptics pokrývá všechny tyto přispívající zdroje. Boční interakce s jinými aplikacemi jsou také monitorovány AppOptics, protože hlídá výkon databáze a webové aplikační systémy stejně jako hypervizory a Java kód.
I když služba je doručené z cloudu , potřebuje agent nainstalované na každém ze serverů, které hostují vaše implementace JVM. Naštěstí existuje verze agenta pro každý typ serveru, na kterém byste mohli spustit Javu.
Část Infrastruktura balíčku AppOptics monitoruje server a síťové systémy na které se JVM spoléhá. Struktura JVM je také problémem modulu Infrastruktura. Procesy, které implementují JVM, musí být sledovány modulem APM AppOptics. Každý proces běžící v rámci JVM také musí APM sledovat prostřednictvím shromažďování zpráv protokolu JVM. A konečně, všechny ostatní aplikace, ke kterým mají procesy Java v rámci JVM přístup, musí být uloženy špičkový výkon a sledováno APM.
Samotná Java je zabudována do mnoha knihoven služeb pro jiné platformy, včetně .NET, PHP a Pythonu. Mezi procesy Java a jinými aplikacemi existuje neustálá interakce a AppOptics to dokáže sledovat požadavky napříč procesy a identifikovat různá vlákna, která přispívají ke stejnému procesu.
Zatímco každodenní výhoda provozu AppOptics JVM monitoru spočívá v jeho schopnosti převzít všechny úkoly dohledu, je to také užitečný systém pro analýza hlavní příčiny . Mechanismus upozornění v AppOptics znamená, že pracovníci IT mohou předpokládat, že vše běží hladce, pokud jim není oznámeno jinak. Jakmile se objeví problém, specialisté mají podporu AppOptics, která dokáže identifikovat pravděpodobný zdroj problému, ať už jde o pomalou síť nebo chybu v Java skriptu.
Klady:
- Poskytuje možnosti monitorování specifické pro JVM – pokrývající aplikace i infrastrukturu
- Nabízí skvělé vizualizace odrážející živé a historické metriky zdraví a spotřebu zdrojů
- Je snadno škálovatelný, postavený jako cloudová služba
- Poskytuje nástroje pro analýzu hlavních příčin – skvělé pro prostředí s vysokou dostupností
Nevýhody:
- Rád bych viděl delší zkušební dobu pro testování
Atraktivní obrazovky přístrojová deska jsou dobře organizované a podporují podrobná vyšetřování. Konzole je zcela hostována v cloudu, takže k ní lze přistupovat z jakéhokoli standardního prohlížeče. AppOptics si můžete vyzkoušet sami přístupem k a14denní bezplatná zkušební verze.
VÝBĚR REDAKCE
AppOptics je naše nejlepší doporučení pro monitorování JVM, protože pokrývá každou úroveň zásobníku, který přispívá k úspěšným operacím JVM. AppOptics nepřetržitě kontroluje stavy JVM, kód Java, který chrání, procesy, které spouští a jeho Java skripty, vlákna, koordinující aplikace, infrastrukturu a služby. Pouhá jedna chyba v jakémkoliv jednotlivém prvku může zhoršit výkon JVM a to zastaví většinu vašich aktivních aplikací. Upozornění AppOptics odhalí problém dříve, než se stane vážným, a rozbalovací obrazovky na řídicím panelu přesně ukáží, kde leží příčina problému.
Zahájit 14denní bezplatnou zkušební verzi:my.appoptics.com/sign_up
VY:Cloudové
2. eG Enterprise JVM Monitoring (ZKUŠEBNÍ ZKOUŠKA ZDARMA)
eG Enterprise je balíček pro monitorování infrastruktury a aplikací, který je schopen sledovat výkon cloudových i místních systémů. Jednou z aplikací, které je nástroj schopen sledovat, je JVM.
Klíčové vlastnosti:
- Monitorování uživatelské zkušenosti
- Sledování správy paměti JVM
- JVM monitorování sběru odpadu
- Upozornění na problémy s výkonem
The monitorování JVM systém je součástí APM modul eG Enterprise a má základní systém monitorování zdrojů. Aktivita Java vašich aplikací bude využívat systémové prostředky, jako je paměť serveru, a bude také přistupovat k síťovým zařízením, takže monitorování infrastruktury vrstva tohoto balíčku je také nezbytná pro plnou správu JVM. Systém je schopen posoudit poptávku po prostředcích, které pocházejí z instancí JVM a všech ostatních aplikací běžících na stejném hostiteli. Vědět naplno kapacita tohoto serveru umožňuje monitoru identifikovat, kdy je pravděpodobné, že dojde k nedostatku zdrojů. Tento nedostatek kapacity v podpůrných službách zhorší výkon JVM.
Znát Příčina problému s výkonem vašeho systému JVM vám umožní reagovat a vyřešit problém mnohem rychleji, než kdybyste museli začít s vyšetřováním od začátku. Monitor eG Enterprise je schopen předvídat, kdy se zdroje vyčerpají, a upozornit na to. To znamená, že můžete začít zmírnění akce k odvrácení problémů dříve, než si je uživatelé všimnou.
Klady:
- Předpovědi poptávky po zdrojích
- Upozornění na vyvíjející se problémy s výkonem
- Sledování využití paměti JVM
- Kontrola stavu vlákna JVM
Nevýhody:
- Žádný ceník
Služba eG Enterprise je licencována na fyzický server , takže můžete bez dalších nákladů sledovat tolik JVM nebo jiných virtuálních systémů, kolik potřebujete. Můžete se rozhodnout stáhnout software pro eG Enterprise a hostit jej Windows Server nebo Linux . Další možností je přístup k balíčku na jeho platformě SaaS. Můžete získat a30denní bezplatná zkušební verzejak infrastruktury, tak modulů APM eG Enterprise.
eG Enterprise Access 30denní zkušební verze ZDARMA
3. Správce aplikací ManageEngine
Při navrhování jejich modulu monitorování výkonu JVM v Správce aplikací , rozhodl ManageEngine správa paměti byl největší problém. Měli pravdu. Informační dokumenty Applications Manager zdůrazňují, že nástroj pro monitorování JVM se zaměřuje na to, jak JVM spravuje procesy alokace paměti a uvolňování. Využití paměti JVM je mnohem více a Správce aplikací pokrývá všechny tyto problémy.
Klíčové vlastnosti:
- On-premise pro Windows Server a Linux
- Sledování využití paměti
- Monitorování procesu
- Sledování svozu odpadu
Správce aplikací není jen nástroj pro monitorování JVM. Zatímco sleduje výkon JVM, sleduje také další aplikace, na kterých závisí procesy Java, jako jsou databáze a webové aplikace.
Jako správce aplikací sleduje všechny procesy je schopen odhalit jakékoli visící nebo opuštěné procesy a doporučit jejich zabití. Tato ostražitost sama o sobě vyřeší mnoho potenciálních problémů s výkonem, se kterými se může JVM setkat a způsobit selhání jiných aplikací běžících na stejném serveru.
Správce aplikací také monitoruje stavy serveru . Mezi tyto faktory patří celkové využití paměti serveru, dostupnost disku a interakce a aktivita rozhraní. Jediná část zásobník kterou Správce aplikací nepokrývá, je síť. Jeho monitorování rozhraní mu však umožňuje ukázat, kde je problém, pokud síť funguje. Uživatelé budou muset přidat na ManageEngine Na manažera abyste se dostali až k problémům se síťovým zařízením; oba moduly se však integrují.
Klady:
- Nabízí hloubkové monitorování paměti a infrastruktury JVM
- Nabízí on-premise a cloudové možnosti nasazení
- Dokáže zvýraznit vzájemné závislosti mezi aplikacemi a zmapovat, jak mohou problémy s výkonem ovlivnit podnikové operace
- Dokáže automaticky zabíjet nehybné procesy prostřednictvím automatizovaných pracovních postupů a skriptování
Nevýhody:
- Plné prozkoumání všech dostupných funkcí a možností může chvíli trvat
Správce aplikací je k dispozici pro instalaci na Windows Server a Linux . ManageEngine zpřístupňuje balíček pro a 30denní bezplatná zkušební verze .
4. Web24x7 APM
Site24x7 je produktem Společnost Zoho Corp , která také vlastní ManageEngine, takže existuje mnoho podobností mezi Site24x7 APM a ManageEngine Applications Manager. Systém Site24x7 je platforma SaaS a prodává se v modulech. APM je oddělené od systému monitorování infrastruktury platformy. Nicméně zahrnuje monitorování serveru a monitorování sítě, které lze zakoupit jako doplňkovou službu.
Klíčové vlastnosti:
- Hostováno v cloudu
- Monitorování CPU a paměti
- Sledování svozu odpadu
Hlavní zaměření Sledování výkonu JVM v Site24x7 APM se zabývá aktivitami samotného JVM. Metriky kontrolované APM zahrnují využití kapacity procesoru, počet procesů, počet aktivit garbage collection, čas procesu garbage collection a souhrny vláken.
Zaměření na aktivity JVM není neočekávané. Není to však výhradní odpovědnost APM, protože ano sleduje všechny procesy běžící na serveru a současně monitoruje všechny aplikace. Dokáže tedy rozpoznat, když se vyskytnou problémy kapacita databáze . Protože také sleduje celkové stavy serveru, jako je využití disku, dostupnost paměti a kapacita CPU, je schopen vidět jakékoli problémy s výkonem, které by mohly mít dopad na JVM, i když aplikace spouštějící tyto problematické procesy s JVM zcela nesouvisí. To je důležité, protože server, který je docházejí zdroje bude mít vliv na výkon JVM.
Site24x7 APM je velmi silný na výkon webových aplikací a existuje speciální modul pro testování webu, pokud vaše JVM významně přispívá k webu. The Sledování webových stránek modul je schopen integrace s APM. Samostatná implementace APM však některé obsahuje kontroly výkonu webu .
Klady:
- Zaměřuje se na sledování využití disku JVM, paměti, CPU a celkového výkonu
- Nabízí řadu hotových možností monitorování a šablon řídicích panelů
- Umožňuje správcům zobrazit závislosti v zásobníku aplikací, což je dobré pro vytváření smluv SLA a optimalizaci doby provozuschopnosti
- Nabízí analýzu hlavních příčin vylepšenou umělou inteligencí pro rychlejší řešení technických problémů
Nevýhody:
- Site24x7 je platforma bohatá na funkce s možnostmi, které přesahují správu databází, může vyžadovat čas, než se naučíte všechny možnosti a funkce
Systém Site24x7 včetně jeho konzole je hostované v cloudu . Systém však potřebuje místního agenta nainstalovaného na serveru, kde běží JVM. Site24x7 APM je zpoplatněno předplatné s měsíční sazbou za základní balíček a nabídkou doplňků pro vylepšení a přizpůsobení služby konkrétním potřebám. Je k dispozici pro a 30denní bezplatná zkušební verze .
5. Datadog APM
Datadog je cloudová služba která zahrnuje řadu nástrojů pro monitorování IT systémů. Jednou z těchto služeb je Datadog APM, která zahrnuje monitorování výkonu JVM. Řídicí panel pro Datadog je hostován v cloudu a lze k němu přistupovat prostřednictvím jakýkoli standardní prohlížeč . Tento řídicí panel obsahuje obrazovky, které umožňují Sledování výkonu JVM pokrývající řadu důležitých metrik.
Klíčové vlastnosti:
- Cloudové
- Živé sledování výkonu
- Mapování závislostí aplikací
APM neustále monitoruje klíčové statistiky o instancích JVM. Ty se zaměřují na využití zdrojů, zejména paměťovou aktivitu a efektivitu shromažďování odpadků.
Datadog APM měří doby odezvy a procesní činnosti pro všechny aplikace na serveru. Tato služba ukazuje, zda související aplikace fungují špatně. Takové problémy by mohly mít vliv na výkon JVM, zejména pokud tyto aplikace nabízejí služby procesům Java běžícím v JVM. Příkladem takové služby mohou být systémy pro správu databází.
Dashboard Datadog APM propojuje procesy napříč aplikacemi , ukazující vztah mezi nimi a měření výkonu přes tyto hranice.
Klady:
- Zaměřuje se na sledování využití disku JVM, paměti, CPU a celkového výkonu
- Nabízí řadu hotových možností monitorování a šablon řídicích panelů
- Umožňuje správcům zobrazit závislosti v zásobníku aplikací, což je dobré pro vytváření smluv SLA a optimalizaci doby provozuschopnosti
- Nabízí analýzu hlavních příčin vylepšenou umělou inteligencí pro rychlejší řešení technických problémů
Nevýhody:
- Mohlo by se použít delší zkušební období
APM také zkoumá statistiky výkonu serveru. Monitorování serveru lze rozšířit přidáním monitoru infrastruktury. Datadog APM je zpoplatněn u modelu předplatného se sazbou za hostitele za měsíc. Datadog nabízí APM pro 14denní bezplatná zkušební verze .
6. Sledování sematextu
Sematext je cloudová monitorovací služba, která má silné Bezpečnostní monitorování SIEM Vlastnosti. Hlavní strategie Sematextu se točí kolem sběru a analýzy log souboru. Toto je typická metodika pro bezpečnostní informační systémy a systémy pro správu událostí. Přicházejí zprávy protokolu reálný čas a zobrazí se před jejich uložením.
Klíčové vlastnosti:
- Cloudové
- Živé zprávy o transakcích
- Výkonové grafy
Systém Sematext je schopen využít všechny informace obsažené ve zprávách protokolu k vytvoření řady Monitorovací a řídící služby . Jedním z nich je monitor infrastruktury nazývaný Sematext Monitoring a zahrnuje monitorování výkonu JVM. Toto se nazývá Java Profiler.
Sematext Monitoring je schopen shromažďovat statistiky o více než 100 faktorů okolní výkon Java. Většina z nich je k dispozici pro analýzu hlavních příčin. Systém Sematext rozpoznává několik klíčových metrik, které indikují stavy výkonu . Jedná se o využití paměti, aktivitu shromažďování odpadků a data ve vláknech JVM.
Vzhledem k tomu, že Sematext ukládá všechny informace, které shromažďuje, uživatelé se mohou zpětně podívat, aby viděli stejné ukazatele výkonu přesčas . To může být užitečné při pokusu o identifikaci, zda snížení výkonu JVM následuje určitý vzorec a zda existují nějaké problémy související s časem, které způsobují problémy. Sematext Monitoring sleduje všechny ostatní procesy a značky neustálé kontroly na dostupnosti zdrojů serveru.
Klady:
- Může monitorovat prakticky jakékoli prostředí s podporou on-premise, cloudu a hybridních cloudových konfigurací
- Zjišťování aktiv je nepřetržité a poskytuje správci systému trvale aktuální inventář zařízení
- Dodává se s integrovanými nástroji pro odstraňování problémů, jako je profiler Java a mapa topologie sítě
- Může monitorovat externí zdroje, jako jsou webové stránky, a měřit dostupnost, latenci a výkon
Nevýhody:
- Rád bych viděl delší zkušební dobu pro testování
Monitorování sematextu je měřeno , se sazbou nastavenou na agenta pro sběr dat za hodinu a bez dalších poplatků za objemy zpracování dat. K dispozici jsou tři plány: Základní , Standard , a Pro . The Základní plán je zdarma k použití a má limit monitorování pěti hostitelů s dobou uchovávání dat 30 minut. The Standard plán má dobu uchovávání dat jeden měsíc a Pro plán uchovává data po dobu dvou měsíců. Plány Standard a Pro lze vyzkoušet na 14denní bezplatné zkušební verze .
7. Dynatrace
Dynatrace je a na cloudu Monitor výkonu infrastruktury a aplikací, který je zvláště silný při monitorování webu. Moduly pro monitorování APM a Infrastructure jsou spojeny do jednoho balíčku, což je skvělé pro monitorování výkonu JVM.
Klíčové vlastnosti:
- Cloudové
- Vzorkování časových řad
- Sledování transakcí napříč aplikacemi
The Sledování výkonu JVM funkce Dynatrace pokrývají úplný seznam metrik v JVM, který zahrnuje stavy paměti, shromažďování odpadu, požadavky, stavy procesů, doby odezvy, interakce, chybovost a objemy provozu.
Kromě přímého monitorování stavu podle stavu nabízí Dynatrace jedinečné end-to-end transakční sledování cesty . To následuje po každém požadavku a zkoumá každou službu, která přispívá k jeho dodání a plnění. Ve webových implementacích je to zvláště užitečné pro zkoumání toho, jak stavy JVM přispívají k úspěchu nebo selhání této aktivity.
Klady:
- Nabízí podporu pro prostředí JVM včetně řídicích panelů šablon
- Vysoce vizuální a přizpůsobitelné řídicí panely, vynikající pro podnikové NOC
- Funguje v cloudu, což umožňuje, aby byl nezávislý na platformě
- Může monitorovat dobu provozu aplikace i podpůrnou infrastrukturu a uživatelskou zkušenost
Nevýhody:
- Produkt, který je navržen speciálně pro velké sítě, může být pro menší organizace ohromující
Dynatrace si to účtuje Full-stack monitorování službu za předplatné měsíčně. Systém si můžete vyzkoušet na a 15denní bezplatná zkušební verze .
Výběr nástroje pro monitorování JVM
Udržení uspokojivého chodu JVM vyžaduje velmi komplexní nástroj. Samostatný nástroj nebo nástroj příkazového řádku prostě nestačí. Testy musí být běží rekurzivně a monitor musí mít upozornění na prahovou hodnotu stavu na velkém množství zdrojů, aby se předešlo potenciálním problémům s výkonem.
Monitorovací služba, která zahrnuje výstražný mechanismus, je vhodnější než systém, který vyžaduje obsluhu IT technika. Pověřit IT specialistu, aby seděl, prováděl testy a sledoval výsledky plýtvání lidskými zdroji . Techničtí specialisté jsou drazí a obtížně se hledají, takže jejich čas chcete maximálně využít odstraněním všech úkolů, které lze automatizovat. Monitorování JVM a dalších systémových prostředků je velmi dobrým příkladem práce, kterou počítače dělají lépe než lidé.
Musíte najít dobrý monitorovací systém JVM a pokud najdete takový, který se stará o mnoho dalších úkolů v oblasti infrastruktury a monitorování zdrojů, pak jste si ušetřili nějaké peníze.
Časté dotazy k monitorování JVM
Co bych měl sledovat v JVM?
Statistiky výkonu, které se mají shromažďovat při sledování JVM, jsou:
- Hromadná paměť– Paměťový prostor používaný pro aplikace
- Odvoz odpadu (GC)– Čištění přidělené paměti, jakmile již není potřeba – její vrácení k dostupnosti
- Vlákna– Tyto slouží požadavkům uživatelů
Jak mohu monitorovat proces Java?
Provádějte monitorování procesů Java implementací sledování transakcí. Trasování funguje prostřednictvím protokolů a porovnává akce s každým řádkem kódu. To vám umožní vidět vliv procesu Java na dostupnost systémových prostředků.
Co jsou nástroje pro profilování Java?
Java profiler prochází kódem Java a spojuje provádění každého řádku se systémovou aktivitou, jako je paměťová aktivita spouštění vlákna a sběr odpadu.