Apache自带的rotatelogs实现日志轮转

用Apache自带的rotatelogs程序处理apache生成的日志自动截断重新生成,rotatelogs是一个配合Apache管道日志功能使用的简单程序。设置方法如下:

编辑Apache的主配置文件,更改内容如下:

注释掉如下两行

ErrorLog logs/error_log

CustomLog logs/access_log common

然后添加如下两行
ErrorLog "|/path/to/bin/rotatelogs logs/errorlog.%Y-%m-%d-%H_%M_%S 20M +480"

CustomLog "|/path/to/bin/rotatelogs logs/accesslog.%Y-%m-%d-%H_%M_%S 20M +480" common

意义如下:

errorlog.%Y-%m-%d-%H_%M_%S为生成日志的格式,类似于这样:errorlog.2011-04-16-16_22_10 ,以年月日时分秒为单位的,其他支持的日志格式参数如下:

%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位数的年份

20M 为日志的大小,即为日志达到多大后生成新的日志文件,支持的单位为K,M,G,本处为20M

+480 为时差,文件的时间为美国时间,中国的时差要比美国多8个小时也就是480分钟,所以要加上480分钟

还有其他的设置方法如下:

每天生成一个错误日志文件

ErrorLog "|/path/to/bin/rotatelogs.exe -l logs/error-%Y-%m-%d.log 86400"

其中86400为轮转的时间单位为秒

转载于:https://www.cnblogs.com/yjken/p/3922407.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值