我正在尝试在CentOS 6.5上设置JBoss 7.2.0 Final来处理我们软件的4种不同部署。我不确定我是否已正确设置,但一切似乎都有效,除了server.log
没有结束,我认为我告诉它在4个部署中的3个中保存。< / p>
有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
文件。
错误的位置:
- 端口:8180
将其server.log
文件放在:8080
位置。即,:8180
会覆盖server.log
处的/opt/jboss-eap-6.1/target/standalone8080/log
文件。
- 端口: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建议删除&#34;亲属&#34;位于<file>
文件的standalone.xml
标记中的位。我尝试使用端口: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台服务器的设置方式是不正确的?
答案 0 :(得分:2)
查看每个配置目录中的每个logging.properties
文件。您可能只需更新一次,即可将路径更改为{jboss.server.log.dir}/server.log
。然后,当您启动每个服务器时,您需要指定jboss.server.log.dir
目录。
./bin/standalone.sh -Djboss.server.log.dir=$JBOSS_HOME/target/standalone8080/log
可能有一种聪明的方法可以在$JBOSS_HOME/bin/standalone.conf
文件中处理它。