配置位置在log下的server.xml,(tomcat容器)
在server.xml里的
<host>标签
下添加:
<Valve className="org.apache.catalina.valves.AccessLogValve"
directory="logs" prefix="localhost_access_log." suffix=".txt"
pattern="common" resolveHosts="false"/>
范例:
<Eng
in
e defaultH
os
t="localhost" name="Catalina">
<Host appBase="
web
apps" name="localhost">
<Logger className="org.
apache
.catalina.logger.FileLogger" prefix="localhost_log." suffix=".txt" timestamp="true"/>
<Valve className="org.apache.catalina.valves.AccessLogValve" fileDate
For
mat="yyyy-MM-dd" pattern="%h %l %u %t %r %s %b %{Referer}i %{User-Agent}i %{x-jph
one
-uid}i %{x-up-subno}i" prefix="localhost_access_log." suffix=".txt" directory="/var/log/accesslog" condition="drop"/>
<Context path="" docBase="cn_issue" debug="0"/>
</Host>
<Logger className="org.apache.catalina.logger.FileLogger" prefix="catalina_log." suffix=".txt" timestamp="true"/>
<R
ea
lm className="org.apache.catalina.realm.UserDatabaseRealm"/>
</Engine>
以下是摘抄正文
original link:http://forum.ospod. com /post-25088-1.f html ;j sessionid =3361F472A5E12B9B9BEA1632EC50603A
Access Log Valve用来创建
日志
文件
,格式与
标准
的web server日志文件相同。
可以
使用用
日志分析工具
对日志进行
分析
,
跟踪
页面
点击
次数
、
用户
会话的活动等。Access Log Valve的很多配置和行为特性与File Logger相同,包括每晚午夜自动切换日志文件。Access Log Valve可以和
任何
Catalina容器关联,记录该容器处理的所有请求。
例子如下:
directory="logs" prefix="localhost_access_log." suffix=".txt"
pattern="%{X-Forwarded-For-Pound}i %l %u %t "%r" %s %b %T "%{HTTP_X_UP_CALLING_LINE_ID}i" "%{x-up-calling-line-id}i" "%{User-Agent}i"" resolveHosts="false"/>
className |
实现的
Java
类名。
必须
被设置成org.apache.catalina.valves.AccessLogValve。
|
directory |
存放日志文件的目录,可以是
相对路径
或者
绝对路径
。如果使用相对
路径
,是指相对于 $CATALINA_HOME的路径。如果不指定directory属性,
缺省值
是"logs"(相对于 $CATALINA_HOME)
|
pattern |
需要记录的请求/响应不同信息域的格式布局。如果是"common"或者"combine",说明
选择
标准格式。下面会有关于配置这个属性的更多信息。
|
prefix |
日志文件名的前缀。如果没有指定,缺省值是"access_log."。如果不想使用前缀,使用长度为0的字符串。
|
resolveHosts |
将远端
主机
的
IP
地址通过DNS查询转换成主机名,设为true。如果为false,忽略DNS查询,报告远端的IP地址。
|
suffix |
日志文件名的后缀。如果没有指定,缺省值是""。如果不想使用后缀,使用长度为0的字符串。
|
rotatable |
缺省值为true,用来决定日志是否翻转的标志。如果为false,日志文件永远不翻转,并且忽略fileDataFormat。要谨慎使用。
|
condition |
打开条件日志。如果设置了这个属性,只有在ServletRequest.getAttribute()是null的时候,才会为请求创建日志。比如,如果 condition设为junk,则只有在Servlet.getAttribute("junk")==null的时候,才会记录这个请求。使用
过滤
器,可以很
容易
设置(或者取消设置)不同请求的属性。
|
fileDateFormat | 允许在日志文件名称中使用定制的日期格式。日志的格式也决定了日志文件翻转的频率。如果想每个小时翻转 一次 ,将这个值设为yyyy-MM-dd.HH |
pattern属性值由字符串常量和pattern标识符加上前缀"%"组合而成。pattern标识符加上前缀"%",用来代替当前请求/响应中的对应的变量值。目前支持如下的pattern:
- %a - 远端IP地址
- %A - 本地IP地址
- %b - 发送的字节数,不包括HTTP头,如果为0,使用"-"
- %B - 发送的字节数,不包括HTTP头
- %h - 远端主机名(如果resolveHost=false,远端的IP地址)
- %H - 请求协议
- %l - 从identd返回的远端逻辑用户名(总是返回 '-')
- %m - 请求的 方法 (GET,POST,等)
- %p - 收到请求的本地端口号
- %q - 查询字符串(如果存在,以 '?'开始)
- %r - 请求的第一行,包含了请求的方法和URI
- %s - 响应的状态码
- %S - 用户的session ID
- %t - 日志和 时间 ,使用通常的Log格式
- %u - 认证以后的远端用户(如果存在的话,否则为'-')
- %U - 请求的URI路径
- %v - 本地 服务器 的名称
- %D - 处理请求的时间,以毫秒为单位
- %T - 处理请求的时间,以秒为单位
详细内容: http://tomcat.apache.org/tomcat-6.0-doc/config/valve.html