为什么我只看到两个New Relic库条目?我是否在某处冗余地引用New Relic罐子?
我的pom.xml中有以下内容
<dependency>
<groupId>com.newrelic.agent.java</groupId>
<artifactId>newrelic-agent</artifactId>
<version>3.0.1</version>
</dependency>
<dependency>
<groupId>com.newrelic.agent.java</groupId>
<artifactId>newrelic-api</artifactId>
<version>3.0.1</version>
</dependency>
但是在设置 - &gt;环境页面(https://rpm.newrelic.com/accounts/<account_id>/applications/<app_id>/environment
)我看到三个条目:
newrelic-agent 3.0.1
newrelic-api 3.0.1
newrelic 3.0.1
当我的JVM指向的javaagent与我的pom.xml中描述的版本不同时,我第一次看到这个。看起来我已经在pom中定义了两个(我需要编译使用New Relic API的Java代码)以及在启动JVM时指向代理的那个。
答案 0 :(得分:1)
我为New Relic技术支持工作。
我问我们的Java代理作者如何发生这种情况并得到以下建议:
1)你的CLASSPATH上除了newrelic-api.jar之外你不需要任何东西。如果你有其他东西,比如newrelic-agent.jar或newrelic.jar,那些只需要指定为-javaagent:settings(并且只有一个!),而不是你的类路径。删除任何引用应该最终从列表中删除(参见#2)。
2)如果您以前在类路径中有另一个不需要的jar的引用,那么该环境页面不一定是实时的,并且可能会有一些旧的缓存数据。如果您使用不同的app_name设置来启动应用程序,以便为该页面获得一个全新的清单,并且在CLASSPATH上没有除newrelic-api.jar之外的任何内容,则应该是唯一显示的内容。我并不建议您永久执行此操作,因为您的历史数据将保留在旧的appname下,仅作为概念证明。
无论如何,列出它们应该是无害的,但如果你无法设法启动一个新的应用程序来证明我们不会看到它们,如果它们不是&amp;从来没有在类路径上,这让你感到厌烦,你应该在https://support.newrelic.com打开一张票,这样我们就可以从最终调查你的特定应用。