java агент Инструментальный файл класса не отображается на PCF - PullRequest
0 голосов
/ 11 марта 2020

Нужна помощь.

У нас есть пользовательский java агент, написанный с использованием javaassist, который обрабатывает файл Logger из logback для информационного метода. Агент работает как отдельная программа из командной строки при использовании с параметром -javaagent при запуске целевого приложения / класса. Это также работает, если образец проекта maven создан в Eclipse и выполняется с помощью параметра «Предоставление конфигурации запуска, имеющего -javaagent в конфигурации запуска.

Вызывается Premain - вызывается трансформатор - обрабатывает файл класса - печатает журнал как обновленный с использованием Instrumentation.

При нажатии на PCF : Агент упакован в двоичный файл приложения весенней загрузки, в папке MyApp.jar \ BOOT-INF \ classes \. Это очень простая программа Hello с одним контроллером.

Проблема Предварительный вызов вызывается - преобразователь вызывается - обрабатывает файл класса, Однако не печатает журнал как обновленный с использованием инструментария .

Нужна ли нам какая-либо конкретная c конфигурация, чтобы вернуть этот инструментированный файл обратно в PCF?

Оценить ваши входные данные / запросы.

Вот манифест.yml

приложения: - имя: KedarTestApp память: 2G диск_квота: 1G экземпляров: 1 путь: target / Hello-0.0.1-SNAPSHOT.jar env: SPRING_PROFILES_ACTIVE: "dev" JAVA_OPTS: -javaagent: BOOT-INF / classes / Agent .jar

Dev Env : JDK8, WIndows 10, ср. версия 6.26, ср. cli

1 Ответ

0 голосов
/ 13 апреля 2020

Публикация на случай, если кому-то понадобится справка :)

Если библиотека инструментов не находится на пути к классам - PCF не будет показывать ошибку / предупреждение, но также не будет инструктировать ваши классы.

Библиотеки инструментов будут частью вашего бинарного файла, но не загружаются, когда PCF запускает приложение с org.springframework.boot.loader.JarLauncher.

Вам нужно будет указать путь к библиотекам инструментов как часть - Аргумент cp в команде вашего манифеста: опция.

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