如何让AWstats分析旧的日志文件?

时间:2012-12-12 04:18:37

标签: awstats

我有很多旧的日志文件(apache),它们跨越我已经拥有的3个不同的VPS服务器,因此有不同的名称具有相同的名称:

old vps 1(jan.2012 - mar.2012) - > access.log.1.gz

old vps 2(apr.2012 - oct.2012) - > access.log.1.gz

等。

是否有一个awstats命令可以分析所有旧日志文件并生成具有正确日期的报告?在运行命令之前,我是否需要对文件进行gunzip或重命名?

4 个答案:

答案 0 :(得分:65)

您可以使用logresolvemerge.pl工具(请参阅FAQ-COM350)。要么更改LogFile文件中的.conf选项,要么(对于一次性运行)将其用作更新中的参数。

LogFile="/path/to/logresolvemerge.pl access.log* |"

命令行更新的示例(在基于debian的系统上):

/usr/lib/cgi-bin/awstats.pl -update -config="example.com" -LogFile="/usr/share/awstats/tools/logresolvemerge.pl /var/log/apache2/access.log* |"

备注:您可能需要清理现有的统计数据。见FAQ-COM500

答案 1 :(得分:6)

如果您需要命令行或站点配置文件的Windows版本,则可以使用完全相同的语法样式:

LogFile="C:/WebRoot/MYSITE~1/traffic/aws/tools/logresolvemerge.pl C:/MYPROG~1/Apache24/logs/access/access_log.* |"

请注意对包含空格的文件夹使用DOS短名称。您可以从命令行(DOS提示符)获取DIR / X文件或文件夹的DOS短名称。

答案 2 :(得分:2)

在Windows中,我不得不使用以下条目:(添加“PERL”,我的安装文件夹的路径,以及在管道之前包含* .log)

LogFile =“PERL C:/AWSTATS/tools/logresolvemerge.pl C:/ AWSTATS / wwwroot / cgi-bin / stats / logFiles / * .log |”

答案 3 :(得分:0)

对于Windows上的IIS安装,可以在命令提示符下运行以下命令:

perl "D:/Websites/My Website/Stats/cgi-bin/awstats.pl" -update -config="mywebsite.com" -LogFile="perl \"D:/Websites/My Website/Stats/tools/logresolvemerge.pl\" C:\inetpub\logs\LogFiles\W3SVC1\*.log |"

基于:

  1. perl位于您的PATH环境变量中
  2. 您的网站存储在D:/Websites/My Website
  3. AWStats的wwwroot文件夹的内容存储在更深一层的名为Stats的文件夹中
  4. AWStats的tools文件夹存储在该文件夹中(您可能只希望暂时执行此操作,以便无法通过网络浏览器访问它们)
  5. 您的配置文件名为awstats.mywebsite.com.conf