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
。 :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
覆盖位于 /opt/jboss-eap-6.1/target/standalone8080/log
的 server.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
文件中可能有一个巧妙的处理方法。
我正在尝试在 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
。 :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
覆盖位于 /opt/jboss-eap-6.1/target/standalone8080/log
的 server.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
文件中可能有一个巧妙的处理方法。