Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2298485
  • 博文数量: 321
  • 博客积分: 3440
  • 博客等级: 中校
  • 技术积分: 2992
  • 用 户 组: 普通用户
  • 注册时间: 2007-05-24 09:08
个人简介

我就在这里

文章分类

全部博文(321)

文章存档

2015年(9)

2014年(84)

2013年(101)

2012年(25)

2011年(29)

2010年(21)

2009年(6)

2008年(23)

2007年(23)

分类: Java

2014-07-30 07:43:38

在做WEB应用时,有时候希望能够记录用户的访问,分析访问用户的地域以及用户访问行为,JBoss提供了一种方式能够很方便的记录用户的访问日志,但是默认情况下这个功能是没有启用的,下面讲述如何启用这个功能。

  1. 修改${JBOSS_HOME}/server/defaul/deploy/jbossweb.sar/server.xml找到如下代码:
    Xml代码  收藏代码
    1.  <Valve className="org.apache.catalina.valves.AccessLogValve"   
    2.               prefix="localhost_access_log." suffix=".log"   
    3. pattern="%h %l %u %t %r %s %b" directory="${jboss.server.home.dir}/log"  
    4.                resolveHosts="false" />  
     上述代码默认情况下是注释的,将注释去掉,就打开了访问日志记录阀。
  2. 参数/选项说明:

    className: 实现的java类名,必须设置成org.apache.catalina.valves.AccessLogValve;
    directory: 存放日志文件的目录;
    pattern:    需要记录的日志信息的格式布局,如果是”common”或者”combined”,说明是使用的标准记录格式,也有自定义的格式,下面会详细说明;
    prefix:    日志文件名的前缀,如果没有指定,缺省值是”access_log.;(要注意后面有个小点);
    resolveHosts: 将远端主机的IP通过DNS查询转换成主机名,设为true。如果为false,忽略DNS查询,报告远端主机的IP地址;
    sufix:    日志文件的后缀名。(sufix=”.log”);也需要注意有个小点;
    rotatable: 缺省值为true,决定日志是否要翻转,如果为false则永不翻转,并且忽略fileDateFormat,谨慎使用。
    condition: 打开条件日志
    fileDateFormat:允许在日志文件名称中使用定制的日期格式。日志的格式也决定了日志文件翻转的频率。

                          如果想每小时翻转一次,可以定义为“yyyy-MM-dd.HH”;

 

pattern的详细说明

 

    %a    远端IP
    %A 本地IP
    %b    发送的字节数,不包含HTTP头,如果为0,使用”-”
    %B    发送的字节数,不包含HTTP头
    %h    远端主机名(如果resolveHosts=false),远端的IP
    %H    请求协议
    %l    从identd返回的远端逻辑用户名,总是返回’-’
    %m    请求的方法
    %p    收到请求的本地端口号
    %q    查询字符串
    %r    请求的第一行
    %s 响应的状态码
    %S    用户的sessionID
    %t    日志和时间,使用通常的log格式
    %u    认证以后的远端用户(如果存在的话,否则为’-’)
    %U    请求的URI路径
    %v    本地服务器的名称
    %D 处理请求的时间,以毫秒为单位
    %T    处理请求的时间,以秒为单位

阅读(1247) | 评论(0) | 转发(0) |
0

上一篇:JBoss配置SSL

下一篇:Tomcat中的Connector配置

给主人留下些什么吧!~~