Tomcat日志与Log4j日志 - 裸奔的太阳 - 博客园 https://www.cnblogs.com/quan-coder/p/8024498.html
Tomcat日志系统详解 - 灰太郎^_^ - 博客园 http://www.cnblogs.com/cb0327/p/6699126.html
Tomcat日志系统详解 - winner_0715 - 博客园 https://www.cnblogs.com/winner-0715/p/7074280.html
Tomcat安装及配置详解 – 运维生存时间 http://www.ttlsa.com/tomcat/tomcat-install-and-configure/
简述Tomcat的日志系统 - CSDN博客 https://blog.csdn.net/hspingcc/article/details/73206146?utm_source=itdadao&utm_medium=referral
Tomcat访问日志浅析 - CSDN博客 https://blog.csdn.net/yaerfeng/article/details/40340981
Tomcat访问日志详细配置 - EasonJim - 博客园 https://www.cnblogs.com/EasonJim/p/5411480.html
成功配置TOMCAT的LOG4J日志系统,格式:HTML+每天以YYYY-MM-DD.LOG命名的日志文件 - 小马的酒吧 - 博客园 https://www.cnblogs.com/mxh691/p/3441016.html
Tomcat访问日志详细配(转) - hanxin - ITeye博客 http://hanxin0311.iteye.com/blog/1026636
Tomcat 快速入门 - 静默虚空 - 博客园 https://www.cnblogs.com/jingmoxukong/p/8258837.html?utm_source=gold_browser_extension
Tomcat的访问日志-localhost_access_log和记录Post请求参数 - CSDN博客 https://blog.csdn.net/weiwangchao_/article/details/78894323
tomcat下的日志配置详细说明 - CSDN博客 https://blog.csdn.net/xmtblog/article/details/24467469
Tomcat 日志系统
tomcat访问日志
1 Tomcat 日志信息分为两类 :
一是运行中的日志,它主要记录运行的一些信息,尤其是一些异常错误日志信息 。
二是访问日志信息,它记录的访问的时间,IP ,访问的资料等相关信息。
Tomcat中默认的情况下,access log是没有设置的。在server.xml文件中配置如下
<!-- Access log processes all example. Documentation at: /docs/config/valve.html --> <!-- <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/> -->
tomcat中的access log有一个优点是session ID也打印出来了。根据session ID可以有以下便利。
<!-- Access log processes all example. Documentation at: /docs/config/valve.html --> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log." suffix=".log" pattern="common" resolveHosts="false"/>
1,可以根据session ID来跟踪某个用户的画面操作。
2, 如果出现错误的时候,可以根据session ID来再现。便于查找出错误的地方。
Tomcat中的Access Log,缺省存放在logs目录下。这个目录会越来越大,如果访问量大的话,很快就会把硬盘挤满。
解决的方法有两种:
- 不要记录Access Log:注释掉server.xml中的<Valve>配置项
- 把Access log存放到其他地方,然后定期压缩归档:修改server.xml中<Valve>配置项中的“directory”参数,改为另外一个在大硬盘中的路径
如果是在运行中的系统,需要多做几步,先停止Tomcat、把Tomcat/logs中已经存在的Access Log文件移走、修改配置文件、然后重启Tomcat。一个具体的修改例子如下:
- 修改:directory="/opt/logs/access_logs"
- 修改:prefix="xjj_access_log"
然后,如果有需要,再另外写脚本定期压缩归档/opt/logs/access_logs中的文件(步骤略)。
pattern
pattern属性值由字符串常量和pattern标识符加上前缀"%"组合而成。pattern标识符加上前缀"%",用来代替当前请求/响应中的对应的变量值。目前支持如下的pattern:
· %a - 远端IP地址
· %A - 本地IP地址
· %b - 发送的字节数,不包括HTTP头,如果为0,使用"-"
· %B - 发送的字节数,不包括HTTP头
· %h - 远端主机名(如果resolveHost=false,远端的IP地址)
· %H - 请求协议
· %l - 从identd返回的远端逻辑用户名(总是返回 '-')
· %m - 请求的方法(GET,POST,等)
· %p - 收到请求的本地端口号
· %q - 查询字符串(如果存在,以 '?'开始)
· %r - 请求的第一行,包含了请求的方法和URI
· %s - 响应的状态码
· %S - 用户的session ID
· %t - 日志和时间,使用通常的Log格式
· %u - 认证以后的远端用户(如果存在的话,否则为'-')
· %U - 请求的URI路径
· %v - 本地服务器的名称
· %D - 处理请求的时间,以毫秒为单位
· %T - 处理请求的时间,以秒为单位
运行结果
解决的方法有两种:
不要记录Access Log:注释掉server.xml中的<Valve>配置项
把Access log存放到其他地方,然后定期压缩归档:修改server.xml中<Valve>配置项中的“directory”参数,改为另外一个在大硬盘中的路径
如果是在运行中的系统,需要多做几步,先停止Tomcat、把Tomcat/logs中已经存在的Access Log文件移走、修改配置文件、然后重启Tomcat。一个具体的修改例子如下:
- 修改:directory="/opt/logs/access_logs"
- 修改:prefix="xjj_access_log"
然后,如果有需要,再另外写脚本定期压缩归档/opt/logs/access_logs中的文件(步骤略)。
pattern
pattern属性值由字符串常量和pattern标识符加上前缀"%"组合而成。pattern标识符加上前缀"%",用来代替当前请求/响应中的对应的变量值。目前支持如下的pattern:
· %a - 远端IP地址
· %A - 本地IP地址
· %b - 发送的字节数,不包括HTTP头,如果为0,使用"-"
· %B - 发送的字节数,不包括HTTP头
· %h - 远端主机名(如果resolveHost=false,远端的IP地址)
· %H - 请求协议
· %l - 从identd返回的远端逻辑用户名(总是返回 '-')
· %m - 请求的方法(GET,POST,等)
· %p - 收到请求的本地端口号
· %q - 查询字符串(如果存在,以 '?'开始)
· %r - 请求的第一行,包含了请求的方法和URI
· %s - 响应的状态码
· %S - 用户的session ID
· %t - 日志和时间,使用通常的Log格式
· %u - 认证以后的远端用户(如果存在的话,否则为'-')
· %U - 请求的URI路径
· %v - 本地服务器的名称
· %D - 处理请求的时间,以毫秒为单位
· %T - 处理请求的时间,以秒为单位
catalina.out 和 catalina.log 的区别和用途 - CSDN博客 https://blog.csdn.net/ITzhangdaopin/article/details/79139777
运行结果
Tomcat日志管理(一) - CSDN博客 https://blog.csdn.net/pengjunlee/article/details/79477567
catalina.out
Tomcat-常用配置文件及关闭或调整catalina.out日志输出的三种方法 - CSDN博客 https://blog.csdn.net/gaoyuan0512/article/details/78840384
https://blog.csdn.net/wanglha/article/details/51732171
Log4J使用详解(整理) - CSDN博客 https://blog.csdn.net/u011781521/article/details/55002553
log4j来替代JNDI管理tomcat日志
值得一提的是,你会发现bin文件夹下本来就有tomcat-juli 包,但是这个包是有问题的,它不能发现log4j的存在。而且tomcat-juli.jar 和tomcat-juli-adapters.jar包要到指定的extras文件夹下面去下载。
日志分割
1.【教程】Tomcat 的catalina.out 日志按照自定义日期格式进行切割 - CSDN博客 https://blog.csdn.net/u010648555/article/details/79119055
https://blog.csdn.net/shiyong1949/article/details/78850230
Tomcat下使用Log4j 接管 catalina.out 日志文件生成方式 - CSDN博客 https://blog.csdn.net/buster2014/article/details/50844568
Tomcat使用Log4j输出catalina.out日志 - CSDN博客 https://blog.csdn.net/u013673976/article/details/51425645
2.手动写脚本,sed&awk