apache服务器日志分割

默认情况下,apache中的网站,访问日志都是在一个文件中包含着的,时间一长,文件会特别大,根本无法打开查看了。于是想到将日志分割一下,类似于IIS的日志,一天记录一个文件。

linux下,在配置站点的时候,日志保存部分这样来填写:

ErrorLog "|/usr/local/apache/bin/rotatelogs /usr/local/apache/logs/52listen_error_log_%Y%m%d 86400 480"
CustomLog "|/usr/local/apache/bin/rotatelogs /usr/local/apache/logs/52listen_access_log_%Y%m%d 86400 480" combined

windows下的apache,稍微有点不同,按照下面这样来写

ErrorLog "|bin/rotatelogs.exe logs/52listen_error_log_%y%m%d.log 86400 480"
CustomLog "|bin/rotatelogs.exe logs/52listen_access_log_%y%m%d.log 86400 480" common

这样一来,网站访问日志会被apache自带的rotatelogs 工具分割开。在查看以及分析日志的时候,就可以按照时间选取需要的日志来查看了。

 



apache默认是没有对日志进行分割的要做的话用cronolog.exe工具或者是apache自带的rotatelogs命令来实现
用得比较多的是cronolog.exe所以就告诉你cronolog.exe的方法

1.吧cronolog.exe工具拷贝到apache\bin目录下
2.修改httpd.conf配置文件,找到customlog这一行
3.修改成如下格式:CustomLog "|/usr/local/sbin/cronolog /usr/local/apache/logs/%Y_%m_%d.access.log" combined
这里是按照每天来生成日志的
4.重启apache服务就可以了


在虚拟主机中
用cronolog分割日志 
首先需要下载和安装cronolog,可以到http://www.cronolog.org/ 下载最新版本的cronolog,当前版本号是cronolog-1.6.1-win32,解压,文件中有cronolog.exe程序文件,把此文件拷贝到apache文件夹中 /bin 目录下。
在虚拟目录中   配置文件httpd-vhosts.conf 内容如下:
<VirtualHost *:80>
    ServerAdmin   [email]webmaster@2meixiong.com[/email]
    DocumentRoot E:/www/2meixiong
    ServerName 2meixiong.com
    ErrorLog "|d:/php/apache2.2/bin/cronolog.exe E:/www/2meixiong/weblog/error%Y%m%d.log"
     TransferLog "|d:/php/apache2.2/bin/cronolog.exe E:/www/2meixiong/weblog/access%Y%m%d.log"
</VirtualHost>
说明:
以上 配置文件 中 "d:/php/apache2.2/bin/" 为你服务器apache的 /bin 目录;"E:/www/2meixiong/"为你的网站源文件所在的目录;weblog是保存网站日志的文件夹名称。

 

posted @ 2013-12-25 12:21  撑着破伞去看雨  阅读(577)  评论(0)    收藏  举报