2012-07-17 54 views
0

在我们的$JBOSS_HOME/server/<PROFILE = default >/deploy/jbossweb.sar/server.xml:这是我们如何定义访问日志文件如何写入的日志记录模式。Jboss和tomcat访问日志参数设置

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

别名 “组合拳” 为您提供了以下属性。在此属性设置的顺序和属性的数量是究竟怎么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


基于该模板,th是是我们应该得到:

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 

任何想法,以什么可能导致此?

请注意,我正在查看从右边的Jboss PROFILE创建的RIGHT访问日志(在这种情况下为/ default)。

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

回答

1

只有当用户已通过身份验证时,%u才会显示。你如何认证用户?

+0

我们正在使用Spring安全来实现这一点。 – user1432913 2012-07-18 18:05:55

+0

在web.xml中,我们有以下块 http://www.springframework.org/security-jboss/tags /META-INF/security-jboss.tld user1432913 2012-07-18 18:10:02

+0

任何解决方案? – 2014-07-30 19:03:38