Ресурсы профилирования

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

Проекты и папки

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

По умолчанию эти объекты не отображаются в панели. Сделать их видимыми можно из окна Параметры (Окно > Параметры > Профилирование и протокол > Вид), выключив переключатель Папки.

Мониторы

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

Мониторы представлены объектами монитора. По умолчанию эти объекты не отображаются в панели. Для того чтобы отобразить объекты монитора, выберите Распределенное размещение в панели инструментов Монитора профилирования.

Хосты

Хост значок хоста - это компьютер, на котором находится отлаживаемое приложение.Профилируемое приложение принадлежит хосту. Процессы также запускаются хостом. Хост можно указывать по имени или по IP-адресу.

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

По умолчанию эти объекты не отображаются в панели. Для того чтобы отобразить объекты монитора, выберите Распределенное размещение в панели инструментов Монитора профилирования.

Процессы

Объект процесса представляет профилируемое приложение.

Процессы определяются по имени или по ИД. Имя процесса зависит от способа его запуска:

  1. Если процесс запущен из рабочей среды, то его имя будет классом Java. Например:
          HelloWorld [PID:3048]
  2. Если процесс уже работает и вы к нему подключаетесь, то имя процесса будет либо java, если это Java-процесс, либо имя образа процесса. Пример:
        java [PID:168]
        NewProcess.exe [PID:346]

Процессы и связанные агенты появляются в панели Монитор профилирования после запуска профилирования приложения.

Агенты значок завершенного агента значок приостановленного агента значок отключенного агента значок наблюдающего агента

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

Агент профилирования Java запускает процесс JVM (виртуальной машины Java) и получает уведомления событий JVM на основе JVMPI (Интерфейс классификатора виртуальной машины Java). Этот агент очень удобен для получения подробной информации о производительности, например, о классах или методах, понижающих производительность при выполнении. Кроме того, агент профилирования Java используется для анализа кучи приложений, а также для поиска утечек памяти.

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

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

Состояние агента обозначается следующими символами:

символ приостановки Приостановленный
Агент запущен (работает), но мониторинг не ведется (сбор данных приостановлен).
символ мониторинга Мониторинг
Агент запущен, мониторинг ведется.  Каждый раз, когда агент получает данные из приложения, рядом с именем агента появляется слово "...сбор".
символ завершения Завершен
Агент завершил работу. Если это агент профилирования, отображающий время жизни процесса, то этот символ означает, что приложение завершилось, и агент либо завершил работу, либо выгружен из памяти.
символ отключения Отключен
Процесс работает, но текущий клиент рабочей среды к агенту не подключен. Любая рабочая среда может подключиться к этому агенту и начать мониторинг приложения. Если при отключенном агенте процесс завершил работу, то состояние агента в завершенное не перейдет.

Профайлы значок завершенного агента значок приостановленного агента значок отключенного агента

Набор профилирования - это набор критериев, по которым собираются данные профилирования. Наборы профилирования позволяют конкретизировать собираемую информацию. В утилите профилирования предусмотрены три набора:

Символ утечки памятиАнализ памяти
Создает дамп кучи и выполняет анализ памяти.
символ анализа времени выполненияАнализ времени
Ведет хронологию выполнения кода.
символ завершенияОхват кода
Собирает информацию об охвате исходного кода.

Связанные концепции
Обзор утилиты профилирования

Связанные задачи
Профилирование приложения
Использование панели Монитор профилирования