Обзор Probekit

Probekit - это среда на основе платформы Eclipse, с помощью которой можно создавать датчики и работать с ними. Датчики - это фрагменты кода Java™, которые можно вставлять в программу для получения сведения о программе в ходе ее выполнения.

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

Датчики задаются с помощью записей, создаваемых в редакторе Probekit. Данный пример состоит из одного фрагмента; фрагменты определяют назначение датчика. В состав определения фрагмента входит следующая информация:

В редакторе Probekit датчик выглядит следующим образом:

Редактор Probekit, в котором показаны записи простого датчика, приведенного в разделе справки в качестве примера.

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

Ниже приведены инструкции по созданию датчиков и работе с ними. Кроме того, приведена информация об эффективной работе со средой Probekit:
  1. Редактор Probekit позволяет создавать датчики в исходных файлах Probekit. Исходные файлы Probekit имеют расширение .probe. Они могут содержать один или несколько датчиков, каждый из которых может содержать один или несколько фрагментов датчика.
  2. Среда Probekit собирает фрагменты датчиков в набор методов Java с их последующей компиляцией. В процессе компиляции датчика среда Probekit объединяет отдельные фрагменты с заготовками кода Java и создает исходный код Java для нового класса датчика. Созданные из фрагментов датчика функции отображаются как статические методы нового класса датчика.
  3. Применение датчика предусматривает указание целевого класса, а также файлов jar, которые нужно исследовать. При этом служба BCI сверяется со списком доступных датчиков и их целевыми шаблонами и встраивает вызовы методов фрагментов датчиков в целевые программы. Процесс встраивания операторов вызова в целевые методы называется также инструментацией. Класс, содержащий такой метод называется изучаемым классом. Элементы данных, необходимые для фрагментов датчика (например, имя метода и имя класса), передаются в виде аргументов.
  4. После того как инструментарий добавит датчики в программу, датчики начинают выполняться вместе с ней.
Момент запуска фрагмента определяется типом фрагмента датчика. Вы можете указать тип датчика, позволяющий запустить его в одном из следующих случаев:

Датчики могут получать различную информацию о состоянии приложения на те моменты времени, в которые они срабатывают. Например:

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

Связанные концепции
Работа с датчиками
Датчики метода и датчика вызова
Связанные справочники
Примеры Probekit