2012-06-19 58 views
2

我正在運行tomcat 7,並在測試服務器上配置了2個虛擬主機。稱他們爲「hostA」和「hostB」。javamelody tomcat虛擬主機

工作得很好,但我現在想用javamelody來監視這兩個應用程序。在一個應用程序上使用javamelody可以按預期工作。但是當同時部署javamelody到兩個應用程序時都有問題。

查看tomcat/temp/javamelody /我看到爲每個上下文創建了不同的目錄。不幸的是,javamelody將hostA和hostB視爲同一個上下文(ROOT)。

總之,javamelody不能區分hostA和hostB,因爲即使配置爲不同的虛擬主機,兩者都是ROOT上下文,javamelody會忽略這一點。

我正在尋找一種方法來監視應用程序,但出於生產的目的,我需要它們作爲ROOT上下文,否則用戶將看到URL不正確。

如必須

www.hostA.co.uk

www.hostB.co.uk

www.hostA.co.uk/contextA/

www.hostB.co.uk/contextB/

謝謝

回答

3

我已經解決了這個問題,我在javamelody中找到了一個設置,可以讓你設置一個自定義的存儲目錄。現在這兩個上下文都是root,但是數據是分開的,所以沒有衝突。

server.xml中的變化部分如下

<Host name="localhost" appBase="webappsA/"> 
    <Context docBase="ROOT" path="" reloadable="false" > 
    <Parameter name='javamelody.storage-directory' value='storeA'/> 
    </Context> 
</Host> 

<Host name="127.0.0.1" appBase="webappsB/"> 
    <Context docBase="ROOT" path="" reloadable="false" > 
    <Parameter name='javamelody.storage-directory' value='storeB'/> 
    </Context> 
</Host>