New Relic系统内存页面显示三个New Relic库而不是两个

时间:2013-10-10 21:30:57

标签: newrelic

为什么我只看到两个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时指向代理的那个。

1 个答案:

答案 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打开一张票,这样我们就可以从最终调查你的特定应用。