首页 > 数据库 > mysql教程 > Apache 日志切割

Apache 日志切割

WBOY
发布: 2016-06-07 15:05:13
原创
998 人浏览过

原创作品,允许转载,转载时请务必以超链接形式标明 文章 原始出处、作者信息和本声明。否则将追究 法律 责任。http://lsscto.blog.51cto.com/779396/830031 日志 切割 软件cronolog 下载地址: http://cronolog.org/download/cronolog-1.6.2.tar.gz 1.安装过

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://lsscto.blog.51cto.com/779396/830031

 日志切割软件cronolog

 

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

 

1.安装过程

tar zxvf cronolog-1.6.2.tar.gz

cd cronolog-1.6.2

./configure

make

make install

 

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

ErrorLog "|/usr/local/sbin/cronolog /usr/local/apache2.2.22/logs/error_log_%Y%m%d"

CustomLog "|/usr/local/sbin/cronolog /usr/local/apache2.2.22/logs/access_log_%Y%m%d" combined

如果是虚拟主机,则修改http_vhost.conf,例如

    ServerAdmin ngnix@qq.com

    DocumentRoot "/usr/local/apache2.2.22/htdocs/myisam.com"

    ServerName myisam.com

    ServerAlias bbs.myisam.com

    ErrorLog "|/usr/local/sbin/cronolog /usr/local/apache2.2.22/logs/myisam.com-error_log_%Y%m%d"

    CustomLog "|/usr/local/sbin/cronolog /usr/local/apache2.2.22/logs/myisam.com-access_log_%Y%m%d" 

 

combined

 

    ServerAdmin ngnix@qq.com

    DocumentRoot "/usr/local/apache2.2.22/htdocs/innodb.com"

    ServerName innodb.com

    ServerAlias bbs.innodb.com

    ErrorLog "|/usr/local/sbin/cronolog /usr/local/apache2.2.22/logs/innodb.com-error_log_%Y%m%d"

    CustomLog "|/usr/local/sbin/cronolog /usr/local/apache2.2.22/logs/innodb.com-access_log_%Y%m%d" 

 

combined

 

4.编写脚本dellogs.sh,可以定时删除过期的日志(如下10天前)

#!/bin/bash

find /usr/local/apache2.2.22/logs -mtime 10 -name "innodb.com-*" -exec rm -rf {} ;

 

5.加入crontab

crontab -e

* 2 * * * /usr/local/bin/dellogs.sh > /dev/null  每天凌晨2点执行脚本

 

apache自带日志切割rotatelogs

 

1.直接修改httpd.conf或者虚拟主机配置文件httpd_vhost.conf

ErrorLog "|/usr/local/apache2.2.22/bin/rotatelogs /usr/local/apache/logs/myisam_error_log_%Y-%m-%d

 

-%H_%M_%S 86400"   (86440单位是秒意思是1天)

CustomLog "|/usr/local/apache2.2.22/bin/rotatelogs /usr/local/apache/logs/myisam_access_log_%Y-%m-

 

%d-%H_%M_%S 86400" common 

 

也可以定义日志大小,例如

ErrorLog "|/usr/local/apache2.2.22/bin/rotatelogs /usr/local/apache/logs/myisam_error_log_%Y-%m-%d

 

-%H_%M_%S 5M"   (5M意思是每5M就生成新的日志)

CustomLog "|/usr/local/apache2.2.22/bin/rotatelogs /usr/local/apache/logs/myisam_access_log_%Y-%m-

 

%d-%H_%M_%S 5M" common 

 

注意:rotatelogs设置的时候如果有多个虚拟主机,那么每个虚拟主机都需要配置,不然不会生成我们需要的日

 

志。

 

这两个程序还有一点不同: cronolog 如果日志是放在某个不存在的路径则会自动创建目录,而使用 rotatelogs 

 

时不能自动创建。

本文出自 “流星 ” 博客,请务必保留此出处http://lsscto.blog.51cto.com/779396/830031

 日志切割软件cronolog

 

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

 

1.安装过程

tar zxvf cronolog-1.6.2.tar.gz

cd cronolog-1.6.2

./configure

make

make install

 

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

ErrorLog "|/usr/local/sbin/cronolog /usr/local/apache2.2.22/logs/error_log_%Y%m%d"

CustomLog "|/usr/local/sbin/cronolog /usr/local/apache2.2.22/logs/access_log_%Y%m%d"合并

如果是虚拟主机,则修改http_vhost.conf ,例如

    ServerAdmin ngnix@qq.com

    DocumentRoot "/usr/local/apache2.2.22/htdocs/myisam.com"

    ServerName myisam.com

    ServerAlias bbs.myisam.com

    ErrorLog "|/usr/local/sbin/cronolog /usr/local/apache2.2.22/logs/ myisam.com-error_log_%Y%m%d"

    CustomLog "|/usr/local/sbin/cronolog /usr/local/apache2.2.22/logs/myisam.com-access_log_%Y%m% d" 

 

组合

 

    ServerAdmin ngnix@qq.com

    DocumentRoot "/usr/local/apache2.2.22/htdocs/innodb.com"

    ServerName innodb.com

    ServerAlias bbs.innodb .com

    ErrorLog "|/usr/local/sbin/cronolog /usr/local/apache2.2.22/logs/innodb.com-error_log_%Y%m%d"

    CustomLog " |/usr/local/sbin/cronolog /usr/local/apache2.2.22/logs/innodb.com-access_log_%Y%m%d" 

 

组合

 

4.编写的脚本dellogs.sh,可以删除定时过期的日志(如下10天前)

#!/bin/bash

find /usr/local/apache2.2.22/logs -mtime 10 -name "innodb.com-*" -exec rm -rf {} ;

 

5.加入crontab

crontab -e

* 2 * * * /usr/local/bin/dellogs.sh > /dev/null  每天凌晨2点执行脚本

 

apache自带日志切割旋转日志

 

1.直接修改httpd.conf虚拟或者主机配置文件httpd_vhost.conf

ErrorLog "|/usr/local/apache2.2.22/bin/rotatelogs /usr/local/apache /logs/myisam_error_log_%Y-%m-%d

 

-%H_%M_%S 86400"   (86440 单位是秒英文是1天)

CustomLog “|/usr/local/apache2.2.22/bin/rotatelogs /usr/local/apache/logs/myisam_access_log_%Y-%m-

 

%d-%H_%M_% S 86400" common 

 

也可以定义日志大小,例如

ErrorLog "|/usr/local/apache2.2.22/bin/rotatelogs /usr/local/apache/logs/myisam_error_log_%Y-%m-%d

 

-%H_%M_%S 5M"   (5M 是每 5M 就生成新的日志)

CustomLog "|/usr/local/apache2.2.22/bin/rotatelogs /usr/local/apache/logs/myisam_access_log_%Y-%m-

%d-%H_%M_%S 5M" common 

 

注意:rotatelogs设置的时候如果有多个虚拟主机,那么每个虚拟主机都需要配置,否则不会生成我们需要的日

 

志。

 

这两个程序还有一点不同: cronolog日志是放在某个不存在的路径路径自动创建目录,而使用rotatelogs 

 

时不能自动创建。

论文出自“流星 ”博客,请务必保留此出处http://lsscto.blog.51cto.com/779396/830031

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板