您的位置:首页 > 其它

JBoss Access log的配置

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

修改${JBOSS_HOME}/server/defaul/deploy/jbossweb.sar/server.xml找到如下代码:

Xml代码  


 <Valve className="org.apache.catalina.valves.AccessLogValve"   
              prefix="localhost_access_log." suffix=".log"   
pattern="%h %l %u %t %r %s %b" directory="${jboss.server.home.dir}/log"  
               resolveHosts="false" />  

 上述代码默认情况下是注释的,将注释去掉,就打开了访问日志记录阀。
参数/选项说明:
    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    处理请求的时间,以秒为单位
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  jboss syslog