Интегрировать newrelic в проект Flink Scala

Я хочу интегрировать newrelic в свой проект flink. Я загрузил свой файл newrelic.yml из своей учетной записи и изменил только имя приложения. Я создал папку с именем newrelic в корневой папке моего проекта и поместил в нее файл newrelic.yml.

Я также поместил следующую зависимость в мой файл buld.sbt:

"com.newrelic.agent.java" % "newrelic-api" % "3.0.0"

Я использую следующую команду для запуска моей банки:

flink run -m yarn-cluster -yn 2 -c Main /home/hadoop/test-assembly-0.2.jar

Я предполагаю, что мой код не может прочитать мой файл newrelic.yml, потому что я не вижу имя моего приложения в newrelic. Нужно ли инициализировать newrelic агента где-нибудь (если да, то как?). Пожалуйста, помогите мне с этой интеграцией.

1 ответ

Вам нужно только чтобы файлы newrelic.jar и newrelic.yml были доступны и имели -javaagent:path/to/newrelic.jar передан в JVM в качестве аргумента. Вы можете попробовать поместить как newrelic.jar, так и newrelic.yml в каталог lib /, чтобы они скопировались в менеджеры заданий и задач, а затем добавить это в ваш conf / flink-conf.yaml:

env.java.opts: -javaagent:lib/newrelic.jar

Оба файла New Relic должны находиться в одном каталоге, и вы должны иметь возможность удалить строку New Relic из файла build.sbt. Также дважды проверьте, что ваш лицензионный ключ находится в файле newrelic.yml.

Я не проверял это, но главная цель - чтобы.yml и.jar были доступны в одном и том же каталоге (yml может перейти в другой каталог, но другие параметры JVM должны быть переданы для ссылки на него) и для передачи -javaagent:path/to/newrelic.jar в качестве аргумента JVM. Если у вас возникнут проблемы, попробуйте проверить наличие новых журналов реликвий в папке журналов каталога, в котором находится.jar.

Другие вопросы по тегам