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

Важно!

Поддержка этой версии Operations Manager прекращена. Рекомендуем перейти на Operations Manager 2019.This version of Operations Manager has reached the end of support, we recommend you to upgrade to Operations Manager 2019.

Служба наблюдения за производительностью приложений Java в System Center Operations Manager дает вам возможность наблюдать за приложениями Java, получая сведения о производительности приложений и событиях исключений, способные помочь определить первопричины проблем.Java Application Performance Monitoring (APM) in System Center - Operations Manager lets you monitor Java applications to get details about application performance and exception events that can help you determine the root causes of problems. Пакет управления System Center для наблюдения за производительностью приложений Java позволяет вести мониторинг производительности приложений Java и событий исключений с помощью советника по приложениям Operations Manager.The System Center Management Pack for Java Application Performance Monitoring lets you monitor Java application performance and exception events by using Operations Manager Application Advisor. С помощью советника по приложениям Operations Manager можно изучить график задействования методов и ресурсов в событиях производительности, исследовать трассировки стека в событиях исключений, просмотреть связанные с событиями счетчики Java (например, "Среднее время запроса", "Запросов в секунду", "Память JVM" и "Загрузчик классов"), а также создать некоторые стандартные отчеты APM.With Operations Manager Application Advisor, you can investigate method and resource timing for performance events, stack traces for exception events, Java-specific counters for events (such as Average Request Time, Requests Per Second, JVM Memory, and Class Loader), and run some of the standard Application Performance Monitoring reports. Кроме того, для счетчиков сервера приложений Java действует уровень предупреждений Operations Manager.Additionally, you get Operations Manager level alerting on Java application server counters. Загрузите пакет управления для мониторинга производительности приложений Java из Центра загрузки Майкрософт.Download the Management Pack for Java Application Performance Monitoring from the Microsoft Download Center.

Мониторинг производительности приложений (APM) Java имеет много общих концепций с мониторингом производительности приложений .NET.Java Application Performance Monitoring shares many concepts with .NET Application Performance Monitoring. Тем не менее между ними есть ряд важных различий, в том числе следующие: иерархия объектов, метод для работы с переопределениями и оповещениями (в APM Java отсутствует шаблон создания и настройки, поэтому конфигурации меняются с помощью переопределений пакета управления), кроме того, в отчетах APM Java не обрабатывается информация серверного уровня.However, there are some important differences, including: object hierarchy, the method for working with overrides and alerting (Java Application Performance Monitoring has no authoring and configuration template, so you change configurations with management pack overrides), and sever-level information is not handled in Java Application Performance Monitoring reports.

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

Пакет управления для APM Java требует наличия ОС Windows Server 2012 R2 и Operations Manager.The Management Pack for Java Application Performance Monitoring requires Windows Server 2012 R2 and Operations Manager.

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

  • Tomcat 5, Tomcat 6 и Tomcat 7Tomcat 5, Tomcat 6, and Tomcat 7

    • WindowsWindows

    • LinuxLinux

  • Java JDK 5, Java JDK 6Java JDK 5, Java JDK 6

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

    • GenericServletGenericServlet

    • StrutsStruts

    • Struts2Struts2

    • Axis2Axis2

Предварительные условияPrerequisites

Чтобы запустить пакет управления для мониторинга производительности приложений Java, требуется настроить пакет управления для Java Enterprise Edition (JEE) для сложного мониторинга.To run the Management Pack for Java Application Performance Monitoring, you must have the Management Pack for Java Enterprise Edition (JEE) configured for deep monitoring. Данный пакет управления наблюдает за серверами приложений JEE и предоставляет функции исходного обнаружения на уровне приложений.This management pack monitors JEE application servers and provides initial application level discovery. Дополнительные сведения см. в статье How to Configure Monitoring for Java Applications и в руководстве по пакету управления для JEE для вашего конкретного сервера приложений, которое доступно в Центра загрузки Майкрософт.For more information, see How to Configure Monitoring for Java Applications and the Management Pack Guide for JEE for your particular type of application server, available on the Microsoft Download Center.

Мониторинг приложений JavaHow to monitor Java applications

Прежде чем поэтапно вертикально увеличивать масштаб развертывания с новым приложением Java, о котором вы еще собираете сведения, вы можете использовать службу мониторинга производительности приложений Java, чтобы получить базовые показатели приложения.When you have a new Java application that you are learning about, you use Java Application Performance Monitoring to get baseline measures before you gradually scale up deployment. Ниже приведены некоторые начальные параметры, которые помогут получить нужные знания о новом приложении.Here are some settings to start with that helps you get to know your new application. Кроме того, рекомендуется начинать мониторинг в среде тестирования или разработки для определения базовой конфигурации перед реализацией в рабочей среде.In addition, it is ideal that you begin monitoring in a test or development environment to establish a baseline configuration before implementing in production.

Параметры мониторинга для нового приложенияMonitoring settings for a new application

Следуя данным рекомендациям по мониторингу нового приложения Java, вы сможете узнать, как ведет себя приложение в вашей среде и в средах ваших клиентов.Following this strategy for monitoring a new Java application will help you get to know how the application behaves within your environment and for your customer.

Начните мониторинг с простой системы и краткосрочных параметровStart monitoring with a simple monitored system and short-term settings

Прежде всего, не усложняйте конфигурацию: выполняйте мониторинг одного приложения на одном сервере.First, keep the configuration simple: monitor one application on one server. Во-вторых, при первой настройке мониторинга производительности приложений Java для нового приложения, планируйте использовать внедряемые параметры в течение периода, необходимого для выявления некоторых трендов.Second, when you first configure Java Application Performance Monitoring to monitor a new application, plan to keep the settings you implement long enough for you to understand some trends. Суточные данные должны дать вам достаточно сведений для понимания производительности и тенденций использования приложения.A day's worth of data should provide you with insight into the performance and usage patterns of the application.

Определение базового уровня производительности с использованием параметров по умолчанию и некоторых индивидуальных параметровEstablish baseline performance using default settings and some specific settings

Как правило, рекомендуется использовать параметры по умолчанию.Usually, you will want to keep default settings. Параметры по умолчанию позволят вам видеть все крупные проблемы с приложением, при этом влияние мониторинга на приложение сведется к минимуму.The default settings ensure that you will see any large issues with the application and keep the impact on the monitored application at a minimum.

Если вы не получаете событий исключений или производительности, можно использовать следующую процедуру, чтобы понять, как выглядит базовая производительность.If you are not getting any performance or exception events raised, you can use the following steps to get a feel for what the baseline performance looks like.

Чтобы начать мониторинг, вы можете выполнить изменение следующих параметров:To begin monitoring, here are some settings you might want to adjust as noted here:

  • Снизьте пороги производительности.Lower the thresholds for performance. Этот параметр позволит вам установить базовые показатели производительности, замерив текущие характеристики производительности приложения.This helps you establish a baseline performance measure by seeing what the current performance characteristics of the application are. Дополнительные сведения о порогах производительности см. в разделе How to Configure Monitoring for Java Applications.For more information about performance thresholds, see How to Configure Monitoring for Java Applications.

  • Изучите все исключения.Examine all exceptions. Вам необходимо знать виды возникающих исключений.You need to know what kinds of exceptions are being thrown. Применение обработчиков известных исключений позволяет ограничить количество исключений, которое вы будете получать.Using known exception handlers limits the exceptions you will receive.

Это может выразиться в большом объеме данных — чрезмерном для долгосрочного мониторинга.This can result in signifcant data, more than you would want for long-term monitoring. Однако сначала такой объем данных будет полезен, так как он покажет тренды, например пути следования клиентов в системе, а также позволит узнать, как выглядит нормальная производительность.Initially, this amount of data will be helpful as you will see trends, such as the kinds of paths customers are taking through the system and what normal performance looks like.

По завершении сбора данных используйте отчеты Application Advisor, такие как "Анализ производительности приложения", чтобы увидеть состояние наблюдаемых приложений.With the data collection complete, use the Application Advisor reports, such as Application Performance Analysis, to see how the monitored applications are looking. Отчет позволит вам узнать, какова средняя длительность самых "тяжелых" (долгосрочных) вызовов системы, а также определить максимальное время, затраченное на обработку запросов.Using the report you will see what the average duration is for the heaviest (longest running) calls through the system as well as the maximum amount of time spent processing requests. Это даст вам возможность установить индивидуальные пороги на основании реальной производительности приложения.This allows you to set customized smart thresholds based on real application performance. Вы также увидите, какие функции работают быстрее, чем другие, и сможете создать индивидуальные транзакции веб-страниц, веб-методов или функций для критически важных методов, чтобы обеспечить их реагирование в рамках более строгого (по сравнению с остальным приложением) соглашения об уровне обслуживания.You will also see which functions are running faster than others, and you can create specific web page, web method, and function transactions for the critical methods so that you can ensure they are responding under a tighter SLA than the application as a whole. Дополнительные сведения о просмотре отчетов см. в инструкциях по созданию отчета Application Advisor и настройке его охвата в разделе Prioritizing Alerts by Using Application Advisor.For more information on viewing reports, see how to scope and run an Application Advisor report in Prioritizing Alerts by Using Application Advisor.

Изменение параметров и сравнение с базовыми показателямиAdjust settings and compare to the baseline

Установив базовый показатель производительности, начинайте тонкую настройку параметров мониторинга, которая позволит ему регистрировать все виды возникающих исключений.Once you have established a baseline performance measure, begin to adjust the settings to tune the monitoring so it catches the kinds of exceptions that are being raised. Фиксируя все исключения, вы увидите, имеются ли в приложении стандартные обработчики исключений, регистрирующие исключения, о которых вы бы предпочли бы получать оповещения.By reporting all exceptions, you will see if there are any default exception handlers in the application that are catching exceptions for which you would prefer receiving alerts. С каждой регулировкой объем полученных вами данных будет уменьшаться и они будут становиться более информативными.The data you get will be more meaningful and lower in volume with each adjustment.

  • Удалите пользовательские параметры и установите пороги на основании собранных данных.Remove the custom settings and set thresholds based on the data collected.

  • Добавьте обработчики исключений для обработчиков всех событий приложения, предотвращающих выход исключений за пределы приложения.Add exception handlers for any application level "catch all" handlers that keep exceptions from going outside the application.

  • Добавьте специализированные транзакции для мониторинга производительности общих методов, которые должны использовать более строгое соглашение об уровне обслуживания, чем само приложение.Add specialized transactions to monitor the performance of common methods that should be held to a stronger SLA than the application as a whole.

Сравните новые данные со своими базовыми показателями.Compare the new data to your baseline. К примеру, это позволит вам увидеть реальное среднее время ответа.You will begin to see the real average response time, for instance. Теперь, когда вы узнали, какие исключения производительности отправляет приложение, вы можете добавить нужные вам определенные пространства имен, вместо того чтобы вести мониторинг всех пространств имен.Now that you know the various performance exceptions the application is sending, you can add the specific namespaces you want rather than monitoring all namespaces. Настройка мониторинга приложения будет выполнена на основании зафиксированных уровней производительности и вы получите оповещение, если показатели выйдут за пределы обычного диапазона.Your application will be configured to be monitored based on the observed performance levels and will be alerted if things move outside of normal levels.

Поэтапное развертывание приложения на другие наблюдаемые серверыGradually deploy the application to more monitored servers

По прошествии некоторого периода мониторинга приложения с применением новой конфигурации, как только вы посчитаете его работоспособным, увеличьте количество серверов развертывания приложения, к примеру, от одного до 10.After monitoring the application for a time with the new monitoring configuration, when you feel your application is healthy, increase the number of servers you are running the application on and monitoring from one to 10, for example. Как только оно покажет себя работоспособным на этом новом уровне, расширьте развертывание и мониторинг на еще большее количество серверов, и т. д.Once you have it running healthy at that level, increase the deployment and monitoring to more servers, and so on. Такой подход постепенного развертывания поможет вам получить уверенность в мониторинге приложения и гарантировать работоспособность вашей системы.This gradual rollout approach will help you gain confidence in the monitoring for that application and help ensure the health of your system.

Полезность данной информации для оператораWhat the operator can do with this information

Используя эту базовую информацию, оператор может определить, где находится неполадка в приложении или инфраструктуре, а также понять, находится ли ее устранение в компетенции отдела разработки или она может быть исправлена самим оператором.Using this basic information, the operator can have a better idea where the problem is with the application or with the infrastructure and know whether it is something only to the development team can fix or the operator can address directly.

Дальнейшие действияNext steps

Подробные сведения о настройке мониторинга приложений Java см. в разделе Настройка мониторинга приложений Java.For details about configuring monitoring of Java applications, see How to Configure Monitoring for Java Applications.