Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2453370
  • 博文数量: 540
  • 博客积分: 11289
  • 博客等级: 上将
  • 技术积分: 6160
  • 用 户 组: 普通用户
  • 注册时间: 2008-02-11 20:27
个人简介

潜龙勿用,见龙在田

文章分类

全部博文(540)

文章存档

2018年(2)

2013年(5)

2012年(24)

2011年(104)

2010年(60)

2009年(217)

2008年(128)

分类: LINUX

2012-09-24 14:21:17

工作中nginx+jboss/tomcat反向代理集成,想打开后端jboss的access log,
配置在:/home/admin/wdetail/conf/tomcat-server.xml
开启日志将下面内容的注释去掉:
           
                prefix="localhost_access_log." suffix=".log"
                pattern="common" directory="${jboss.server.home.dir}/log" 
                resolveHosts="false" />

pattern 项的修改,可以改变日志输出的内容。
该项值可以为: common 与 combined ,这两个预先设置好的格式对应的日志输出内容如下:
common 的值: %h %l %u %t %r %s %b
combined 的值: %h %l %u %t %r %s %b %{Referer}i %{User-Agent}i
pattern的格式也可以自定义:
                prefix="localhost_access_log." suffix=".log"
                pattern="%{X-Real-IP}i %a %l %u %D %t %r %s %b %{Referer}i %{User-Agent}i" directory="${jboss.server.home.dir}/../logs" resolveHosts="false" />

这里log的路径可以更改:directory="${jboss.apphome.dir}/logs"
jboss.apphome.dir这个变量必须要到jbossctl里去定义,加到JAVA_OPTS里面去:
JAVA_OPTS="${JAVA_OPTS} -Djboss.apphome.dir=$BASE_HOME"

碰到问题,jboss记录的ip不是真实ip,需要在nginx上配置下:

           proxy_redirect  off;
            proxy_set_header Host            $host;
           proxy_set_header X-Real-IP       $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

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    处理请求的时间,以秒为单位


参数/选项说明:
    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”;
阅读(3548) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~