Apache和Ngix一样,对日志没有进行分割处理,这样很不方便日志的管理,比如你想只保留最近一个星期的日志文件。另外,进行日志分割之后,也方便访问日志的分析处理和统计。参考网上的Apache日志分割方法和步骤,用一个bash脚本和任务计划进行每天的日志分割。
#!/bin/bash
LOG_PATH='/var/log/httpd/' #日志的路径
EXPIRED=7 #保存7天前的日志
PID='/var/run/httpd.pid' #httpd pid路径
if [ ! -d ${LOG_PATH}oldlog ]; then
mkdir ${LOG_PATH}oldlog
fi
datetime=$(date -d yesterday +%Y%m%d) #昨天的日期
logs=`find $LOG_PATH -maxdepth 1 -type f -name '*log'`
for log in $logs
do
fname=`echo $log | awk -F "/" '{print $NF}'`
mv ${log} ${LOG_PATH}oldlog/${datetime}"."${fname}
done
kill -USR1 $(cat ${PID})
find ${LOG_PATH}oldlog -type f -mtime +${EXPIRED} -exec rm -f {}
sleep 5
添加任务计划:0 0 * * * /usr/local/bin/Cutlog > /dev/null
每天的0点0分执行日志分割任务
需要注意的地方:kill -USR1 $(cat ${PID}) 给apache服务进程发送USR1信号,使其重新打开日志文件;否则,日志数据会继续写到重命名之后的文件里面。
分享到:
相关推荐
Apache日志分割是管理和分析大型Web服务器日志文件的一种常见方法。Apache,作为最流行的开源Web服务器,会产生大量的访问日志,这些日志记录了所有客户端请求的详细信息。随着时间的推移,单个日志文件可能会变得...
### Apache日志分割工具Cronolog 在现代的IT运维管理中,日志管理是非常重要的一环,尤其对于像Apache这样的高性能Web服务器来说更是如此。随着网站访问量的增长,单一的日志文件会变得异常庞大,这不仅使得日志...
终极解决apache乱码和日志分割问题,LoadModule encoding_module modules/mod_encoding.so Header add MS-Author-Via "DAV" </IfModule>
使用cronolog进行日志分割 为了实现日志文件的按天分割,需要使用cronolog工具。访问cronolog官网(http://cronolog.org/download/index.html),下载适用于Windows的版本。将解压缩后的cronolog.exe复制到Apache...
对于Tomcat服务器而言,日志分割(log rotation)是一个常用且实用的功能,尤其是在高流量、长时间运行的应用场景下,避免日志文件过大而影响性能或磁盘空间。本文将深入探讨如何使用Log4j实现Tomcat的日志分割,以...
4. 同时,我们还可以配置`org.apache.juli.FileHandler`的`rotator`属性,使用第三方库如`logrotate`来实现更复杂的日志分割策略。 在讨论了日志分割后,我们转向另一个重要话题:防止Tomcat重复启动。重复启动...
Linux tomcat下catalina.out日志文件分割 前言: tomcat默认使用Java.util.logging记录日志,默认只记录tomcat的日志,不记录应用的日志。tomcat支持采用log4j进行日志记录,配置方法如下: 1.更新最新的tomcat_juli...
为了解决这一问题,可以使用专门的日志分割工具来实现日志文件的自动切割。cronolog是一款功能强大的日志轮转工具,它可以按照预设的时间规则(如每天、每周等)自动将旧的日志文件进行切割,并生成新的日志文件继续...
日志分割是日志管理的一个重要组成部分,它涉及到将大量的连续日志数据按照特定的时间间隔或者大小进行切割,以便于存储、检索和分析。本压缩包“日志分割源码包.zip”包含了两个与日志处理相关的工具源代码:...
#### 一、Apache日志文件分隔——使用`rotatelogs` `rotatelogs`是Apache自带的一个实用工具,用于实现日志文件的自动轮换功能。通过它,可以有效地控制单个日志文件的大小,避免日志文件过大带来的问题。下面将...
《深入理解Tomcat日志分割》 在Java Web开发中,Tomcat作为一款广泛应用的开源Servlet容器,其日志管理是运维和开发者关注的重要部分。本文将深入探讨Tomcat的日志系统,特别是日志分割这一关键特性,帮助你更好地...
rotatelogs 是 Apache 2.2 中自带的管道日志程序 语法 代码如下:rotatelogs [ -l ] logfile [ rotationtime [ offset ]] | [ filesizeM ] 选项-l使用本地时间代替GMT时间作为时间基准。注意:在一个改变GMT偏移量...
由于以前经常用IIS配置网站,所以现在突然改成使用Apache会有很大的不适应和遇到一些从没见过的困难,相信很多朋友也一样有这个苦恼,于是在各搜索引擎找解决办法。因为自己的经验不足,经常被搜索出来的一些经验所...
二、Apache日志切分 日志切分有助于管理大量日志数据,便于分析和存储。cronolog是一个用于日志切分的工具,它可以根据日期和时间将日志文件分割成不同的小文件。 1. **access.log日志切分**: 将`CustomLog`指令...
【Apache错误日志时时查看(2014.9.22)】 Apache作为全球最流行的Web服务器之一,其稳定性与高效性深受开发者喜爱。在日常运维过程中,定期...文件名`apache_log`可能是指用于收集、分析或处理Apache日志的程序或脚本。
三、验证日志分割 隔天检查`$CATALINA_BASE/logs`目录,你应该能看到类似`catalina.out.2022-08-10`这样的日志文件,表明日志已按照日期成功分割。`cronolog`会根据配置自动创建新的日志文件,每天一个新的文件,...
### Apache日志分析 #### 一、引言 在当今高度数字化的世界中,Web服务器的日志文件成为了解网站性能、安全性和用户行为的关键途径之一。Apache作为全球最广泛使用的Web服务器之一,其日志文件的分析显得尤为重要...
### 使用CDN后Apache日志记录中IP地址不正确的解决方案 #### 一、问题背景 在互联网技术中,CDN(Content Delivery Network,内容分发网络)被广泛应用于提高网站内容加载速度,优化用户体验。然而,在引入CDN之后...