我試圖在CentOS 6.5上設置JBoss 7.2.0 Final來處理我們軟件的4種不同部署。我不知道我是否已經正確設置了某些東西,但似乎一切正常,但server.log
沒有結束,我想我告訴它在4次部署中的3次中保存。JBoss 7.2.0最終在意想不到的地方創建server.log文件
有4個HTTP端口用於部署。它們是:8080
,:8180
,:9876
和:9976
。我不知道這是否是相關信息,但我提出來,因爲在每個standalone.xml
文件中,我使用jboss.socket.binding.port-offset
選項來分配端口。似乎完美工作的唯一部署是:8080
,其中有jboss.socket.binding.port-offset:0
。 :8180
有jboss.socket.binding.port-offset:100
等
每個部署住在自己的目錄,例如
/opt/jboss-eap-6.1/target/standalone8080/
和
/opt/jboss-eap-6.1/target/standalone9876/
在standalone.xml
文件每個部署(/opt/jboss-eap-6.1/target/standalone9876/configuration/standalone.xml
,例如)時,服務器日誌以相同的方式指定:
<file relative-to="jboss.server.log.dir" path="server.log"/>
這應該導致server.log被保存在例如 /opt/jboss-eap-6.1/target/standalone9876/log
, 中,並且當在每個端口上重新部署軟件時,我已經迴應了$JBOSS_LOG_DIR
變量,並且似乎在每種情況下都要正確設置表面。
然而,如上所述,僅端口:8080
創建server.log
文件中的預期位置(/opt/jboss-eap-6.1/target/standalone8080/log
)。
不正確的地方:
--port :8180
把它的server.log
文件中:8080
位置。即,:8180
覆蓋server.log
文件/opt/jboss-eap-6.1/target/standalone8080/log
。
--Port :9876
將其server.log文件放入/opt/jboss-eap-6.1/target/standalone/log
。也就是說,它會創建一個名爲standalone
的新文件夾並將文件放在那裏。我將在以前補充說,整個端口:9876
部署位於該路徑的文件夾中(/opt/jboss-eap-6.1/target/standalone
)。這種明顯的線索讓我覺得還有其他地方有server.log
文件路徑的設置。我可能是錯的。
- 最後,端口:9976
將其server.log文件放在期望的log
目錄的上一級,換句話說,在/opt/jboss-eap-6.1/target/standalone9976
。
我不知道處理這4個部署的方式是否根本不正確,或者是否有隱藏在某處的設置覆蓋了我所需的路徑。
我看到one poster與一個類似的問題說,他們改變了domain.xml
來解決這個問題。我認爲我不能這樣做,因爲我只有一個domain.xml
文件(位於/opt/jboss-eap-6.1/domain/configuration
)與所有4個部署相關聯。
Another post建議刪除standalone.xml
文件中的<file>
標記中的「相對於」位。我試圖用端口:9876
如下:
<file path="/opt/jboss-eap-6.1/target/standalone9876/log/server.log"/>
這不適合我。 server.log文件仍然以
<file path="/opt/jboss-eap-6.1/target/standalone/log/server.log"/>
任何想法我做錯了什麼?是否只有另一個地方需要聲明我的日誌路徑,或者這4個服務器的設置方式不正確?
啊,非常感謝!實際上,每個部署的'logging.properties'包含一個硬編碼的行,如'handler.FILE.fileName =/opt/jboss-eap-6.1/target/standalone8080/log/server.log'。除了'standalone8080'文件夾中的'server.log'之外,路徑都是不同的,都是錯誤的。我試着改變路徑並使用'-D'選項調用'standalone.sh'。結果是沒有進行路徑替換,並且'server.log'創建在名爲'{jboss.server.log.dir}'的文件夾中'standalone.sh'中。 – pjd 2015-03-03 22:27:34
因此,最後我修改了'logging.properties',在'server.log'的正確路徑中進行硬編碼。只要我瞭解更多關於JBoss的知識就足夠了。再次謝謝你! – pjd 2015-03-03 22:27:38
每次啓動服務器時,'logging.properties'文件都會被覆蓋。 IIRC有一個JIRA希望能夠解決這個問題,但是我們通常在設置'jboss.server.log.dir'屬性時會出現雞和蛋的問題。 – 2015-03-04 18:53:13