tomcat开启访问日志

tomcat开启访问日志

   张吉吉     2020年1月10日 01:37     1558    

1、开启访问日志

在server.xml里的<host>标签下加上
<Valve className="org.apache.catalina.valves.AccessLogValve"
directory="logs" prefix="localhost_access_log." suffix=".txt"
pattern="common" resolveHosts="false"/>

只要将以上内容在server.xml文件中添加就可以了。

一般都会有这段话,不过是注释掉的。将注释去掉就可以了。

 

2、参数介绍

(1)className

org.apache.catalina.valves.AccessLogValve固定的字段只能这样写。

(2)directory

这个东西是日志文件放置的目录,在tomcat下面有个logs文件夹,那里面是专门放置日志文件的,也可以进行修改,在tomcat下建立accesslogs文件夹,将其改为accesslogs就可以在其中产生文件了。

(3)prefix

这个是日志文件的名称前缀。

(4)suffix

这就是后缀名。

(5)pattern

看后边的解释

(6)resolveHosts

如果这个值是true的话,tomcat会将这个服务器IP地址通过DNS转换为主机名,如果是false,就直接写服务器IP地址。

(7)rotatable

默认为true,默认的设置使得你的tomcat生成的文件命为

prefix(前缀)+.+时间(一般是按天算)+.+suffix(后缀),

参照我的日志名就知道了:localhost_access_log.2010-01-01.txt

使用这个需要谨慎,因为你将其设置为false的话,tomcat会忽略时间,不会新生成文件,最后导致你的文件超级大,这样生成的文件名就是:localhost_access_log.txt

(8)condition

这个参数不太实用,可以设置任何值,比如咱们设置成condition="tkq",那么只有当ServletRequest.getAttribute("tkq")为空的时候,才会被记录下来

(9)fileDateFormat

最后的一个参数,很明白,这就是时间格式嘛,但是这个时间格式是针对日志文件起作用的,还记得咱们生成的日志文件全名么:localhost_access_log.2020-01-01.txt,这里面的2020-01-01就是这么来的,如果你想让tomcat每小时生成一个日志文件,也很简单,将这个值设置为:fileDateFormat="yyyy-MM-dd.HH",当然也可以按分钟生成什么。

 

3、pattern的参数

common的值:%h %l %u %t %r %s %b
combined的值:%h %l %u %t %r %s %b %{Referer}i %{User-Agent}i 

%a     

这是记录访问者的IP,在日志里是127.0.0.1

%A

这是记录本地服务器的IP,在日志里是192.168.254.108

%b

这是发送信息的字节数,不含http头,如果字节数为0的话,显示为-

%B

看tomcat的解释,没看出来与b%的区别,但我这里显示为-1,没想明白,望知道者告知,我把官方解释贴出来吧 Bytes sent, excluding HTTP headers

%h

这个就是服务器名称了,如果resolveHosts为false的话,这里就是IP地址了,我的日志里是127.0.0.1

%H

访问者使用的协议,这里是HTTP/1.1

%l

这个也不太清楚,官方也说这个always return '-' 官方解释:Remote logical username from identd (可能这样翻译:记录浏览者进行身份验证时提供的名字)(always returns '-')

%m

访问的方式,是GET还是POST

%p

本地接收访问的端口

%q

比如你访问的是aaa.jsp?bbb=ccc,那么这里就显示?bbb=ccc,明白了吧,这个q是querystring的意思

%r

官方解释:First line of the request (method and request URI),不是很明白

%s

这个是http的状态

%S

用户的session ID

%t

时间

%u

得到了验证的访问者,否则就是"-"

%U

访问的URL地址

%v

服务器名称

%D

访问发生的时间,以毫秒记

%T

访问发生的时间,以秒记


文章评论

0

其他文章