当前位置: > Linux服务器 > apache >

apache 访问日志按周,天,小时轮循设置

时间:2016-05-04 23:59来源:linux.it.net.cn 作者:IT
Apache 的日志默认是直接写入一个独立的 log 文件。如果网站流量大,日志文件很快就会变得很庞大;而 AWStats 等日志分析软件,要求日志文件以天的格式保存。cronolog 正好可以解决这个问题:它可以对 Apache 的日志按需要进行截断处理(cronolog 也是Apache推荐使用的日志工具之一),是使用 AWStats 进行日志分析的基础。这是cronolog 官方网站 http://www.cronolog.org/ 上的介绍: 
 
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. 
 
Linux/Freebsd:
如何让apache日志文件按天生成?我们知道apache日志默认的是无法按天生成的,有时查看一下自己的 apache日志,多达1G,这样根本无法直接打开来查看的,但也可以通过apache日志分割工具将大日志文件分割成小的文件,但这样操作还是比较麻烦的,不如我们直接让apache日志直接按天生成,企不更方便呢?那么,如何让apache日志文件按天生成?下面进入正题:
 
1、apache日志文件按天生成的方法有好几种,比如cronolog软件,您可以从本站下载:cronolog下载.
2、cronolog软件安装比较简单,就按照默认的方式来安装。首先解压cronolog软件
tar xvf ./cronolog-1.6.2.tar.gz
之后进入cronolog-1.6.2目录:cd cronolog-1.6.2
输入:./configure
编译:make
安装make install
 
Freebsd上ports安装cronolog
----------------------------------------------------
#cd cd /usr/ports/sysutils/cronolog/
#make install clean
----------------------------------------------------
 
3、这样就将cronolog软件安装进Linux系统中了。我们可以使用which命令来查看安装的cronolog命令在什么位置:
#whice cronolog 这条命令输入完成,系统会显示/usr/local/sbin/cronolog  这就代表我们已经成功安装好了cronolog。
4、接下来我们配置apache虚拟主机上的日志文件,在这里暂时先不独立主机的配置文件了。
用vim命令打开httpd.conf文件,将Web日志设置 CustomLog 修改为以下格式
CustomLog "|/usr/local/sbin/cronolog /www/logs/example_%Y%m%d.log" combined
当然,错误日志设置 ErrorLog 也可以利用 cronolog 分割,设置为:
ErrorLog "|/usr/local/sbin/cronolog /www/logs/error_%Y%m%d.log"
红色部分可以根据自己的要求来改的。然后保存退出。
 
5、重启apache,services httpd restart.这样就可以让apache按天来生成日志了
 
需要注意的是,你的日志文件夹必须要具有让other组成员可写权限,要不然也不能正常得生成日志文件的,具体的Linux文件和文件夹权限的设置请参照:http://www.linux520.net/3_24_zh.html
 
Windows:
如何在 Linux+Apache 环境下安装 cronolog 的文章很多,此文简单地说明一下 cronolog 在 Windows + Apache 下的安装: 
1. 首先到 cronolog 的网站 http://www.cronolog.org/下载。注意应该下载 Win 32 version (ZIP file) 的版本。目前最新的 win 32 version 是 1.6.1。 
 
2. 将 zip 文件下载之后,将 cronolog.exe 解压并复制到 Apache 的 bin 目录 
 
3. 在 apache 的配置文件 httpd.conf 中, 修改以下代码: 
 
4. CustomLog "|bin/cronolog.exe logs/access_%Y%m%d.log" combined 
ErrorLog "|bin/cronolog.exe logs/error_%Y%m%d.log" 
也可以在虚拟主机配置中使用,例如: 
<VirtualHost *:80> 
ServerName www.we51.cn
    CustomLog "|bin/cronolog.exe logs/xiaohui.com/access_%Y%m%d.log" combined 
    ErrorLog "|bin/cronolog.exe logs/xiaohui.com/error_%Y%m%d.log" 
</VirtualHost> 
 
5. 重新启动 Apache


(责任编辑:IT)
------分隔线----------------------------