Apache日志分割(rotatelogs与cronolog)

日志分割

简介

随着网站的访问量增加,默认情况下Apache的单个日志文件也会越来越大
日志文件占用磁盘空间很大

  • 查看相关信息不方便
  • 对日志文件进行分割

工具

  1. Apache自带rotatelogs分割工具实现
  2. 第三方工具cronolog分割

rotatelogs分割工具

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

配置格式

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

编辑配置文件

[root@server1 ~]# vi /etc/httpd.conf 
[root@server1 ~]# systemctl start httpd
[root@server1 ~]# systemctl status httpd

日志设置

ErrorLog "|/usr/bin/rotatelogs -l logs/error_log_%Y-%m-%d 86400"
-l:表示使用本地时间
/error_log:日志名称
%Y-%m-%d:年--86400:表示日志分隔的间隔是1天,单位是秒
CustomLog "|/usr/bin/rotatelogs -l logs/access_log_%Y-%m-%d 86400" common   //错误日志

在这里插入图片描述

查看日志文件

[root@server1 ~]# cd /usr/local/httpd/logs/
[root@server1 logs]# ls -lh

在这里插入图片描述

cronolog日志分割

解压缩安装包

[root@server1 ~]# tar zxvf cronolog-1.6.2.tar.gz 

文件默认设置

[root@server1 ~]# cd cronolog-1.6.2/
[root@server1 cronolog-1.6.2]# ./configure

编译安装

[root@server1 cronolog-1.6.2]# make && make install

查看日志

[root@server1 cronolog-1.6.2]# vi /etc/httpd.conf 
ErrorLog "|/usr/local/sbin/cronolog logs/error.log_%Y-%m-%d"
CustomLog "|/usr/local/sbin/cronolog logs/access.log_%Y-%m-%d" common

在这里插入图片描述

[root@server1 ~]# systemctl start httpd
[root@server1 ~]# httpd -t                              
[root@server1 ~]# systemctl stop firewalld   
[root@server1 ~]# setenforce 0                    
[root@server1 ~]# cd /usr/local/httpd/logs/    
[root@server1 logs]# ls -lh
-rw-r--r--.1 root root 286 1126 17:16 access_log
-rw-r--r-- l root root 383 1126 18:02 access.log_2020-11-26
-rw-r--r--.1 root root 288 1126 18:16 error_log
-rw-r--r-- l root root 286 1126 17:00 error.log_2020-11-26
-rw-r--r-- l root root   5 1126 18:00 httpd.pid

AWstats日志分析

  • 不同于日志分割,是对整个日志进行分析
[root@server1 ~]# vi /etc/httpd.conf 
[root@server1 ~]# systemctl start httpd
[root@server1 ~]# httpd -t
[root@server1 ~]# systemctl status httpd

ErrorLog "logs/error_log"
CustomLog "logs/access_log" common

在这里插入图片描述

配置文件

修改配置

[root@server1 modules]# vi /etc/httpd.conf 
[root@server1 modules]# cd
LoadModule cgid_module modules/mod_cgid.so
LoadModule cgi_module modules/mod_cgi.so

解压安装包

[root@server1 ~]# tar zxvf awstats-7.6.tar.gz 

配置映射

[root@server1 ~]# mv awstats-7.6 /usr/local/awstats
[root@server1 ~]# vi /etc/hosts   映射记录
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1       localhost localhost.localdomain localhost6 localhost6.localdomain6 
192.168.100.10 www.aaa.com l
[root@server1 ~]# vi /etc/httpd.conf 
ServerName www.aaa.com:80
[root@server1 ~]# cd /usr/local/
[root@server1 local]# ls -lh
[root@server1 local]# chown -R root.root awstats/
[root@server1 local]# cd awstats/
[root@server1 awstats]# ls -lh
[root@server1 awstats]# cd tools/    //进入工具目录
[root@server1 tools]# ./awstats_configure.pl   //找到配置脚本

对AWstats文件进行配置

[root@server1 tools]# vi /etc/awstats/awstats.www.aaa.com.conf
LogFile="/usr/local/httpd/logs/access_log"
DirData="/var/lib/awstats"

在这里插入图片描述

[root@server1 tools]# cd
[root@server1 ~]# cd /var/lib/awstats
[root@server1 ~]# mkdir /var/lib/awstats

删除多余文件进行配置

[root@server1 ~]# cd /usr/local/httpd/logs/
[root@server1 logs]# ls -lh
[root@server1 logs]# rm -rf access.log*
[root@server1 logs]# rm -rf error.log*

[root@server1 ~]# cd /usr/local/awstats/tools/
[root@server1 tools]# ls -lh

日志更新

[root@server1 tools]# ./awstats_updateall.pl now

在这里插入图片描述

[root@server1 ~]# vi /etc/httpd.conf 
[root@server1 ~]# systemctl  stop httpd
[root@server1 ~]# systemctl start  httpd
//添加
Require all granted

在这里插入图片描述

[root@server1 tools]# vi /etc/httpd.conf 

在这里插入图片描述

编辑awstats的配置文件

[root@server1 tools]# vi /etc/awstats/awstats.www.aa.com.conf
[root@server1 tools]# systemctl start httpd

LogFile="/usr/local/httpd/logs/access_log"

在这里插入图片描述

重启主机,查看日志

[root@server1 ~]# cd /usr/local/httpd/logs/
[root@server1 logs]# ls -lh

手动采集日志

[root@server1 logs]# cd
[root@server1 ~]# cd /usr/local/awstats/tools/
[root@server1 tools]# ./awstats_updateall.pl now

在这里插入图片描述

[root@server2 ~]# mkdir /var/lib/awstats
[root@server2 awstats]# systemctl stop httpd
[root@server2 awstats]# systemctl start httpd
[root@server2 tools]# ./awstats_updateall.pl  now

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值