# awstats

### stats

### Install

Ubuntu: [https://tecadmin.net/install-awstats-apache-log-analyzer-on-ubuntu/](https://tecadmin.net/install-awstats-apache-log-analyzer-on-ubuntu/)

CentOS: [https://tecadmin.net/steps-to-configure-awstats-on-centos-and-rhel-system/](https://tecadmin.net/steps-to-configure-awstats-on-centos-and-rhel-system/)

### Add site

1. ga naar /etc/awstats
2. create new file awstats.xxx.conf waarbij xxx de domeinnaam is, bijvoorbeeld awstats.roc.ovh.conf
3. pas file aan, pas de domainnaam aan en pas de naam van de logfile die moet worden ingelezen aan.
4. pas de awstats-update.sh file aan en zet de nieuwe domeinnaam in de eerste regel van de file (spreekt voor zich).
5. edit vi /var/www/default/stats/index.php en voeg de site toe (voor de web toegang)

Vanuit de crontab wordt de awstats-update.sh file elke nacht gedraaid om 01:00 uur.

Let op dat de user waarvan uit de crontab wordt gedraaid toegang heeft tot de logfiles.

Test de awstats-update.sh door deze handmatig te draaien.

### File locaties

<span class="s1">output data files: /var/lib/awstats  
</span><span class="s1">cronjob: /etc/awstats/awstats-update.sh</span>

##### <span class="s1">config file</span>

```p1
# /etc/awstats/awstats.mijnsite.com.conf

LogFile="/var/log/apache2/mijnsite-access.log"
SiteDomain="mijnsite.com"
HostAliases="mijnsite.com www.mijnsite.com"
```

##### awstats-update.sh

```shell
for i in mijnsite.com anothersite.com andanothersite.com; do
        echo "---------------------------------------------------------"
        echo "    Udate stats for:"$i
        echo "---------------------------------------------------------"
        perl /usr/lib/cgi-bin/awstats.pl -config=$i -update
done

# filter url from stats
find /var/lib/awstats/*.txt -exec sed -i 's/phpmyadmin\.717664/phpmyadmin-local/g' {} \;
```

##### crontab

```p1
0 2 * * * /etc/awstats/awstats-update.sh > /home/.../awstats/awstats-lastrun.log
```