Ubuntu 16.04 apache rotatelogs 日志配置
用Apache自带的rotatelogs程序处理apache生成的日志自动截断重新生成,rotatelogs是一个配合Apache管道日志功能使用的简单程序。
编辑sites-available/default.conf配置文件:
注释掉配置中的log:
#ErrorLog ${APACHE_LOG_DIR}/error.log #CustomLog ${APACHE_LOG_DIR}/access.log combined新增如下两行:
CustomLog "|bin/rotatelogs ${APACHE_LOG_DIR}/access.%Y%m%d.log 86400 480" combined env=!NOLOG ErrorLog "|bin/rotatelogs ${APACHE_LOG_DIR}/error.%Y%m%d.log 86400 480"以年月日为单位记录日志信息。其中480为时差,文件的时间为美国时间,中国的时差要比美国多8个小时也就是480分钟,所以要加上480分钟;
86400为轮转的时间单位为秒。
配置好之后,重启apache。
如果想要设置日志文件的大小,可以添加如下两行:
CustomLog "|bin/rotatelogs ${APACHE_LOG_DIR}/access.%Y%m%d.log 20M 86400 480" combined env=!NOLOG ErrorLog "|bin/rotatelogs ${APACHE_LOG_DIR}/error.%Y%m%d.log 20M 86400 480"意思是日志达到20M 后生成新的日志文件,支持的单位为K,M,G。
以年月日时分秒为单位的,其他支持的日志格式参数如下:
%A 星期名全称(本地的)
%a 3个字符的星期名(本地的)
%B 月份名的全称(本地的)
%b 3个字符的月份名(本地的)
%c 日期和时间(本地的)
%d 2位数的一个月中的日期数
%H 2位数的小时数(24小时制)
%I 2位数的小时数(12小时制)
%j 3位数的一年中的日期数
%M 2位数的分钟数
%m 2位数的月份数
%p am/pm 12小时制的上下午(本地的)
%S 2位数的秒数
%U 2位数的一年中的星期数(星期天为一周的第一天)
%W 2位数的一年中的星期数(星期一为一周的第一天)
%w 1位数的星期几(星期天为一周的第一天)
%X 时间 (本地的)
%x 日期 (本地的)
%Y 4位数的年份
标签: apache rotatelogs