Поделиться через


Мониторинг приложений Java

Мониторинг производительности приложений Java (APM) в System Center - Operations Manager позволяет отслеживать Java-приложения для получения сведений о производительности приложений и о событиях исключений, которые могут помочь определить первопричины проблем. Пакет управления System Center для Мониторинга производительности Java-приложений позволяет отслеживать производительность Java-приложений и события исключений с помощью консультанта по приложениям Operations Manager. С помощью Operations Manager Application Advisor вы можете исследовать время выполнения методов и ресурсов для событий производительности, трассировки стека для событий исключений, специфичные для Java счетчики событий (например, среднее время запроса, запросы в секунду, память JVM и загрузчик классов), а также запускать некоторые стандартные отчеты Мониторинга производительности приложений. Кроме того, вы получите оповещения на уровне Operations Manager на счетчиках сервера приложений Java. Загрузите пакет управления для мониторинга производительности приложений Java из Центра загрузки Майкрософт.

Мониторинг производительности приложений (APM) Java имеет много общих концепций с мониторингом производительности приложений .NET. Однако существуют некоторые важные различия, в том числе: иерархия объектов, метод работы с переопределениями и оповещениями (система мониторинга производительности приложений Java не имеет шаблона разработки и конфигурации, поэтому вы изменяете конфигурации с помощью переопределений пакетов управления), а информация на серверном уровне не учитывается в отчетах системы мониторинга производительности приложений Java.

Поддерживаемые конфигурации

Пакет управления для APM Java требует наличия ОС Windows Server подходящей версии и Operations Manager.

Поддерживаемые конфигурации.

  • Tomcat 5, Tomcat 6 и Tomcat 7

    • Виндоус

    • Линукс

  • Java JDK 5, Java JDK 6

  • Веб-технологии

    • GenericServlet

    • Струтс

    • Struts2

    • Axis2

Предварительные требования

Чтобы запустить пакет управления для мониторинга производительности приложений Java, требуется настроить пакет управления для Java Enterprise Edition (JEE) для сложного мониторинга. Данный пакет управления наблюдает за серверами приложений JEE и предоставляет функции исходного обнаружения на уровне приложений. Дополнительные сведения см. в разделе "Настройка мониторинга для приложений Java" и руководства по пакету управления для JEE для конкретного типа сервера приложений, доступных в Центре загрузки Майкрософт.

Мониторинг приложений Java

Когда вы изучаете новое приложение на Java, используйте Мониторинг производительности приложений Java для получения начальных показателей, прежде чем постепенно увеличивать развертывание. Ниже приведены некоторые параметры, которые помогут вам узнать о новом приложении. Кроме того, рекомендуется начать мониторинг в тестовой или среде разработки, чтобы установить базовую конфигурацию перед реализацией в рабочей среде.

Параметры мониторинга для нового приложения

Следуя этой стратегии мониторинга нового приложения Java, вы узнаете, как приложение работает в вашей среде и для вашего клиента.

Запуск мониторинга с помощью простой системы мониторинга и краткосрочных настроек

Прежде всего, не усложняйте конфигурацию: выполняйте мониторинг одного приложения на одном сервере. Во-вторых, при первой настройке мониторинга производительности приложений Java для нового приложения, планируйте использовать внедряемые параметры в течение периода, необходимого для выявления некоторых трендов. Данные, собранные за день, должны дать вам понимание производительности и закономерностей использования приложения.

Настройка базовой производительности с помощью параметров по умолчанию и некоторых конкретных параметров

Как правило, вы хотите сохранить параметры по умолчанию. Параметры по умолчанию гарантируют, что вы увидите любые крупные проблемы с приложением и сведете влияние на отслеживаемое приложение до минимума.

Если вы не получаете никаких событий производительности или исключений, вы можете выполнить следующие действия, чтобы получить представление о том, как выглядит базовая производительность.

Чтобы начать мониторинг, вы можете выполнить изменение следующих параметров:

  • Снизьте пороги производительности. Это помогает установить базовую меру производительности, просмотрив текущие характеристики производительности приложения. Дополнительные сведения о порогах производительности см. в разделе How to Configure Monitoring for Java Applications.

  • Изучите все исключения. Вам необходимо знать, какие виды исключений возникают. Использование известных обработчиков исключений ограничивает полученные исключения.

Это может привести к получению значительных объемов данных, превышающих те, которые вы бы хотели для долгосрочного мониторинга. Изначально этот объем данных будет полезным, так как вы увидите тенденции, такие как типы путей, которые клиенты принимают через систему, и как выглядит нормальная производительность.

По завершении сбора данных используйте отчеты Application Advisor, такие как "Анализ производительности приложения", чтобы увидеть состояние наблюдаемых приложений. Используя отчет, вы увидите, какая средняя длительность составляет самые тяжелые (самые длительные) вызовы через систему, а также максимальное время, затраченное на обработку запросов. Это даст вам возможность установить индивидуальные пороги на основании реальной производительности приложения. Вы также увидите, какие функции выполняются быстрее, чем другие, и вы можете создавать определенные веб-страницы, веб-методы и транзакции функций для критически важных методов, чтобы обеспечить их реагирование в более жестком уровне обслуживания, чем приложение в целом. Дополнительные сведения о просмотре отчетов см. в инструкциях по созданию отчета Application Advisor и настройке его охвата в разделе Prioritizing Alerts by Using Application Advisor.

Настройка параметров и сравнение базовых показателей

После установки базовой меры производительности начните настраивать параметры для настройки мониторинга таким образом, чтобы он перехватывал типы создаваемых исключений. Сообщая обо всех исключениях, вы увидите, есть ли обработчики исключений по умолчанию в приложении, для которых вы предпочитаете получать оповещения. С каждой регулировкой объем полученных вами данных будет уменьшаться и они будут становиться более информативными.

  • Удалите пользовательские параметры и установите пороги на основании собранных данных.

  • Добавьте обработчики исключений для любых обработчиков уровня приложения "catch all", которые предотвращают выход исключений за пределы приложения.

  • Добавьте специализированные транзакции для мониторинга производительности общих методов, которые должны использовать более строгое соглашение об уровне обслуживания, чем само приложение.

Сравните новые данные со своими базовыми показателями. Например, вы начнете видеть среднее время отклика в реальном времени. Теперь, когда вы узнали, какие исключения производительности отправляет приложение, вы можете добавить нужные вам определенные пространства имен, вместо того чтобы вести мониторинг всех пространств имен. Настройка мониторинга приложения будет выполнена на основании зафиксированных уровней производительности и вы получите оповещение, если показатели выйдут за пределы обычного диапазона.

Постепенное развертывание приложения на более отслеживаемых серверах

После мониторинга приложения в течение некоторого времени с новой конфигурацией мониторинга, когда вы чувствуете, что ваше приложение работоспособно, увеличьте количество серверов, на которых выполняется приложение, и мониторинг с одного до 10, например. Как только оно покажет себя работоспособным на этом новом уровне, расширьте развертывание и мониторинг на еще большее количество серверов, и т. д. Такой подход постепенного развертывания поможет вам получить уверенность в мониторинге приложения и гарантировать работоспособность вашей системы.

Что может сделать оператор с этой информацией

Используя эти основные сведения, оператор может иметь лучшее представление о том, где проблема связана с приложением или инфраструктурой, и знать, может ли это только команда разработчиков исправить, или оператор может решить напрямую.

Следующие шаги

Дополнительные сведения о настройке мониторинга приложений Java см. в статье "Настройка мониторинга для приложений Java".