在flink scala项目中集成newrelic

vaj7vani  于 2021-06-21  发布在  Flink
关注(0)|答案(1)|浏览(422)

我想在我的flink项目中集成newrelic。我已经从我的帐户下载了newrelic.yml文件,只更改了应用程序名称,并且在我的项目根文件夹中创建了一个名为newrelic的文件夹,并将newrelic.yml文件放在其中。
我还在buld.sbt文件中放置了以下依赖项:

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

我使用以下命令运行jar:

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

我想,我的代码无法读取newrelic.yml文件,因为我在newrelic中看不到我的应用程序名。我是否需要在某处初始化newrelic代理(如果需要,如何初始化?)。请帮我整合一下。

tkclm6bt

tkclm6bt1#

您应该只需要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 两个新的relic文件应该在同一个目录中,并且您应该能够从build.sbt文件中删除新的relic行。还要再次检查您的许可证密钥是否在newrelic.yml文件中。
我还没有对此进行测试,但主要目标是使.yml和.jar可以在同一个目录中访问(yml可以进入不同的目录,但需要传递其他jvm参数来引用它)并 -javaagent:path/to/newrelic.jar 作为jvm参数。如果遇到问题,请尝试在.jar所在目录的日志文件夹中检查新的遗留日志。

相关问题