Apache日志分割/分析

一.日志分割

1.原因

1.随着网络的访问量的增加,默认情况下Apache的单个日志文件也会越来越大。
2.日志文件占用磁盘空间很大
3.查看相关信息不方便

2.对日志文件进行分割

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

3.配置日志分割

 vi /etc/httpd.conf
 Errorlog "|/usr/bin/rotatelogs -l logs/www.aa.com_error_%Y%m%d.log 86400" 
  //通过管道把日志文件交给rotatelogs工具 -l指使用本地时间 86400表示日志分割的时间间隔为1天,单位是秒。
 ErrorLog “|/usr/bin/rotatelogs -l logs/www.bc.com-error_%Y%m%d%H.log 7200"    //两个小时
 CustomLog "|/usr/bin/rotatelogs -l logs/www.aa.com_access_%Y%m%d.log 86400"common
 //j将访问日志以一天为间隔进行分割。
 service httpd restart

4.使用cronolog进行日志分割

1.先添加cronolog压缩包,编译安装
tar -zxvf cronolog-1.6.2.tar.gz
cd cronolog-1.6.2
./configure && make && make install
2. 查看路径
which cronolog
3. 定义日志格式
LogFormat "%h %l %u %t \"%r\"%>s %b" common//定义日志的格式
4.进入配置文件替换工具路径
#ErrorLog "logs/error_log"
 ErrorLog "|/usr/local/sbin/cronolog logs/%Y-%m-%d-error_log"
#CustomLog "logs/access_log"  common
 CustomLog "|/usr/local/sbin/cronolog logs/%Y-%m-%d- access_log" common
5.验证
apachectl -t

二.日志分析

1.概述

 1.Perl语言开发的一款开源日志分析系统
 2. 可用来分析Apache、Samba、Vsftpd、LLS等服务器的访问日志
 3.结合crond等计划任务服务,可对日志内容定期进行分析

2.配置

1.手动加载cgi模块

 1.首先验证cg模块
 apachectl -D DUMP_MODULES | grep cgi  //确认加载了cgi模块
 ls /usr/local/httpd/modules/ | grep cgi   //确认是否编译过cgi模块
 2.开启apache的cgi模块
vi /usr/local/httpd/conf/httpd.conf
<IfModule !mpm_prefork_module>
    LoadModule cgid_module modules/mod_cgid.so
</IfModule>
<IfModule mpm_prefork_module>
    LoadModule cgi_module modules/mod_cgi.so
</IfModule>

2.编译安装awstats

tar -zxvf awstats-7.6.tat.gz
mv awstats-7.6 /usr/local/awstats

3.设置Apache服务器域名及hosts域名解析

vi /etc/hosts
192.168.52.11  www.aa.com
grep "ServerName"/etc/httpd.conf//在配置文件中定义主机名为www.aa.com

4.自动执行配置脚本,根据提示回复交互信息

cd /usr/local/awstats/tools
./awstats_configure.pl

5.交互

  /user/local/httpd/conf/httpd.conf       //http配置文件路径
  转换日志格式为combined
  其他选择y然后回车就可以

6.访问日志的网站

http://192.168.52.11/awstats/awstats.pl?config=www.aa.com
先记录下来,可以通过IP地址访问
service httpd restart    //重启让日志格式生效

7.修改awstats程序主配置文件

vi /etc/awstats/awstats.www.aa.com.conf 
LogFile="/usr/local/httpd/logs/access_log"  //修改日志文件位置,50行
DirData="/var/lib/awstats"  //建立每次抓取的数据存放位置,220行

手动创建抓取数据存放目录
mkdir /var/lib/awstats

8.清空*log

如果之前修改过日志格式需要清空一下
cd /usr/local/httpd/logs
rm -f *log
service httpd restart    /重启

9.添加awstats访问权限

vi /usr/local/httpd/conf/httpd.conf
<Directory "/usr/local/awstats/wwwroot">
Options None
AllowOverride None
Order allow,deny
Allow from all
Require all granted		//添加此配置
</Directory>

10.手动采集

cd /usr/ local/ awstats/ tools  
chmod +x awstats updateall.pl
./awstats_updateall.pl now7   //手动采集一次数据
perl /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update //日志出错时,重置更新
/usr/local/awstats/tools/awstats_updateall.pl now再次采集
crontab -e

*/5 * * * */usr/local/awstats/tools/awstats_updateall.pl now

11.通过配置页面自动跳转优化页面访问

vi /usr/ local/httpd/htdocs/index.html
<html>
<head>
<meta http-equiv=refresh  content="0;ur1=http://192.168.52.11/awstats/awstats.p1?config=www. aa. com">
</ head>
<body></body></html>

12.打开网址

 http://192.168.52.11/awstats/awstats.pl?config=www.aa.com
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值