2013-10-10 20 views
0

爲什麼我只看到兩個新的Relic庫條目?我是否在某處冗餘地引用New Relic jar?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> 

以下但在設置 - >環境頁(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 

我第一次看到這個當javaagent我的JVM指向的版本與我在pom.xml中描述的版本不同。看起來我已經在pom中定義了兩個(我需要編譯使用New Relic API的Java代碼),並且在啓動JVM時指向了代理。

回答

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之外沒有其他任何內容,這應該是唯一顯示的內容。我並不建議你永久這樣做,因爲你的歷史數據只能在舊的應用程序名下生存,只能作爲概念驗證。

無論如何,讓他們上市應該是無害的,但如果你不能設法啓動一個新的應用程序來證明我們不會看到他們,如果他們不&從來沒有在類路徑中,這讓你感到厭煩,你應該在https://support.newrelic.com開一張票,這樣我們就可以從我們的最後調查你的特定應用程序。