B_J
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Цитата: и на данный момент имеются логи в следующем виде: access.log access.log.1 access.log.2.gz access.log.3.gz access.log.4.gz access.log.5.gz ... как скормить уже существующие логи? | Тоже был задался этим вопросом, так как установил Awstats на несколько дней позже того момента, от которого интересовала статистика. После многочисленных экспериментов удалось скормить эти gz-архивы такими действиями (возможно, существует более правильный и елегантный путь, но опишу то, что мне помогло): 1) В php.ini (на хостинге используется nginx) на время этих действий нужно разрешить вызовы функции system() из php-кода; для этого временно удаляет system в строке, которая начинается с disable_functions. Перегружаем (для этого в ISPManager в WWW domains делаем двойной клик на нашем сайте и жмем Ok в появимшемся окне). 2) Открываем конфигурационый (для Awstats) файл (в моем случае это awstats.www.pershaledi.org.ua.conf) нашего сайта, временно изменяем там значение лог-файла таким образом: LogFile="gzip -cd /var/www/jonny155/data/logs/pershaledi.org.ua.access.log.9.gz |" где вместо /var/www/jonny155/data/logs - путь к папке с логами, pershaledi.org.ua.access.log.9.gz - архив с самым логом. 3) удаляем (или куда-то переносим) файлы с директории, где Awstats держит свои базы (см. значение DirData в конф. файле сайта для Awstats), копируем файл test.php с таким содержанием <?php $com = '/var/www/jonny155/data/cgi-bin/awstats.pl -update -config=www.pershaledi.org.ua'; system($com); ?> в корень сайта, где вместо /var/www/jonny155/data/cgi-bin/ пишем Ваш путь к файлу awstats.pl, а вместо www.pershaledi.org.ua - Ваш сайт, и открываем www.pershaledi.org.ua/test.php в браузере В случае успеха в окне браузера видим приблизительно такой текст: Create/Update database for config "/var/www/jonny155/data/cgi-bin/awstats.www.pershaledi.org.ua.conf" by AWStats version 7.0 (build 1.971) From data in log file "gzip -cd /var/www/jonny155/data/logs/pershaledi.org.ua.access.log.4.gz |"... Phase 1 : First bypass old records, searching new record... Searching new records 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: 77809 Found 0 dropped records, Found 0 comments, Found 0 blank records, Found 0 corrupted records, Found 0 old records, Found 77809 new qualified records. 4) Меняем значение LogFile: LogFile="gzip -cd /var/www/jonny155/data/logs/pershaledi.org.ua.access.log.8.gz |" и снова открываем в браузере test.php. Проделываем эту процедуру для всех gz-архивов, сначала для более старых, потом для более новых. 5) В конце возвращаем все как было (disable_functions, LogFile, ...). |