7 най-добри инструмента за наблюдение на JVM
The Java виртуална машина (JVM) става плодотворен и може да не осъзнаете, че използвате такъв, за да поддържате вашите приложения. Проблемът с виртуалните машини е, че те се държат изолирани от операционната система на своите хостове. Толкова много от услугите, които използват много инструменти за мониторинг, няма да работят – отделянето на платформата блокира достъпа до операционната система .
За да покриеПроизводителност на JVM, инструментът за наблюдение трябва да може да наблюдава хипервайзори. Той трябва да бъде настроен, за да работи с регистрационните съобщения, генерирани от JVM, които предават информацията за вътрешните операции на JVM. Мониторът също така трябва да проучи черната кутия на VM, за да се увери, че всички изисквания за ресурсите на JVM са изпълнени.
Ето нашия списък със седемте най-добри инструмента за наблюдение на JVM:
- AppOptics ИЗБОР НА РЕДАКТОРА Осигурява мониторинг на инфраструктура и приложения, който обхваща всички възможни причини за проблеми с производителността на JVM. Този SaaS инструмент наблюдава всичко от мрежата до ефективността на кода. Започнете 14-дневен безплатен пробен период.
- eG Enterprise JVM мониторинг (БЕЗПЛАТНА ПРОБНА ВЕРСИЯ) Този монитор за виртуална машина на Java е част от пакет за мониторинг на хибридна система, който обхваща инфраструктура и приложения. Работи на Windows Server и Linux или го приемете като SaaS пакет. Достъп до 30-дневен безплатен пробен период.
- Мениджър на приложения на ManageEngine Този инструмент за наблюдение е много силен при проследяване на JVM процедури за събиране на отпадъци и управление на паметта. Инсталира се на Windows Server и Linux.
- Site24x7 APM Облачно базирана инфраструктура и монитор на приложения, който обхваща операциите на JVM и производителността на всички поддържащи услуги.
- Datadog APM Монитор на производителността на приложението, който е базиран в облака и прилага JVM мониторинг.
- Мониторинг на сематекст Система, центрирана в регистрационния файл и услуга за мониторинг на сигурността, която се доставя от облака и включва мониторинг на производителността на JVM.
- Dynatrace Облачно базиран системен монитор, който включва JVM мониторинг и уникален монитор за транзакции от край до край.
JVM не е просто пасивен контейнер. Той има свои собствени задачи за изпълнение, за да обслужва Java процесите, които хоства. Те включват „ събиране на боклук ”, който трябва да освободи ресурси, след като Java процес приключи с тях.
Има много различни услуги, които трябва да се проследяват, за да може JVM да работи правилно, и това включва твърде много фактори за ръчно проследяване. Единственото решение за успешната работа на JVM и услугите и софтуера, които поддържа, е използването автоматизиран инструмент за наблюдение на JVM .
Мониторинг на ефективността на JVM
JVM системата има вградени манипулатори за управление на паметта и ресурсите . За съжаление, всяко събитие за достъп до ресурс може да се управлява само на база програма по програма.
Ако няколко Java програми работят едновременно, те могат заключете един друг – единият притежава ресурс, от който другият се нуждае, за да изпълни задача, докато другият държи различен ресурс, до който първата програма се опитва да получи достъп. Така че нито една програма не може да напредне. Такива сценарии са доста често срещани в JVM среди по отношение на паметта и връзките към базата данни.
Пример за проблем, свързан с базата данни, възниква, когато базата данни е установена максимален брой връзки . Следователно нито един зависим от базата данни процес не може да продължи, докато не завърши някой от другите процеси, свързани с базата данни. Ако процесите, свързани с базата данни, висят поради проблеми с паметта , всички Java програми на сървъра ще спрат.
Проблемите с производителността на Java попадат в пет категории :
- Наличност на паметта
- Достъп до база данни
- Многопоточни блокировки
- Наличност на приложения/услуги
- Проблеми със сървъра и мрежата
Забелязването на тези проблеми и разрешаването им изисква инструмент за наблюдение на JVM които могат да работят на много нива на стека едновременно и да проверяват постоянно производителността на хардуера и приложенията.
Най-добрите JVM инструменти за наблюдение
Нашата методология за избор на JVM система за мониторинг
Прегледахме пазара за инструменти за наблюдение на виртуални машини на Java и анализирахме опциите въз основа на следните критерии:
- Възможности за наблюдение на хипервайзор
- Мониторинг на поддържащи ресурси, като разпределение на паметта
- Монитори за проследяване на JVM функции, като събиране на боклук
- Регистриране на активността
- Графики за представяне на живо
- Безплатна пробна версия или демо пакет, който позволява безплатна оценка
- Стойност за парите от инструмент, който покрива набор от услуги за виртуализация, както и JVM проследяване
Използвайки този набор от критерии, потърсихме набор от синтетични услуги за наблюдение с опции както за облак, така и за локални опции.
1. AppOptics (БЕЗПЛАТНА ПРОБНА ВЕРСИЯ)
AppOpticsе услуга, базирана на облак, която управлява както инфраструктура, така и мониторинг на приложения. Облачната услуга се предлага в два плана , които са Инфраструктура и Мониторинг на производителността на приложението . За щастие, за потребителите на JVM, пакетът APM включва и модула Infrastructure.
Основни функции:
- Базиран на облак
- Следи наличността на ресурсите
- Проследява активността на хипервайзора
- Мониторинг на бази данни и уеб приложения
- Анализ на първопричините
Сложността на JVM означава, че всеки основен ресурс, който допринася за доставката на приложение, съдържащо Java, трябва да бъде наблюдаван. Пълната услуга AppOptics обхваща всички тези допринасящи ресурси. Страничните взаимодействия с други приложения също се наблюдават от AppOptics, тъй като той наблюдава производителност на базата данни и системи за уеб приложения както и хипервайзори и Java код.
Въпреки че услугата е доставено от облака , има нужда агент инсталиран на всеки от сървърите, които хостват вашите JVM реализации. За щастие има версия на агент за всеки тип сървър, на който можете да стартирате Java.
Инфраструктурната част на пакета AppOptics наблюдава сървъра и мрежовите системи на които разчита JVM. Структурата на JVM също е проблем за модула Infrastructure. Процесите, които внедряват JVM, трябва да се проследяват от APM модула на AppOptics. Всеки процес, изпълняван в рамките на JVM, също трябва да бъде проследен от APM чрез събиране на JVM регистрационни съобщения. И накрая, всички останали приложения, до които Java процесите в рамките на JVM имат достъп, трябва да се съхраняват върхова производителност и наблюдаван от APM.
Самата Java е вградена в много библиотеки за услуги за други платформи, включително .NET, PHP и Python. Има постоянно взаимодействие между процесите на Java и други приложения и AppOptics може заявки за проследяване между процесите и идентифициране на различни нишки, които допринасят за един и същ процес.
Докато ежедневната полза от работата на AppOptics JVM монитора се крие в способността му да поема всички задачи за надзор, той също е полезна система за анализ на първопричините . Механизъм за предупреждение в AppOptics означава, че ИТ персоналът може да приеме, че всичко върви гладко, освен ако не бъде уведомен за друго. След като възникне проблем, специалистите имат подкрепата на AppOptics, която може да идентифицира вероятния източник на проблема, било то бавна мрежа или грешка в Java скрипт.
Професионалисти:
- Предоставя специфични за JVM опции за наблюдение – обхващащи както приложения, така и инфраструктура
- Предлага страхотни визуализации, отразяващи живи и исторически здравни показатели и потребление на ресурси
- Лесно мащабируем, изграден като облачна услуга
- Осигурява инструменти за анализ на първопричината – страхотни за среди с високо време на работа
Минуси:
- Бих искал да видя по-дълъг пробен период за тестване
Атрактивните екрани на табло са добре организирани и насърчават задълбочени разследвания. Конзолата е изцяло хоствана в облака, така че може да бъде достъпна от всеки стандартен браузър. Можете сами да изпробвате AppOptics, като отворите a14-дневен безплатен пробен период.
ИЗБОР НА РЕДАКТОРИТЕ
AppOptics е нашата основна препоръка за мониторинг на JVM, тъй като обхваща всяко ниво на стека, което допринася за успешни JVM операции. AppOptics извършва непрекъснати проверки на статусите на JVM, Java кода, който защитава, процесите, които той и неговите Java скриптове стартират, нишки, координиращи приложения, инфраструктура и услуги. Само един отказ във всеки отделен елемент може да наруши производителността на JVM и това ще спре повечето от вашите активни приложения. Предупрежденията на AppOptics забелязват проблема, преди да стане сериозен, а екраните за детайлизиране на таблото за управление показват точно къде се крие причината за проблема.
Стартирайте 14-дневен безплатен пробен период:my.appoptics.com/sign_up
ВИЕ:Базиран на облак
2. eG Enterprise JVM мониторинг (БЕЗПЛАТНА ПРОБНА ВЕРСИЯ)
eG Enterprise е пакет за мониторинг на инфраструктура и приложения, който е в състояние да проследява производителността както на облачни, така и на локални системи. Едно от приложенията, които инструментът може да проследява, е JVM.
Основни функции:
- Мониторинг на потребителското изживяване
- JVM проследяване на управлението на паметта
- JVM мониторинг на събирането на боклука
- Сигнали за проблеми с производителността
The JVM мониторинг системата е част от APM модул на eG Enterprise и има основна система за мониторинг на ресурсите. Дейността на Java на вашите приложения ще използва системни ресурси, като памет на сървъра, и също ще има достъп до мрежови съоръжения, така че мониторинг на инфраструктурата слой на този пакет също е от съществено значение за пълно управление на JVM. Системата е в състояние да оцени търсенето на ресурси, което идва от JVM екземпляри и всички други приложения, работещи на същия хост. Познавайки пълното капацитет на този сървър позволява на монитора да идентифицира кога има вероятност ресурсите да свършат. Тази липса на капацитет в поддържащите услуги ще наруши производителността на JVM.
Познавайки първопричина на проблем с производителността на вашата JVM система ви позволява да реагирате и да коригирате проблема много по-бързо, отколкото ако трябва да започнете разследването си от нулата. Мониторът на eG Enterprise е в състояние да предвиди кога ресурсите ще свършат и да подаде сигнал. Това означава, че можете да започнете своя смекчаване действия за предотвратяване на проблеми, преди те да станат забележими за потребителите.
Професионалисти:
- Прогнози за търсене на ресурси
- Сигнали за развиващи се проблеми с производителността
- Проследяване на използването на JVM памет
- Проверка на състоянието на JVM нишка
Минуси:
- Няма ценова листа
Услугата eG Enterprise е лицензирана на физически сървър , така че можете да наблюдавате толкова JVM или други виртуални системи, колкото са ви необходими, без допълнителни разходи. Можете да изберете да изтеглите софтуера за eG Enterprise и да го хоствате на Windows сървър или Linux . Друга възможност е да получите достъп до пакета на неговата SaaS платформа. Можете да получите a30-дневен безплатен пробен периодна инфраструктурните и APM модулите на eG Enterprise.
eG Enterprise Access 30-дневен БЕЗПЛАТЕН пробен период
3. Мениджър на приложения на ManageEngine
При проектирането на техния модул за наблюдение на ефективността на JVM в Мениджър на приложения , ManageEngine реши това управление на паметта беше най-големият проблем. Бяха прави. Информационните документи на Мениджъра на приложения подчертават, че инструментът за наблюдение на JVM се фокусира върху това как JVM управлява разпределението на паметта и процесите на освобождаване. Има много повече за използването на паметта на JVM и Мениджърът на приложения покрива всички тези проблеми.
Основни функции:
- Локално за Windows Server и Linux
- Мониторинг на използването на паметта
- Мониторинг на процесите
- Проследяване на събирането на боклук
Мениджърът на приложения не е просто инструмент за наблюдение на JVM. Докато проследява производителността на JVM, той също така наблюдава онези други приложения, на които Java процесите разчитат, като бази данни и уеб приложения.
Като мениджър на приложения наблюдава всички процеси , той е в състояние да забележи всички висящи или изоставени процеси и да препоръча те да бъдат унищожени. Тази бдителност сама по себе си ще реши много от потенциалните проблеми с производителността, които JVM може да изпита и да доведе до отказ на други приложения, работещи на същия сървър.
Мениджърът на приложения също следи състояния на сървъра . Тези фактори включват цялостно използване на паметта на сървъра, наличност на диска и взаимодействия и активност на интерфейса. Единствената част от стека която Мениджърът на приложения не покрива е мрежата. Въпреки това, неговият мониторинг на интерфейсите му позволява да покаже къде е проблемът, ако мрежата работи. Потребителите ще трябва да добавят ManageEngine На мениджъра за да пробиете целия път до проблеми с мрежовите устройства; обаче двата модула се интегрират.
Професионалисти:
- Предлага задълбочено JVM памет и наблюдение на инфраструктурата
- Предлага опции за локално и облачно внедряване
- Може да подчертае взаимозависимостите между приложенията, за да начертае как проблемите с производителността могат да повлияят на бизнес операциите
- Може автоматично да убива висящи процеси чрез автоматизирани работни потоци и скриптове
Минуси:
- Може да отнеме време, за да проучите напълно всички налични функции и опции
Мениджърът на приложения е достъпен за инсталиране Windows сървър и Linux . ManageEngine прави пакета достъпен за a 30-дневен безплатен пробен период .
4. Site24x7 APM
Site24x7 е продукт на Zoho Corp , който също притежава ManageEngine, така че има много прилики между Site24x7 APM и ManageEngine Applications Manager. Системата Site24x7 е SaaS платформа и се продава на модули. APM е отделен от системата за мониторинг на инфраструктурата на платформата. Въпреки това включва мониторинг на сървъра и наблюдение на мрежата, които могат да бъдат закупени като допълнителна услуга.
Основни функции:
- Хоствано в облак
- Мониторинг на процесора и паметта
- Проследяване на събирането на боклука
Основният фокус на Мониторинг на ефективността на JVM в Site24x7 APM разглежда дейностите на самата JVM. Метриките, проверени от APM, включват използване на капацитета на процесора, брой процеси, брой дейности по събиране на боклук, време на процеса на събиране на боклук и обобщения на нишки.
Фокусът върху дейностите на JVM не е неочакван. Това обаче не е единствената отговорност на APM, защото проследява всички процеси, изпълнявани на сървъра и едновременно следи всички приложения. Така че може да забележи, когато има проблеми с капацитет на база данни . Тъй като той също така проследява цялостните състояния на сървъра, като използване на диск, наличност на памет и капацитет на процесора, той може да види всички проблеми с производителността, които могат да повлияят на JVM, дори ако приложенията, стартиращи тези проблемни процеси, са напълно несвързани с JVM. Това е важно, тъй като сървър, който е изчерпване на ресурсите ще повлияе на производителността на JVM.
Site24x7 APM е много силен по отношение на производителността на уеб приложенията и има специализиран модул за уеб тестване, ако вашата JVM допринася значително за уебсайт. The Мониторинг на уебсайтове модулът може да се интегрира с APM. Въпреки това, самостоятелната реализация на APM включва някои проверки на уеб ефективността .
Професионалисти:
- Фокусира се върху наблюдението на използването на JVM диск, паметта, процесора и цялостната производителност
- Предлага множество готови опции за наблюдение и шаблони за табло
- Позволява на администраторите да преглеждат зависимости в стека на приложението, което е добро за изграждане на SLA и оптимизиране на времето за работа
- Предлага анализ на първопричината, подобрен от AI за по-бързо отстраняване на технически проблеми
Минуси:
- Site24x7 е богата на функции платформа с опции, които надхвърлят управлението на бази данни, може да изисква време за изучаване на всички опции и функции
Системата на Site24x7, включително нейната конзола, е хостван в облака . Системата обаче се нуждае от агент на място, инсталиран на сървъра, където работи JVM. Site24x7 APM се таксува от абонамент с месечна тарифа за основния пакет и меню от добавки за подобряване и приспособяване на услугата към специфични нужди. Предлага се за а 30-дневен безплатен пробен период .
5. Datadog APM
Datadog е облачна услуга който включва набор от инструменти за мониторинг на ИТ системи. Една от тези услуги е Datadog APM, която включва мониторинг на ефективността на JVM. Таблото за Datadog се хоства в облака и може да бъде достъпно чрез всеки стандартен браузър . Това табло включва екрани, които позволяват Мониторинг на ефективността на JVM обхващащи набор от важни показатели.
Основни функции:
- Базиран на облак
- Проследяване на представянето на живо
- Картографиране на зависимостта на приложението
APM постоянно наблюдава ключови статистики относно екземплярите на JVM. Те се фокусират върху използването на ресурси, по-специално върху активността на паметта и ефективността на събирането на боклука.
Datadog APM мерки времена за реакция и процесни дейности за всички приложения на сървъра. Тази услуга показва дали свързаните приложения се представят зле. Такива проблеми могат да имат ефект върху производителността на JVM, особено ако тези приложения предлагат услуги на Java процеси, изпълнявани в JVM. Пример за такава услуга са системите за управление на бази данни.
Таблото за управление на Datadog APM свързва процесите в различни приложения , посочвайки връзката между тях и измервайки ефективността през тези граници.
Професионалисти:
- Фокусира се върху наблюдението на използването на JVM диск, паметта, процесора и цялостната производителност
- Предлага множество готови опции за наблюдение и шаблони за табло
- Позволява на администраторите да преглеждат зависимости в стека на приложението, което е добро за изграждане на SLA и оптимизиране на времето за работа
- Предлага анализ на първопричината, подобрен от AI за по-бързо отстраняване на технически проблеми
Минуси:
- Може да се използва по-дълъг пробен период
APM също проверява статистическите данни за ефективността на сървъра. Наблюдението на сървъра може да бъде подобрено чрез добавяне на монитора на инфраструктурата. Datadog APM се таксува при абонаментен модел със ставка на хост на месец. Datadog предлага APM за 14-дневен безплатен пробен период .
6. Мониторинг на сематекст
Sematext е услуга за мониторинг, базирана на облак, която има силна SIEM мониторинг на сигурността особеност. Основната стратегия на Sematext се върти около събирането и анализа на лог файлове. Това е типична методология за системи за управление на информация за сигурност и събития. Съобщенията в регистрационния файл пристигат реално време и се показват преди да бъдат картотекирани.
Основни функции:
- Базиран на облак
- Отчети за транзакции на живо
- Графики на ефективността
Системата Sematext е в състояние да използва цялата информация, съдържаща се в регистрационните съобщения, за да създаде набор от услуги за наблюдение и управление . Един от тях е инфраструктурен монитор, наречен Sematext Monitoring и включва мониторинг на ефективността на JVM. Това се нарича Java Profiler.
Sematext Monitoring е в състояние да събира статистически данни за повече от 100 фактора околна производителност на Java. Повечето от тях са достъпни за анализ на първопричината. Системата Sematext разпознава няколко ключови показателя, които показват състояния на изпълнение . Това са използване на памет, дейност по събиране на боклук и данни за JVM нишки.
Тъй като Sematext съхранява цялата информация, която събира, потребителите могат да проверят отново, за да видят същите показатели за ефективност с течение на времето . Това може да бъде полезно, когато се опитвате да идентифицирате дали влошаването на производителността на JVM следва модел и дали има проблеми, свързани с времето, които причиняват проблеми. Sematext Monitoring наблюдава всички други процеси и прави постоянни проверки относно наличността на ресурсите на сървъра.
Професионалисти:
- Може да наблюдава почти всяка среда, като поддържа локални, облачни и хибридни облачни конфигурации
- Откриването на активи е непрекъснато, осигурявайки на системния администратор постоянно актуален списък на устройствата
- Предлага се с вградени инструменти за отстраняване на неизправности, като Java Profiler и карта на мрежовата топология
- Може да наблюдава външни активи, като например уебсайтове, за измерване на времето за работа, латентност и производителност
Минуси:
- Бих искал да видя по-дълъг пробен период за тестване
Наблюдението на сематекста е дозирано , със зададена тарифа за агент за събиране на данни на час и без допълнителни такси за обемите на обработка на данни. Налични са три плана: Основен , Стандартен , и Професионалист . The Основен планът е безплатно за използване и има ограничение за наблюдение на пет хоста с период на задържане на данни от 30 минути. The Стандартен планът има период на съхранение на данни от един месец и Професионалист планът запазва данните за два месеца. Плановете Standard и Pro могат да бъдат изпробвани 14-дневни безплатни пробни периоди .
7. Dynatrace
Dynatrace е a базиран на облак монитор на производителността на инфраструктурата и приложенията, който е особено силен при уеб наблюдение. Модулите за наблюдение на APM и инфраструктурата са обединени в един пакет, който е чудесен за наблюдение на производителността на JVM.
Основни функции:
- Базиран на облак
- Извадка от времеви редове
- Проследяване на транзакции между приложения
The Мониторинг на ефективността на JVM Характеристиките на Dynatrace покриват изчерпателен списък от показатели в JVM, който включва състояния на паметта, събиране на отпадъци, заявка, състояния на процеси, времена за реакция, взаимодействия, нива на грешки и обеми на трафик.
Освен директен мониторинг на статус по статус, Dynatrace предлага уникален монитор за пътуване от край до край . Това следва всяка заявка и разглежда всяка услуга, която допринася за нейната доставка и изпълнение. При уеб реализации това е особено полезно, за да се изследва как статусите на JVM допринасят за успеха или провала на тази дейност.
Професионалисти:
- Предлага поддръжка за JVM среди, включително табла за управление на шаблони
- Силно визуални и адаптивни табла за управление, отлични за корпоративни NOC
- Работи в облака, което му позволява да бъде независим от платформата
- Може да наблюдава времето за работа на приложението, както и поддържащата инфраструктура и потребителското изживяване
Минуси:
- Създаден специално за големи мрежи, по-малките организации могат да намерят продукта непосилен
Dynatrace таксува за своите Мониторинг на пълен стек обслужване по абонаментна цена на месец. Можете да изпитате системата на a 15-дневен безплатен пробен период .
Избор на инструмент за наблюдение на JVM
Поддържането на задоволителна работа на JVM изисква много изчерпателен инструмент. Самостоятелна помощна програма или помощна програма за команден ред просто не е достатъчно добра. Тестовете трябва да бъдат изпълнява рекурсивно и мониторът трябва да има сигнали за праг на състояние върху голям брой ресурси, за да предотврати потенциални проблеми с производителността.
Услуга за наблюдение, която включва механизъм за предупреждение, е за предпочитане пред система, която трябва да се обслужва от ИТ техник. Да натовариш ИТ специалист да седне и да проведе тестове и да следи за резултатите е загуба на човешки ресурси . Техническите специалисти са скъпи и трудни за намиране, така че искате да се възползвате максимално от времето им, като премахнете всяка задача, която може да бъде автоматизирана. Мониторингът на JVM и други системни ресурси е много добър пример за работата, която компютрите вършат по-добре от хората.
Трябва да намерите добра JVM система за мониторинг и ако можете да намерите такъв, който се грижи за много други задачи за наблюдение на инфраструктурата и ресурсите, тогава сте си спестили малко пари.
ЧЗВ за наблюдение на JVM
Какво трябва да наблюдавам в JVM?
Статистическите данни за ефективността, които трябва да се събират при гледане на JVM, са:
- Куп памет– Пространството в паметта, използвано за приложения
- Събиране на отпадъци (GC)– Почистването на разпределената памет, след като вече не е необходимо – връщането й към наличност
- нишки– Те обслужват потребителски заявки
Как да наблюдавам Java процес?
Извършване на мониторинг на процеси на Java чрез прилагане на проследяване на транзакции. Проследяването работи чрез регистрационни файлове, сравнявайки действията с всеки ред код. Това ви позволява да видите влиянието на Java процес върху наличността на системни ресурси.
Какво представляват инструментите за профилиране на Java?
Профилът на java преминава през кода на Java и свързва изпълнението на всеки ред със системната активност, като активност на паметта за изпълнение на нишка и събиране на боклук.