0

在我们的$JBOSS_HOME/server/<PROFILE = default >/deploy/jbossweb.sar/server.xml: THIS 中,我们定义了如何写入访问日志文件的日志模式。

 <Valve className="org.apache.catalina.valves.AccessLogValve" resolveHosts="false" directory="${jboss.server.log.dir}" pattern="combined" suffix=".log" prefix="localhost_access_log."/>

别名“combined”为您提供以下属性。此属性集中的属性顺序和数量正是 localhost_access_log 文件的编写方式:

combined - %h %l %u %t "%r" %s %b "%{Referer}i" "%{User-Agent}i" 


我检查了该别名模式中的每个变量的含义:

http://docs.jboss.org/jbossweb/latest/api/org/apache/catalina/valves/AccessLogValve.html


基于该模板,这就是我们应该得到的:

128.117.140.183 - bob [04/Nov/2008:14:40:46 -0700] "GET /manager/html HTTP/1.1" 200 13022 "http://localhost:8080/"

"Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3" 325

where %u = bob

相反,这就是我们最终得到的

128.117.140.183 - - [04/Nov/2008:14:40:46 -0700] "GET /manager/html HTTP/1.1" 200 13022 "http://localhost:8080/"

"Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3" 325

关于可能导致这种情况的任何想法?

请注意,我正在查看从 RIGHT Jboss PROFILE 创建的 RIGHT 访问日志(在本例中为 / 默认)。

为什么 jboss 不提供用户名 (%u) ?它是否以某种方式被覆盖?

4

1 回答 1

1

%u 仅在用户已通过身份验证时才会显示。您如何验证用户身份?

于 2012-07-18T17:47:12.217 回答