Regenerate awstats

Discussion in 'Installation/Configuration' started by mexxchan, Jul 19, 2012.

  1. mexxchan

    mexxchan New Member

    Dear Experts,

    I have a question about awstats.

    By accident I have deleted the files in the /var/www/[domain_name]/web/awstats in last weekend. Hence the awstats for this domain disappeared.

    It is found that the ISPConfig cron job generates the awstats data for the current month (e.g. 2012 / 07) everyday , so now there is 2012 July awstats data. But is it possible to manually trigger the system to "regenerate" the awstats for the past few months ? (e.g. 2012 January to 2012 June).

    Actually I have attempted to edit the following file:
    /root/ispconfig/scripts/shell/awstats.php

    (1) changed the $month to "01" and web.log to "/$webname/log/2012/01/web.log"
    (2) rerun the job:
    /root/ispconfig/php/php /root/ispconfig/scripts/shell/awstats.php

    It does generate the data for the 2012 January awstats files, but all the data are just zeros.

    I believe I have missed out something, can anyone point me to the right direction ? Thanks in advance

    Mexx
     
  2. jnsc

    jnsc rotaredoM Moderator

    You may look at this thread http://www.howtoforge.com/forums/sho...?t=7293&page=6 Post 53 and 55

    Sometimes, the -logfile= directive does not work well, so maybe you will have to cat all the old logfiles in a temporary web.log

    As you already tried to regenerate some stats, it might also be necessary to delete the history files in /var/www/webX/web/awstats/ called
    Code:
    awstatsMMYYYY.www.myhostname.com.txt
     
    Last edited: Jul 19, 2012
  3. mexxchan

    mexxchan New Member

    Thanks !!!

    I follow the thread but failed initially . However, after some attempts I figured out that I need to add "-update" in the command in order to make it.

    One further thing is that the -log parameter doesn't work too, hence I have to manually create the soft link to the right web.log and then it works. (that's pretty easy). And it is also necessary to empty all the files in the "web/awstats" folder first (I don't know why I need to do it but if I don't then there is no generation of the past statistics, strange thing.)

    The commands I used (for generating the Jan / Feb/ Mar 2012) are:

    yes | rm /var/www/www.[domain].com/log/web.log
    ln -s /var/www/www.[domain].com/log/2012/01/web.log /var/www/www.[domain].com/log/web.log
    perl /home/admispconfig/ispconfig/tools/awstats/tools/awstats_buildstaticpages.pl -year=2012 -month=01 -update -config=www.[domain].com -awstatsprog=/home/admispconfig/ispconfig/tools/awstats/wwwroot/cgi-bin/awstats.pl -builddate=2012-01 -dir=/var/www/web105/web/awstats

    yes | rm /var/www/www.[domain].com/log/web.log
    ln -s /var/www/www.[domain].com/log/2012/02/web.log /var/www/www.[domain].com/log/web.log
    perl /home/admispconfig/ispconfig/tools/awstats/tools/awstats_buildstaticpages.pl -year=2012 -month=02 -update -config=www.[domain].com -awstatsprog=/home/admispconfig/ispconfig/tools/awstats/wwwroot/cgi-bin/awstats.pl -builddate=2012-02 -dir=/var/www/web105/web/awstats

    yes | rm /var/www/www.[domain].com/log/web.log
    ln -s /var/www/www.[domain].com/log/2012/03/web.log /var/www/www.[domain].com/log/web.log

    After that, it is necessary to re-run the cronjob of the awstats (I think it build the index.html file) , and now all is ok.

    Thanks again.
     
    Last edited: Jul 19, 2012

Share This Page