Apache、Nginx等web服务器日志量巨大,如果不进行切割的话会导致日志文件过大,不容易清理,而且给日志分析收集工作带来麻烦。下例为Apache日志切割脚本,nginx等其他web服务同样适用
代码:
#!/bin/bash
apache_log_path="/usr/local/apache/logs" #指定日志存储位置
log_filenames=`/bin/ls $apache_log_path`
save_days=7 #定义保留7天内日志
#按照日期时间存储日志
/bin/mv $apache_log_path/access_log $apache_log_path/access_log_`date +%F`.log
/usr/local/apache/bin/apachectl -k graceful #重新加载服务
# 查找7天前的日志文件并删除
find
$apache_log_path -mtime +$save_days -
exec
rm
-rf {} \;
ok,将脚本放到crontab定时执行就Ok了,其他web软件同样适用。注意日志文件重命名后需要重新加载服务,否则造成异常
时间: 2024-10-17 04:19:43