访问日志切割

简介:

磁盘100G,一天一个G日志一直记录总有一天会把整个磁盘占满,虽然不能直接cat或者vim,对于访问日志是不停的在后面追加,所以对它来讲不需要打开这个文件,所以也不会影响到什么效率,但是磁盘占满是很危险的事情,所以有必要让它自动切割,并删除老的日志文件。昨天的日志归档一个文件名字,今天凌晨又一个新的日志开始写,超过一定时间段的比如一个星期或者一个月的该删除的删除或者移走。这样可以保证磁盘永远写不满
把虚拟主机配置文件改成如下: 
<VirtualHost :80>
DocumentRoot "/data/wwwroot/www.123.com"
ServerName www.123.com
ServerAlias 123.com
SetEnvIf Request_URI ".
.gif$" img
SetEnvIf Request_URI "..jpg$" img
SetEnvIf Request_URI ".
.png$" img
SetEnvIf Request_URI "..bmp$" img
SetEnvIf Request_URI ".
.swf$" img
SetEnvIf Request_URI "..js$" img
SetEnvIf Request_URI ".
.css$" img 
CustomLog "|/usr/local/apache2.4/bin/rotatelogs -l logs/123.com-access%Y%m%d.log 86400" combined env=!img //rotatelogs是Apache自带的工具 -l是以系统当前时间为基准。如果不指定-l就会按照utc时间切割日志。%Y%m%d每天切割成不同的名字。86400 规定什么时间去切割。时间段是一天换算成秒是86400 
</VirtualHost>
重新加载配置文件 -t, graceful
ls /usr/local/apache2.4/logs //下面还没有生成新的日志文件所以需要去访问

curl -x192.168.211.149:80 111.com/qq.jpg111 -I //不能在访问jpg后缀的图片了
ls logs/ //生成日期的日志
111.com-access_20171206.log access_log
111.com-access_log error_log
111.com-error_log httpd.pid
后面还有做一个任务计划把超过一个月的日志删除



本文转自 虾米的春天 51CTO博客,原文链接:http://blog.51cto.com/lsxme/2052786,如需转载请自行联系原作者

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
6月前
|
应用服务中间件
截取某一时段日志
截取某一时段日志
|
4月前
|
Java
log4j支持同时按日期和文件大小分割日志
log4j支持同时按日期和文件大小分割日志
35 0
|
7月前
|
运维 监控 安全
使用日志数据的方式
使用日志数据的方式
44 0
|
消息中间件 监控 Kafka
flume搜集日志:如何解决实时不断追加的日志文件及不断增加的文件个数问题
flume搜集日志:如何解决实时不断追加的日志文件及不断增加的文件个数问题
204 0
flume搜集日志:如何解决实时不断追加的日志文件及不断增加的文件个数问题
|
Java Spring
坑爹的日志无法按天切割问题!
线上某个新管理型系统出现了日志无法按天切割生成日志文件的问题,所有的日志都在一个日志文件里面,只有每次重启的时候才会重新生成文件。
126 0
|
Perl
日志切割操作
Linux日志切割操作,取出需要的日志内容
264 0
|
Apache 开发工具
Apache的日志切割
当我们每访问一次网站就会产生若干条日志信息,如果日志都存放在一个文件中,时间久了日志文件将会越来越大,不仅占用空间也不方便运维和开发人员对日志的分析; 此时就需要对日志进行切割,比如按天或者按小时产生新的日志文件。
4525 0
|
前端开发 JavaScript 开发工具

热门文章

最新文章