ITPub博客

首页 > IT基础架构 > 服务器/存储 > AWStats分析nginx日志(access.log)

AWStats分析nginx日志(access.log)

原创 服务器/存储 作者:神谕丶 时间:2015-02-04 11:24:38 0 删除 编辑
随手记,仅供参考。


  • 切割

        首先将nginx做切割,将access.log按天归档存放。
        可参考:http://blog.itpub.net/29773961/viewspace-1409066/

  • 安装awstats

        awstats的工具和脚本均由perl编写,所以在使用前需确认你的os中perl是否安装,rhel可以简易通过yum来安装或者更新perl。

        官网下载:
        http://www.awstats.org/
        
        
        最新版本是7.4,2015年1月份的最新版本。
        在这里我没有用最新版本,用的是7.2版本:
        
        要获得版本的差别,可以参考官网的文档。

        下载好后,通过tar -xzvf解压。
        我将解压后的文件夹改名成awstats并放入/usr/local中。
        
        
        cd /usr/local/awstats/tools
        执行./awstats_configure.pl开始安装
        其中会遇到几个问题,都看得懂英文,一路按照提示安下来。
        其中需要输入your web site, virtual server or profile name:
        这个实际上随意,实际上是修改/etc/awstats/中对应配置文件的文件名。
        但根据习惯,还是建议输入你想分析的站点名称。

      然后修改配置文件
        vi /etc/awstats/awstats.*.conf
        *是之前输入的web site

        找到LogFile,修改为:
        LogFile="*/access_%YYYY-24%MM-24%DD-24.log"
        其中*对应为存放归档日志的目录。
        (我的归档日志命名为:access_20150101.log,可以根据需求修改)
        其中%YYYY-24%MM-24%DD-24代表系统时间的前一天,比如今天是20150102,那么%YYYY-24%MM-24%DD-24就是20150101。
    
   
        
  • 分析
      awstats的做法是:
        1.分析现有的access.log,并生成或更新awstats数据库。
        2.从awstats数据库中获取,并生成awstats日志分析报告。(以html静态页面的方式呈现)

        首先创建一个文件夹来存放awstats的日志结果:
        比如mkdir -p /home/awstats

        然后做步骤1:
        /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=*(*为之前输入的站点名)
        可以理解指定使用/etc/awstats/awstats.*.conf这个配置文件。
        这时awstats就会通过寻找配置文件中的logfile指定路径,然后做日志分析,并写入awstats数据库。
        当然配置文件中还有其他选项,默认给出的.conf文件有1500多行,如果有需要,可以通读。
        
        步骤2:
        /usr/local/awstats/tools/awstats_buildstaticpages.pl -update -config=* \
        -lang=cn -dir=/home/awstats \
        -awstatsprog=/usr/local/awstats/wwwroot/cgi-bin/awstats.pl
        其中-dir指定的是之前生成存放html页面的文件夹。

  • 查看
        只需要将html放入浏览器中,或者配置到nginx.conf中,就可以通过浏览器访问了。
        这是我将我某几天的access.log分析的结果:
        
        


  • 自动化

    最后将步骤1和2的bash命令写入脚本,再添加到crontab中,就可以每天自动分析了。
    当然要注意自动执行时间要晚于日志归档时间。
    如果日志归档是在00:05做,那么分析一定得在这个时间之后。

    最好将归档日志放到线下,传输到其他服务器上。避免日志分析所产生的资源占用。

    crontab可参考:
    http://blog.itpub.net/29773961/viewspace-1403802/。

        




来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29773961/viewspace-1425948/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
微信公众号:神谕的暗影长廊

注册时间:2014-07-28

  • 博文量
    161
  • 访问量
    1195299