JBoss 7.2.0 最后在意想不到的地方创建 server.log 文件

JBoss 7.2.0 Final creating server.log file in unexpected places

我正在尝试在 CentOS 6.5 上设置 JBoss 7.2.0 Final 来处理我们软件的 4 种不同部署。我不确定我是否设置正确,但一切似乎都正常,除了 server.log 没有结束我认为我告诉它要保存在 4 个部署中的 3 个中的位置。

有 4 个 HTTP 端口用于部署。它们是 :8080:8180:9876:9976。我不知道这是否是相关信息,但我提出它是因为在每个 standalone.xml 文件中我都使用 jboss.socket.binding.port-offset 选项来分配端口。唯一似乎完美运行的部署是 :8080,它有 jboss.socket.binding.port-offset:0:8180jboss.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 覆盖位于 /opt/jboss-eap-6.1/target/standalone8080/logserver.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 建议删除 standalone.xml 文件中 <file> 标记中的 "relative-to" 位。我尝试使用 :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 文件。您可能只需要更新一次,即可将路径更改为 {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 文件中可能有一个巧妙的处理方法。