server.log
。在WildFly的HTTP子系统的源代码中,我找到了RequestDumpingHandler和相应的日志类别
io.undertow.request.dump
。然而,我无法弄清楚如何安装该标头,以便它适用于由我的应用程序(一个带有一些静态资源和JAX-RS处理程序的WAR)提供的所有请求。
相应的文档页面(Undertow web subsystem configuration)并没有真正解释处理程序。配置部分中有一个
<handler>
元素。<?xml version="1.0" ?>
<server xmlns="urn:jboss:domain:2.1">
...
<profile>
...
<subsystem xmlns="urn:jboss:domain:undertow:1.1">
<buffer-cache name="default"/>
<server name="default-server">
<http-listener name="default" socket-binding="http"/>
<host name="default-host" alias="localhost">
<location name="/" handler="welcome-content"/>
<filter-ref name="server-header"/>
<filter-ref name="x-powered-by-header"/>
</host>
</server>
<servlet-container name="default">
<jsp-config/>
</servlet-container>
<handlers>
<file name="welcome-content" path="${jboss.home.dir}/welcome-content"/>
<!-- <dump-request /> ?? or something?-->
</handlers>
<filters>
<response-header name="server-header" header-name="Server" header-value="WildFly/8"/>
<response-header name="x-powered-by-header" header-name="X-Powered-By" header-value="Undertow/1"/>
</filters>
</subsystem>
...
</profile>
...
</server>
但据我所知,那里只期望出现<file>
和代理。
我该如何在WildFly中记录传入HTTP请求的全部细节?我知道我可以在JAX-RS层安装一些日志记录机制,但我希望有一个转储机制来处理REST API调用和静态资源。