一,cronolog下载ronolog包:wget -P /usr/lcoal http://cronolog.org/download/cronolog-1.6.2.tar.gz
1,install:
cd /usr/local && tar xf cronolog-1.6.2.tar.gz && cd cronolog-1.6.2 && ./configure && make && make install
2,配置httpd.conf
[tangzhengchao@Aliyun-live2 conf]$ vim httpd.conf
搜索关键字找到位置修改
278 ErrorLog "|/usr/local/sbin/cronolog /alidata/server/httpd/logs/error_%w.log"
307 CustomLog "|/usr/local/sbin/cronolog /alidata/server/httpd/logs/access_%w.log" combined
日志存放在/alidata/server/httpd/logs/下,以access_和error_开头命名,以%w.log结尾,%w表示0-6的某一天,从开始计算,一直轮询
[tangzhengchao@Aliyun-live2 vhosts]$ ll /alidata/server/httpd/logs/
total 480
-rw-r--r-- 1 root root 1203 Mar 30 17:29 error_3.log
3,配置dl.16889999.com.conf
[tangzhengchao@Aliyun-live2 vhosts]$ vim dl.16889999.com.conf
ErrorLog "|/usr/local/sbin/cronolog /alidata/log/httpd/dl.16889999.com-error-%w.log"
CustomLog "|/usr/local/sbin/cronolog /alidata/log/httpd/dl.16889999.com-access-%w.log" vhost_common env=!dontlog
[tangzhengchao@Aliyun-live2 vhosts]$ ll /alidata/log/httpd/dl.16889999.com*
-rw-r--r-- 1 root root 165445 Mar 30 23:59 /alidata/log/httpd/dl.16889999.com-access-3.log
-rw-r--r-- 1 root root 266742 Mar 31 10:39 /alidata/log/httpd/dl.16889999.com-access-4.log
4,配置[tangzhengchao@Aliyun-live2 logs]$ vim ../conf/vhosts/jds.jince.com.conf
ErrorLog "|/usr/local/sbin/cronolog /alidata/log/httpd/jds.jince.com-error-%w.log"
CustomLog "|/usr/local/sbin/cronolog /alidata/log/httpd/jds.jince.com-access-%w.log" vhost_common env=!dontlog
[tangzhengchao@Aliyun-live2 vhosts]$ ll /alidata/log/httpd/
total 69996
-rw-r--r-- 1 root root 57273 Mar 30 17:37 jds.jince.com-access-3.log
-rw-r--r-- 1 root root 38541 Mar 31 10:56 jds.jince.com-access-4.log
cronolog配置:ronolog安装完成后,默认/usr/local/sbin/cronolog在$apache.conf中(或者vhosts配置文件)
错误日志 "|cronolog位置 /日志存放路径_%w周期.logErrorLog "|/usr/local/sbin/cronolog /alidata/server/httpd/logs/error_%w.log"访问日志 "|cronolog位置 /日志存放路径_%w周期.log combined 结尾CustomLog "|/usr/local/sbin/cronolog /alidata/server/httpd/logs/access_%w.log" combined
当设置完成后,会从日期的形式(每日)自动分割日志。如:access_0.log ,直到access_6.log结尾,下个周期则轮训覆盖,只保留最新7天日志!
二:rotatelogs分割找出rotatelogs位置
[root@localhost local]# find / -name rotatelogs
/usr/sbin/rotatelogs
修改配置文件
ErrorLog "| /usr/sbin/rotatelogs /var/log/httpd/error_%Y%m%d.log 86400 480"
CustomLog "| /usr/sbin/rotatelogs /var/log/httpd/access_%Y%m%d.log 86400 480" common
86400:86400 表示一天,即每天生成一个新的日志文件。480:相对于UTC的时差的分钟数。如果省略,则默认为0,并使用UTC时间。比如,要指定UTC时差为-5小时的地区的当地时间,则此参数应为-300,北京时间为+8时间,应设置为480。这样日志里的时间才会和服务器上的时间一致,方便查看日志。