Ubuntu 16.04 apache rotatelogs 日志配置

2019-3-25 Stone 运维

用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

评论(0) 浏览(904)

Copyright © 2019 by 海角孤星 京ICP备15056837号-1