Apache服务日志分割(rotatelogs、cronolog)

Apache服务日志分割(rotatelogs、cronolog)

日志分割

日志的作用

  • 随着网站的访问量增加,默认情况下的Apache的单个日志文件也会越来越大
  1. 日志文件占用磁盘空间
  2. 查看相关信息不方便
  • 对日志文件进行分割
  1. Apache自带rotatelogs分割工具实现
  2. 第三方工具cronolog分割

rotatelogs分割工具

配置网站的日志文件转交给rotatelogs分割处理

配置格式

ErrorLog "| rotatelogs命令的绝对路径 -l 日志文件路径/网站名-error_%Y%m%d.log 86400"

CustomLog "| rotatelogs命令的绝对路径 -l 日志文件路径/网站名-access_%Y%m%d.log 86400" combined

实验

配置httpd服务

[root@localhost ~]# yum -y install httpd
[root@localhost ~]# vim /etc/httpd/conf/httpd.conf
Listen 192.168.136.10:80
#Listen 80
ServerName www.kgc.com:80

利用rotatelogs工具对日志文件分割

启动服务,查看生成的日志文件

[root@localhost ~]# setenforce 0
[root@localhost ~]# iptables -F
[root@localhost ~]# systemctl start httpd     ## 启动服务
[root@localhost ~]# ls /var/log/httpd/        ## 查看httpd目录下的有哪些文件
access_log  error_log                         ## 有两个日志文件存在

编辑http服务配置文件,进行日志分割的相关配置

[root@localhost ~]# vim /etc/httpd/conf/httpd.conf
分别对182和217行进行修改:
ErrorLog "| /usr/sbin/rotatelogs -l logs/www.test.com.error_%Y%m%d.log 86400"
CustomLog "| /usr/sbin/rotatelogs -l logs/www.test.com.access_%Y%m%d.log 86400" combined

重启http服务出现了2个日志文件

[root@localhost ~]# systemctl restart httpd
[root@localhost ~]# ls /var/log/httpd/
access_log  error_log  www.kgc.com.access_20200805.log  www.kgc.com.error_20200805.log

cronolog日志分割工具

我们也可以使用第三方工具cronolog工具对日志进行分割

  • 源码编译安装cronolog工具
  • 配置网站日志文件转交给cronolog分割处理
  • 配置格式
ErrorLog "| cronolog命令的绝对路径 日志文件路径/网站名-error_%Y%m%d.log"

CustomLog "| cronolog命令的绝对路径 日志文件路径/网站名-access_%Y%m%d.log" combined

利用cronolog工具对日志文件分割

将源码包(cronolog-1.6.2-14.el7.x86_64)上传到虚拟机

[root@localhost ~]# cd /opt
[root@localhost opt]# rpm -ivh cronolog-1.6.2-14.el7.x86_64.rpm 
删除之前实验生成的日志文件
[root@localhost opt]# cd /var/log/httpd/
[root@localhost httpd]# rm -rf www*

修改http服务主配置文件

[root@localhost httpd]# vim /etc/httpd/conf/httpd.conf 

将刚才的182和217行进行修改:

ErrorLog "| /usr/sbin/cronolog logs/www.test.com.error_%Y%m%d.log"
CustomLog "| /usr/sbin/cronolog logs/www.test.com.access_%Y%m%d.log" combined

修改完成后重启服务,使用ls命令查看日志目录下的日志文件

[root@localhost httpd]# systemctl restart httpd    ## 重启服务

[root@localhost httpd]# ls /var/log/httpd/        ## 查看日志文件
access_log  error_log  www.test.com.access_20200805.log  www.test.com.error_20200805.log
     ## 查看日志文件
access_log  error_log  www.test.com.access_20200805.log  www.test.com.error_20200805.log
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值