Apache 日志切割工具cronolog详解

一、前言
大家都知道apache服务器,默认日志文件是不分割的,一个整文件既不易于管理,也不易于分析统计。本博文主要讲解Web服务器日志切割工具cronolog,下面我们就来详细的讲解一下。

二、cronolog 简介
Welcome to cronolog.org, the home of the cronolog web log rotation program.cronolog is a simple filter program that reads log file entries from standard input and writes each entry to the output file specified by a filename template(模板) and the current date and time. When the expanded filename changes, the current file is closed and a new one opened. cronolog is intended to be used in conjunction with a Web server, such as Apache, to split the access log into daily or monthly logs.

cronolog 是一个简单的过滤程序,读取日志文件条目从标准输入和输出的每个条目并写入指定的日志文件的文件名模板和当前的日期和时间。当扩展文件名变化,目前的文件被关闭,并且新生成一个。cronolog 旨在和一个Web服务器一起使用,如Apache,分割访问日志为每天或每月的日志。

三、cronolog 特点
cronolog主要和Web服务器配置使用,特别是Apache服务器,Apache 默认日志文件是不分割的,一个整文件既不易于管理,也不易于分析统计。安装cronolog后,可以将日志文件按时间分割,易于管理和分析。下面是与Apache配置的一些指令:

Custom "|/usr/sbin/cronolog/web/logs/%Y/%m/%d/access.log"
ErrorLog "|/usr/sbin/cronolog/web/logs/%Y/%m/%d/errors.log"

下面是具体案例,

/web/logs/2002/12/31/access.log   
/web/logs/2002/12/31/errors.log 
/web/logs/2003/01/01/access.log
/web/logs/2003/01/01/errors.log

四、cronolog 安装

1.安装yum源

[root@node6 src]# yum install -y wget  vim  //wget vim 工具
[root@node6 src]# wget http://ftp.sjtu.edu.cn/Fedora/epel/6/i386/epel-release-6-8.noarch.rpm 
[root@node6 src]# rpm -ivh epel-release-6-8.noarch.rpm //扩展源
warning: epel-release-6-8.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID 0608b895: NOKEY 
Preparing...                ########################################### [100%] 
  1:epel-release          ########################################### [100%]

2.安装ntp 
[root@node6 src]# yum install -y ntp

3.时间同步
[root@node6 src]# ntpdate 202.120.2.101 
28 Dec 17:59:17 ntpdate[1413]: step time server 202.120.2.101 offset -25666.776448 sec

4.安装cronolog
(1).直接用yum安装

[root@node6 src]# yum install -y cronolog 
[root@Coohx apache]# which cronolog
/usr/sbin/cronolog

(2).源码安装

[root@node6 src]# wget http://cronolog.org/download/cronolog-1.6.2.tar.gz 
[root@node6 src]# tar xf cronolog-1.6.2.tar.gz 
[root@node6 src]# cd cronolog-1.6.2 
[root@node6 cronolog-1.6.2]# ./configure 
[root@node6 cronolog-1.6.2]# make && make install 
[root@localhost ~]# which cronolog 
/usr/local/sbin/cronolog

5.使用cronolog 切割Apache访问日志

使用 cronolog 为每一天建立一个新的日志

[root@Coohx apache]# vim conf/extra/httpd-vhosts.conf

修改CustomLog:
CustomLog "|/usr/sbin/cronolog /usr/local/apache/logs/access_%Y%m%d.log" combined  
      //我使用的是yum安装的cronolog,路径在/usr/sbin/cronolog

也可以按小时

 CustomLog "|/usr/sbin/cronolog /usr/local/apache/logs/access_%Y%m%d%h.log" combined

若使用源码包安装的cronolog,则这样配置:(主要是cronolog路径不同)

CustomLog "|/usr/local/sbin/cronolog /usr/local/apache/logs/access_log.%Y%m%d" combined

需要特别注意的是,这里的apache日志必须使用绝对路径,否则不会生成日志文件

6.另外,未来归类方便,也可以将日志按照月份或者星期进行分目录保存

将上面的 日志路径/usr/local/apache/logs/access_log.%Y%m%d改为

/usr/local/apache/logs/%w/access_log.%Y%m%d (星期)

或者

 /usr/local/apache/logs/%m/access_log.%Y%m%d(月)

原文出处:http://www.linuxidc.com/Linux/2014-01/94780.htm

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值