【问题标题】:tomcat: how can we log user name in tomcat log?tomcat:我们如何在 tomcat 日志中记录用户名?
【发布时间】:2011-12-19 06:21:58
【问题描述】:

我已尝试取消注释 server.xml 中的阀门行。未注释的行是

<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
       prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>

它只记录正在访问的 url。它没有注销提出请求的人。

在tomcat中正确的方法是什么?

【问题讨论】:

    标签: tomcat logging


    【解决方案1】:

    您选择了“通用”模式;您需要指定一个自定义模式,如下所示。 “%u”变量代表“经过身份验证的用户”。下面的链接列出了您可以使用的所有其他变量。

    http://tomcat.apache.org/tomcat-7.0-doc/config/valve.html#Access_Log_Valve

        <Valve className="org.apache.catalina.valves.AccessLogValve"
                 directory="logs"  prefix="access." suffix=".log"
                 pattern="%h %l %u %t '%r' %s %b"
                 resolveHosts="false"/>
    

    【讨论】:

    • 根据您提供的链接,通用模式已经包含 %u - "速记模式模式="common" 对应于 '%h %l %u %t '定义的通用日志格式%r" %s %b'。"那么这个配置有什么不同呢?
    【解决方案2】:
    <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
           prefix="localhost_access_log." suffix=".txt" pattern="combined" resolveHosts="false"/>
    

    这也能解决问题吗?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-08-23
      • 2011-03-10
      • 2013-11-26
      • 1970-01-01
      • 2012-03-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多