天天看點

通路日志切割

磁盤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,如需轉載請自行聯系原作者