修改Tomcat的Access Log存放路径和文件名

Tomcat中的Access Log,缺省存放在logs目录下。这个目录会越来越大,如果访问量大的话,很快就会把硬盘挤满。


解决的方法有两种:

  1. 不要记录Access Log:注释掉server.xml中的<Valve>配置项
  2. 把Access log存放到其他地方,然后定期压缩归档:修改server.xml中<Valve>配置项中的“directory”参数,改为另外一个在大硬盘中的路径

如果是在运行中的系统,需要多做几步,先停止Tomcat、把Tomcat/logs中已经存在的Access Log文件移走、修改配置文件、然后重启Tomcat。一个具体的修改例子如下:

假设新存放路径是/opt/logs/access_logs,文件名前缀修改为xjj_access_log以免跟其他Tomcat的log混淆:
cd /opt/logs
mkdir access_logs
vim /opt/app/tomcat-xjj/conf/server.xml
  • 修改:directory="/opt/logs/access_logs"
  • 修改:prefix="xjj_access_log"
停止tomcat:/opt/app/tomcat-xjj/bin/shutdown.sh 无法停止?杀死:kill -9 <pid>
cd /opt/app/tomcat-xjj/logs
rename localhost_access_log xjj_access_log *.txt ( 后缀.txt过滤出所有的access log文件,并批量重命名)
mv *.txt /opt/logs/access_logs/
重启tomcat:/opt/app/tomcat-xjj/bin/startup.sh 

然后,如果有需要,再另外写脚本定期压缩归档/opt/logs/access_logs中的文件(步骤略)。


更多关于Tomcat Access Log的配置参考:https://tomcat.apache.org/tomcat-8.0-doc/config/valve.html#Access_Logging

你可能感兴趣的:(tomcat,access-log)