ChinaUnix.net 首页 | 博客 | Linux | 论坛 | 人才 | 培训 | 知识库 | 资料 | 读书 | 手册 | 精华 | 下载 | 沙龙 | 搜索
Linux首页 | Linux论坛 | 论坛精华 | 开源新闻 | 技术文章 | 专题专栏 | 新手指南 | 迁移方案 | 产品方案 | 开源项目 | 开源图书 | 软件下载 | 人才招聘 | Linux博客
  搜索

  产品与方案
·中科红旗全面打造现代化邮政体系
·红旗助力“网上审批服务” 推动电子政务
·红旗正版化开创呼和浩特网吧建设新起点
·红旗Linux助信息产业部邮件服务器“快跑”
·中标普华Linux 为电子政务信息化保驾护航
·中标普华Linux助力基金产业
·中标普华Office率先支持UOF标准
·中标普华邮件系统助力西藏政府信息化建设
·红旗Linux助力国库集中支付系统改革
·红旗助中信卫星 掀起GIS通信应用风暴
·红旗软件助力烟草总局 全面建设“数字烟草”
·红旗助力“信访阳光工程”打造畅通信访渠道
·红帽联合FIS发布下一代实时核心银行平台
·红旗助力金盾 打造全无忧出入境信息系统
·红旗Linux全力打造中国邮政总局名址信息库
·爱尔兰证交所从Unix迁移到红帽企业Linux
·一流的意大利银行选择使用红帽企业Linux
·PLUS Finanzservice选择使用红帽企业Linux
·红帽助力TransACT Communications 公司
·法国零售业巨头Lapeyre采用Redhat Linux
·旅游预订网站选择使用红帽企业Linux
·马哈拉施特拉邦政府的红帽解决之道
·美国联邦政府案例
·红帽为慕尼黑展览会提供现代化集群系统
·Yuba郡用开源软件和红帽产品提高了效率
·红帽企业Linux助印度理工建立高性能计算中心
·采用红帽Linux 将系统维护时间缩短了65%
·从UNIX迁移到Linux使Peñoles公司获益非浅
·Hikal公司用红帽企业Linux开展任务关键的ERP项目
·KDE3.5.4新版本发布
·芝加哥商业交易所从Unix向Linux迁移
·南方基金管理有限公司成功案例 Red Hat Linux
·广东北电通讯设备有限公司成功案例
·挪威国家石油公司从UNIX迁移到红帽Linux,成本减半
·中央电视台CCTV动画部案例 Red Hat Linux

  图书

鸟哥的Linux私房菜基础学..


Linux程序设计.第3版


Linux设备驱动开发详解


  下载
·Endian Firewall
·linux kernel(Linux 内核)
·CentOS
·Fedora Core 6
·Scientific Linux
·Slackware 11.0
·Gentoo Linux
·ubuntu-6.10-i386服务器版本
·ubuntu-6.10-amd64服务器版
·ubuntu-6.10-i386桌面版
·ubuntu-6.10-amd64桌面版
·Engarde Linux
您的位置: Linux时代 > 技术文档 > 系统安全 >

多种分割WebServer日志的方法

日期:2006-08-07 作者:Kenny Zhao 来自:Chinaunix


为什么要分割日志
随着网站的访问越来越大,WebServer产生的日志文件也会越来越大,如果不对日志进行分割,那么只能一次将大的日志(如Apache的日志)整个删除,这样也丢失了很多对网站比较宝贵的信息,因为这些日志可以用来进行访问分析、网络安全监察、网络运行状况监控等,因此管理好这些海量的日志对网站的意义是很大的。

本文将总结一些实用的日志分割方法,希望能够方便Linux/Unix管理员对日志文件进行有效的管理,如果文件过多过大,可以删除一些历史的文件。



几种日志分割方法
2.1.1. 用第三方程序cronolog进行日志分割
2.1.2. 用自写的脚本进行日志分割
2.1.3. 用第三方程序newsyslog进行日志分割

2.1.1. 用第三方程序cronolog进行日志分割
这种方法最便捷快速,缺点是只支持Apache。


例 2.1. 用cronolog分割日志

1. 下载cronolog 

官方下载地址: http://cronolog.org/download/cronolog-1.6.2.tar.gz


tar xzvf cronolog-1.6.2.tar.gz
cd cronolog-1.6.2

2. 编译 

./configure

make
make install

3. 修改Apache的配置文件httpd.conf,加入以下代码 

CustomLog "|/usr/local/sbin/cronolog /var/log/httpd/www/access%Y%m%d.log" combined


 注意 
如果Apache中有多个虚拟主机,最好每个虚拟主机中放置一个这样的代码,并将日志文件名改成不同的名字
 


 提示 
/var/log/httpd/www/ 可以更改为任何日志输出路径 


4. 保存配置后重新启动Apache服务 

/etc/rc.d/init.d/httpd stop

/etc/rc.d/init.d/httpd start

最后生成的文件名如以下格式: 

/var/log/httpd/www/access20050918.log


2.1.2. 用自写的脚本进行日志分割
如果因为条件不允许,不能使用cronolog分割,这里提供一种更加简洁的方法,可适合以下系统 

Linux 
Unix
*BSD

例 2.2. 计划任务的方式每天生成一个文件并压缩存放

 注意 
假设:/var/log/httpd/ 为日志存放的路径,access_log 为以前的日志文件名 

1. 创建新文件: /var/log/httpd/log-task.cron 

文件内容如下


#!/bin/bash


YESTERDAY=`date -d yesterday +%Y%m%d`
/usr/bin/gzip -c /var/log/httpd/access_log>/var/log/httpd/access${YESTERDAY}.log.gz
>/var/log/httpd/access_log



保存退出


2. 修改文件的执行权限并测试脚本 

chmod u+x /var/log/httpd/log-task.cron


立即执行一次,测试脚本是否正常工作


 注意 
测试之前建议先备份一下日志文件(/var/log/httpd/access_log) 


测试:

/var/log/httpd/log-task.cron
检查/var/log/httpd 目录下是否已经生成了日期命名的文件。

3. 将该脚本加入到自动运行任务中 

crontab -e

然后将以下的的代码拷贝加入到cron的启动脚本末尾:


1      0      *       *       *       /var/log/httpd/log-task.cron


保存退出。

 提示 
(每天凌晨0点1分系统将自动进行日志回滚任务,最终会在/var/log/httpd目录下每天生成一个压缩的日志文件,文件名如 access20051216.log.gz) 
 

2.1.3. 用第三方程序newsyslog进行日志分割
这种方法适用于SQUID等无法使用cronolog的WebServer,缺点是安装比较复杂。

例 2.3. 用newsyslog分割日志

 注意 
假设:/usr/local/squid/var/logs/ 为日志存放的路径,access.log 为以前的日志文件名 

1. 下载newsyslog 

官方下载地址: http://archives.eyrie.org/software/system/newsyslog-1.8.tar.gz


tar xzvf newsyslog-1.8.tar.gz
cd newsyslog-1.8
2. 编译 

./configure

make
make install

3. 创建一个新的文件 /usr/local/etc/newsyslog.conf 

set squid_logpath = /usr/local/squid/var/logs

set squid_log = /usr/local/squid/var/logs/access.log
set date_squid_log = /usr/local/squid/var/logs/access%Y%M%D.log

SQUID{
        restart: run /usr/local/squid/sbin/squid -k rotate
        log:  SQUID squid_log squid squid 644
        archive: SQUID date_squid_log 0

}



保存退出


 提示 
/usr/local/squid/var/logs 可以更改为任何日志输出路径 


4. 将该脚本加入到自动运行任务中 

crontab -e

然后将以下的的代码拷贝加入到cron的启动脚本末尾:


58      23      *       *       *       /usr/local/sbin/newsyslog


最后生成的文件名如以下格式: 

/usr/local/squid/var/logs/access20050918.log

原文链接:http://chinaunix.net/jh/13/671529.html

本文被浏览



 相关新闻

Debian同安全更新做斗争2006-01-12 15:54:22
Novell推Linux安全新工具 防止黑客攻击2006-01-12 10:20:49
红帽质疑官方报告 称Linux比视窗系统更安全2006-01-10 09:57:45
Linux 新的安全威胁 - 外星 hacker2005-12-21 10:41:19
Linux更安全也更灵活,但也不是完美无缺2005-11-16 10:39:05
中华人民共和国计算机信息系统安全保护条例 (1994)2005-09-29 17:35:31


 相关评论
关于我们 | 联系方式 | 广告合作 | 诚聘英才 | 网站地图 | 免费注册

Copyright © 2001-2006 ChinaUnix.net All Rights Reserved

感谢所有关心和支持过ChinaUnix的朋友们

京ICP证041476号