1.日志文件类型
| 文件 |
说明 |
catalina.YYYY-MM-DD.log |
Tomcat服务运行日志 |
catalina.out |
控制台输出日志(重定向) |
localhost.YYYY-MM-DD.log |
默认虚拟主机日志 |
localhost_access_log.YYYY-MM-DD.txt |
访问日志 |
manager.YYYY-MM-DD.log |
Manager应用日志 |
host-manager.YYYY-MM-DD.log |
Host Manager日志 |
1.1访问日志格式(Access Log)
配置文件位置:conf/server.xml
1 2 3 4 5
| <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log" suffix=".txt" pattern="%h %l %u %t "%r" %s %b"/>
|
1.2日志格式符号表
| 符号 |
含义 |
%h |
远程主机名(或IP地址) |
%l |
远程逻辑用户名(identd,通常返回 -) |
%u |
远程认证用户(未认证返回 -) |
%t |
时间,格式 [14/Jul/2020:09:08:46 +0800] |
%r |
请求第一行:GET / HTTP/1.1 |
%s |
HTTP状态码(200/404/500等) |
%b |
响应字节数(不含HTTP头) |
%B |
响应字节数(不含HTTP头,0时显示0) |
%H |
请求协议(HTTP/1.1) |
%m |
请求方法(GET/POST等) |
%U |
请求的URL路径 |
%q |
查询字符串(带?前缀) |
%{xxx}i |
请求头中的xxx字段值 |
%{xxx}o |
响应头中的xxx字段值 |
%{xxx}c |
Cookie中的xxx值 |
%{xxx}s |
HttpSession中的xxx属性 |
%D |
处理请求耗时(毫秒) |
%T |
处理请求耗时(秒) |
%p |
本地端口(%{local}p 或 %{remote}p) |
%I |
当前请求线程名 |
%X |
连接状态(X=中断,+=保持,-=关闭) |
1.3访问日志示例
10.0.0.1 - - [14/Jul/2020:09:08:46 +0800] "GET / HTTP/1.1" 200 5581
10.0.0.1 - - [14/Jul/2020:09:08:46 +0800] "GET /tomcat.css HTTP/1.1" 200 5581
10.0.0.1 - - [14/Jul/2020:09:08:46 +0800] "GET /tomcat.png HTTP/1.1" 200 5103
10.0.0.1 - - [14/Jul/2020:09:08:46 +0800] "GET /favicon.ico HTTP/1.1" 200 21630
2.日志级别配置
配置文件:conf/logging.properties
1 2 3 4 5 6 7 8 9
| 1catalina.org.apache.juli.AsyncFileHandler.level = FINE 1catalina.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs 1catalina.org.apache.juli.AsyncFileHandler.prefix = catalina.
2localhost.org.apache.juli.AsyncFileHandler.level = FINE 2localhost.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs 2localhost.org.apache.juli.AsyncFileHandler.prefix = localhost.
|
| 级别 |
说明 |
| SEVERE |
严重错误 |
| WARNING |
警告 |
| INFO |
信息 |
| CONFIG |
配置 |
| FINE |
细粒度信息 |
| FINER |
更细粒度 |
| FINEST |
最细粒度 |
| ALL |
所有 |
| OFF |
关闭 |
3.自定义日志格式示例
1 2 3 4 5 6
| <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="access_log" suffix=".txt" pattern="%h %l %u %t "%r" %s %b %D "%{Referer}i" "%{User-Agent}i"" />
|
输出示例:
10.0.0.1 - - [14/Jul/2020:09:08:46 +0800] "GET /index.jsp HTTP/1.1" 200 1024 152 "http://example.com" "Mozilla/5.0"