Forum > FAQ и How-To

AWStats анализатор логов для статистики

(1/1)

ceval:
AWStats - один из лучших бесплатных анализаторов логов, позволяет в удобном графическом виде просматривать логи web, ftp, mail.
Ставим сам пакет:

--- Код: ---$ aptitude install awstats
--- Конец кода ---
После его установке, предлагаю установить пакет libgeo-ipfree-perl, лучше это сделать, не помешает, тем более я собираюсь подключить плагин geoipfree.
И так приступаем непосредственно настройке.
Предположим, что вы хотите проанализировать log-файлы Apache2 для нашего веб-сайта "xxx.com" (так же это может быть и IP-адрес).Создаем новый файл конфигурации:

--- Код: ---$ cp /etc/awstats/awstats.conf /etc/awstats/awstats.xxx.conf
--- Конец кода ---
В конфиге изменяем следующие параметры:

--- Цитировать ---# путь до access.log вашего вирт. хоста
LogFile="/var/log/apache2/access.log"
# для подробной статистики
LogFormat=1
# имя вашего домена(витр.хоста)
SiteDomain="xxx.com"
# псевдонимы сайта по которым можно к нему обратиться
HostAliases="localhost 127.0.0.1 xxx.com"
# директория, где будет храниться статистика.
DirData="/var/lib/awstats"
# активизируем плагины
LoadPlugin="tooltips"
LoadPlugin="geoipfree"
#  для получения нормальных русских букв
LoadPlugin="decodeutfkeys"
--- Конец цитаты ---
На этом пока все, теперь проверяем и проанализируем существующие логи, для нашего сайта xxx.com,запуск от root или sudo:

--- Код: ---$ /usr/lib/cgi-bin/awstats.pl -config=xxx -update
--- Конец кода ---

--- Цитировать ---Create/Update database for config "/etc/awstats/awstats.xxx.conf" by AWStats version 6.95 (build 1.943)
From data in log file "/var/www/msite/logs/access.log.1299888000"...
Phase 1 : First bypass old records, searching new record...
Direct access to last remembered record is out of file.
So searching it from beginning of log file...
Phase 2 : Now process new records (Flush history on disk after 20000 hosts)...
Jumped lines in file: 0
Parsed lines in file: 9479
 Found 0 dropped records,
 Found 0 corrupted records,
 Found 0 old records,
 Found 9479 new qualified records.
--- Конец цитаты ---
Теперь учим Apache отображать статистику. Как говориться "котлеты отдельно, мухи отдельно" и чтоб все не смешивать все в кучу, сделаем отдельный конфиг для Apache2. По умолчанию Apache2 в своём основном конфигурационном файле содержит включение файлов из /etc/apache2/conf.d/, и там создадим файл с параметрами для awstats:

--- Код: ---$ touch /etc/apache2/conf.d/statistics
--- Конец кода ---

--- Цитировать ---Alias /awstatsclasses "/usr/share/awstats/lib/"
Alias /awstats-icon/ "/usr/share/awstats/icon/"
Alias /awstatscss "/usr/share/doc/awstats/examples/css"
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
ScriptAlias /statistics/ /usr/lib/cgi-bin/
Options ExecCGI -MultiViews +SymLinksIfOwnerMatch

--- Конец цитаты ---
Перезапустим Apache:

--- Код: ---$ /etc/init.d/apache2 restart
--- Конец кода ---
Теперь запускаем браузер и вводим:
http://xxx.com/statistics/awstats.pl?config=xxx
И получаем следующие, со своими параметрами:

p.s может возникнуть ошибка "403", то смотрим на права каталогов/подкаталогов awstats и каталога указанного в переменной DirData.
Так же в целях обеспечения безопасности советую ограничить доступ к статистике awstats,
есть несколько вариантов для авторизированных пользователей(если честно сильно ни заморачивался) или по ip адресам.
Для пользователей в конфиге awstats.xxx.conf (тут уже разбираемся сами):

--- Цитировать ---AllowAccessFromWebToAuthenticatedUsersOnly = 1
AllowAccessFromWebToFollowingAuthenticatedUsers = "user1 user2"
--- Конец цитаты ---
По ip адресу:

--- Цитировать ---AllowAccessFromWebToFollowingIPAddresses="127.0.0.1 123.123.123.100"
--- Конец цитаты ---
где 123.123.123.100 - ваш ip адрес
или подмножеству адресов (можно открыть для всей своей сети)

--- Цитировать ---AllowAccessFromWebToFollowingIPAddresses="127.0.0.1 123.123.123.1-123.123.123.255"
--- Конец цитаты ---

где 123.422.222.33-123.422.222.100 - разрешенный диапазон ip адресов.
Теперь нам надо научить awstats генерировать отчёты регулярно и автоматически, и для этого
есть несколько способов обновления статистики, первый это - в конфиге /etc/awstats/awstats.xxx.conf
включаем параметр AllowToUpdateStatsFromBrowser

--- Цитировать ---AllowToUpdateStatsFromBrowser=1
--- Конец цитаты ---
у нас в веб-браузере появляеться кнопка/ссылка "Обновить сейчас".
или второй вариант - добавляем скрипт в планировщик cron.
Правим crontab:

--- Код: ---$ crontab -e
--- Конец кода ---

--- Цитировать ---# будет запускаться каждое воскресенье в 23 часа.
0 23 * * 7 /usr/lib/cgi-bin/awstats.pl -config=xxx.com -update >/dev/null
--- Конец цитаты ---

c уважением ceval (c) On-line журнал o Linux

Навигация

[0] Главная страница сообщений

Перейти к полной версии