Apache日志分割(rotatelogs、cronolog)

为什么要进行日志分割?

随着网站的访问量越来越大,web服务器产生的日志文件也会越来越大,如果不对其进行分割管理,单个日志文件会变得异常庞大,不利于对日志进行综合分析、监控等。另外,当服务器遇到故障时,运维人员就要打开日志文件进行分析,打开的过程必然会消耗很长时间,也势必会增加处理故障的时间。因此管理好海量的日志文件对管理网站是有重大意义的。

以下介绍两种常见的日志分割方法:

一. Apache自带的rotatelogs分割工具

1.查询rotatelogs命令的绝对路径

which rotatelogs

2. 编辑httpd.conf配置文件

vim /etc/httpd/conf/httpd.conf

修改配置文件,主要是CustomLog参数

<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "/usr/local/apache/htdocs"
ServerName www.test.com
ErrorLog "|/usr/sbin/rotatelogs -l /usr/local/apache/logs/www.test.com-error%Y%m%d.log"
CustomLog "|/usr/sbin/rotatelogs -l /usr/local/apache/logs/www.test.com-access
%Y%m%d.log 86400" combined //定义访问日志格式,其中86400表示一天,即每天生成一个新的日志文件
</VirtualHost>

注意:rotatelogs -l 使用本地时间代替GMT时间作为时间基准,在一个改变GMT偏移量(比如夏令时)的环境中使用-l会导致不可预料的结果。

3. 创建日志文件目录

mkdir -p /usr/local/apache/logs

4. 创建web站点目录

mkdir -p /usr/local/apache/htdocs

5. 重启Apahce服务

service httpd stop      //停止
service httpd start     //开启

6. 测试

二. 第三方工具cronolog日志分割

1. 解压缩源码包至/opt目录下

tar xzvf cronolog-1.6.2.tar.gz -C /opt

2. 进入cronolog目录下

cd /opt/cronolog-1.6.2/

3. 配置

./configure

4. 编译及安装

make && make install

5. 查看cronolog命令的绝对路径

which cronolog

6. 编辑Apache配置文件

vim /etc/httpd/conf/httpd.conf

修改配置文件,主要是CustomLog参数

<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "/usr/local/apache/htdocs"
ServerName www.test.com
ErrorLog "|/usr/local/sbin/cronolog /usr/local/apache/logs/www.test.com-error%Y%m%d.log"
CustomLog "|/usr/local/sbin/cronolog /usr/local/apache/logs/www.test.com-access
%Y%m%d.log" combined
</VirtualHost>

7.重启htppd服务

service httpd restart

8.测试

原文地址:http://blog.51cto.com/10316297/2130157

时间: 2024-10-08 20:04:31

Apache日志分割(rotatelogs、cronolog)的相关文章

Apache日志分割

1.cronolog安装 采用 cronolog 工具进行 apache 日志分割 http://download.chinaunix.net/download.php?id=3457&ResourceID=1851 下载上传安装包文件到服务器 安装日志分割工具: [[email protected] ~]# cd /data/ [[email protected] data]#tar -xvf  cronolog-1.6.2.tar.gz [[email protected] cronolog

Apache日志分割&amp;日志分析

Apache日志分割 随着网站的访问量越来越大,默认情况下Apache服务器产生的单个日志文件也会越来越大,如果不采用日志分割,当日志文件不断增大时,当占用太大的磁盘空间时将会被系统删除,而且随着日志文件的增大,对于管理员对Apache服务器进行访问分析.网络安全监察.网络运行状况监控等操作带来较大难度,因此管理这些海量日志对网站的意义重大. 实验描述: 完成对Apache的日志分割 本实验采用Apache2.2版本 服务器IP:192.168.100.107 所需服务:httpd.DNS 服务

apache 日志轮询+cronolog

1.apache日志有两种,分别为: 通用日志格式:(ComminLog Format)  比较简单 组合日志格式: (CombinedLOG Format)工作中习惯使用,比较复杂2.查看的位置: vi httpd.conf <IfModule logio_module> 196 <IfModule log_config_module> 197     # 198     # The following directives define some format nickname

apache日志轮询cronolog安装配置

centos安装很简单 yum install epel-release yum install cronolog 然后配置虚拟主机 [[email protected] ~]# vim /opt/app/apache/conf/extra/httpd-vhosts.conf (虚拟主机配置文件) # # <VirtualHost *:80> ServerAdmin sadoc.blog.51cto.com DocumentRoot "/var/www" ServerNam

日志分割工具——cronolog

使用cronolog可以格式化日志文件的格式,比如按时间分割,易于管理和分析. 1.下载软件 http://cronolog.org/download/index.html 用法见 lighttpd配置文件

window apache 日志分割

apache  [ httpd.conf ]配置文件 #ErrorLog "logs/error.log" ErrorLog "|bin/rotatelogs.exe -l logs/error-%Y-%m-%d.log 2M" Windows下虚拟主机的日志切割 <VirtualHost *:80> ServerAdmin [email protected] DocumentRoot "D:/wamp/www" ServerName

Apache日志分割脚本

[产生背景] 随着公司的ntp中心服务器访问越来越大,access日志也是日益增加,原有的日志没有进行切割,单个日志文过大(最大的有3.7G),若清理磁盘空间会将访问日志整个删除,这样会丢失很多重要的信息,因此对日志进行切割是很有必要的,这样若日后文件过多,也可以删除历史文件. [脚本] #!/bin/bash YESTERDAY=$(date -d yesterday +%Y%m%d) GZIP="gzip -c" LOG_FILE="/etc/httpd/logs/acc

怎么解决apache日志文件太大的问题

原文地址:http://un173.blog.51cto.com/8263566/1598346 管理apache服务器有些年头,虽然最近几年被nginx抢了不少风头,但我依然钟爱apache. 喜欢它强劲的并发处理能力,以及forker与worker模式间自由选择的快感,哈哈. 熟悉linux下apache运维的朋友,多少都会遇到过apache日志文件太大的问题,网站刚上线时不会在意到这个问题,因为流量小,自然error.log与access.log文件内容也就少,文件容量不大,因此,配置时也

Tomcat实现日志分割

Tomcat日志分割 实现目的: 由于现实生产中,Tomcat服务每天产生的日志文件中的数据特别庞大,服务器存储空间有限.为了解决空间不足问题,因此实现日志分割,添加日志压缩 环境:系统版本:CentOS Linux release 6.0 (Final) 软件版本:Cronolog-1.6.2.tar.gz Tomcat日志分割工具cronolog 1.下载cronolog-1.6.2.tar.gz 2.安装 # tar zxvf cronolog-1.6.2.tar.gz # ./confi