将 Undertow access.log 写入 Wildfly 中的非默认位置
Posted
技术标签:
【中文标题】将 Undertow access.log 写入 Wildfly 中的非默认位置【英文标题】:Writing Undertow access.log to non-default location in Wildfly 【发布时间】:2014-11-20 18:08:48 【问题描述】:我是 Wildfly 中的 undertow Web 服务器的新手。
我在域模式下运行 Wildfly8.1 并尝试将访问日志写入非默认位置。当前默认为 directory="$jboss.server.log.dir"。我正在尝试将访问日志属性“目录”设置为像这样 diretory="$custom.jboss.server.log.dir。我有这个变量将 host-slave.xml 定义为:
<server name="myserver" group="mygroup" auto-start="true">
<paths>
<path name="custom.jboss.server.log.dir" path="/apps/logs/servers/server_mars_8443/logs"/>
</paths>
</server>
在 domain.xml 我有:
<host name="default-host" alias="localhost">
<location name="/" handler="welcome-content"/>
<access-log directory="$custom.jboss.server.log.dir" prefix="access.log_" suffix="" pattern="%t %h %l %u %r %s %b %T" worker="default"/>
...
</host>
此设置适用于 JBoss EAP 6.2。
但是,在 Wildfly 8.1 中,我收到以下错误:
ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) JBAS014613: Operation ("add") failed - address: ([
("subsystem" => "undertow"),
("server" => "default-server"),
("host" => "default-host")
]) - 失败描述:"JBAS014771: 缺少/不可用依赖项的服务" => ["jboss.undertow.server.default-server.default-host 丢失 [jboss.undertow.server.default-server.默认主机。访问日志]"] 2014-09-25 16:25:33,611 错误 [org.jboss.as.controller.management-operation](控制器引导线程)JBAS014613:操作(“添加”)失败 - 地址:([ ("子系统" => "undertow"), (“服务器”=>“默认服务器”), (“主机”=>“默认主机”), (“位置”=>“/”) ]) - 故障描述:“JBAS014879:由于一个或多个间接依赖不可用,一个或多个服务无法启动。” => "无法启动的服务:" => ["jboss.undertow.server.default-server.default-host.location./"], “可能是原因的服务:” => [“jboss.undertow.server.default-server.default-host.access-log”]
【问题讨论】:
【参考方案1】:您是不是忘了在domain.xml
上指定default-server
的属性?您的例外是关于default-server
,而不是关于myserver
。
【讨论】:
默认服务器在 domain.xml 中指定。请看下文。custom.jboss.server.log.dir
,所以,当你说默认主机应该将它的请求记录到这个地方时,default-server
不知道是什么意思。
是的,这是在 host-slave.xml 文件中定义的。 my_server
定义。尝试为default-server
定义path
also。以上是关于将 Undertow access.log 写入 Wildfly 中的非默认位置的主要内容,如果未能解决你的问题,请参考以下文章