Spring 在不修改依赖项的情况下使用 New Relic 启动

Spring Boot with New Relic without modifying dependencies

我正在尝试配置 New Relic 以监控 Spring 使用 Spring Boot 创建的应用程序。应用程序已经处于发布状态,我希望能够在不修改 java 应用程序的依赖项的情况下集成 New Relic,如 this question.

有没有什么方法可以包含新的遗物代理,以便使用新的命令行参数重新启动 Spring 启动应用程序就足够了?

编辑

我已阅读有关使用 -javaagent:/path/to/newrelic.jar 标志和获取错误消息的警告,但我自己没有尝试过。看来这个选项现在有效了。

第二次编辑

单个 spring 启动应用报告两个独立的应用程序,一个用于嵌入式 Tomcat 服务器,另一个用于 Java 应用程序本身。有办法解决这个问题吗?

第三次编辑(供以后阅读本文的任何人使用)

我的 spring 启动应用程序正在向 New Replic APM 工具报告两个应用程序。为了避免这种情况,我现在使用环境变量启动 java 应用程序:

export NEW_RELIC_APP_NAME="my spring boot app"
java -jar spring-boot-app-1.0.jar -javaagent:/path/to/newrelic.jar

事实证明,独立应用程序的说明也适用于 spring 启动应用程序:

java -jar spring-boot-app-1.0.jar -javaagent:/path/to/newrelic.jar