当我们每访问一次网站就会产生若干条日志信息,如果日志都存放在一个文件中,时间久了日志文件将会越来越大,不仅占用空间也不方便运维和开发人员对日志的分析;
此时就需要对日志进行切割,比如按天或者按小时产生新的日志文件。
那么如何进行日志的切割呢?
1.首先第一步需要设置日志文件的路径(默认存在的,可忽略该步骤)
#编辑配置文件 vim /usr/local/apache2/etc/httpd.conf
ErrorLog "logs/error_log" #错误日志
CustomLog "logs/access_log" common #访问日志
#指定日志格式
LogFormat "%h %l %u %t "%r" %>s %b "%{Referer}i" "%{User-Agent}i"" combined
LogFormat "%h %l %u %t "%r" %>s %b" common
2.设置apache的日志切割
#编辑配置文件 vim /usr/local/apache2/etc/httpd.conf
#将ErrorLog "logs/error_log"注释掉添加:
ErrorLog "|/usr/local/apache2/bin/rotatelogs -l /usr/local/apache2/logs/error_%Y%m%d.log 86400"
#将ErrorLog "logs/access_log"注释掉添加:
CustomLog "|/usr/local/apache2/bin/rotatelogs -l /usr/local/apache2/logs/access_%Y%m%d.log 86400" combined
#|将日志交给apache自带的切割工具rotatelog,-l是校准北京时间,日志的格式为 *_年与日.log 每天生成一个日志文件
3.检查配置文件语法并重启apache
apachectl -t && apachectl restart
4.访问网站,查看logs下的日志文件,发现已经有了切割后的日志文件