定期删除TOMCAT日志文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了定期删除TOMCAT日志文件相关的知识,希望对你有一定的参考价值。
TOMCAT日志文件一段时间会累积到几十个G,我想做一个定期删除某个时间的功能,比如每个月底删除上个月的日志文件,保持至少要保留一个月的日志文件,TOMCAT能不能怎么样配置达到这样的效果? 或者批处理能不能动态的控制删除日期,对批处理不了解,有什么比较好的办法,请大家帮下忙,谢谢了
定期删除TOMCAT日志文件,参考代码如下:
#!/bin/bash#清理tomcat日志的脚本
#日志大小限制设置( 1M 字节),超出即清理
LOG_FILE_SIZE=1024000
#定义日志文件位置
logs=(/srv/tomcat6/logs/catalina.out /usr/share/tomcat6/logs/catalina.out)
for ff in "$logs[@]";
do
#文件大小
size=0
if [ -f $ff ]
then
#取得日志文件大小值
size=`ls -l $ff |awk \'print $5\'`
fi
#进行判断
if [ "$size"0 -gt "$LOG_FILE_SIZE"0 ]
then
echo 开始清理: "$ff" , 大小= "$size"
true > $ff
fi
done
#清理完成
echo 清理日志完成! 参考技术A @echo off
del /f /s /q "tomcat_path\logs\*.*"
echo. & pause 参考技术B tomcat 日志切割,百度关键词本回答被提问者采纳
定期删除IIS日志文件
服务器中由于监控的需要会经常生成很多日志文件,比如IIS日志文件(C:\inetpub\logs\LogFiles),一个稍微有流量的网站,其日志每天可以达到上百兆,这些文件日积月累会严重的占用服务器磁盘空间。有必要对他们进行定期删除。dos批处理程序如下:
:: 清理IIS日志文件 :: 备份MySql数据库 @echo off title 清理IIS日志文件 :: IIS日志文件目录 set log_dir="C:\inetpub\logs\LogFiles" :: 保留日志天数 set bak_dat=15 :: 删除日志文件 forfiles /p %log_dir% /S /M *.log /D -%bak_dat% /C "cmd /c echo 正在删除@relpath 文件… & echo. & del @file"
将上面的代码保存为deliislog.bat批处理文件,然后在服务器的控制面板的计划任务中添加这个批处理程序,让其每天执行一次就行了。
以上是关于定期删除TOMCAT日志文件的主要内容,如果未能解决你的问题,请参考以下文章
Tomcat 日志清除(含扩展AccessLogValve)