Webalizer раньше показывал 12 Месяцев на сводке начальной страницы в графическом обзоре также в списке ссылок к каждому этому месяцу и за эти 11 месяцев до этого. Это работало из поля, по крайней мере, в Ubuntu 10.04 и 12.04, я только должен был настроить возрастающий режим для контакта с моей ежедневной газетой (не ежемесячно) файлов журнала.
После перемещения двух веб-сайтов к 14,04, я нашел webalizer, смешивающий со сводкой, способом что это показало только два месяца в графическом обзоре, 10 слотов в течение других месяцев были пусты. Список ссылок показывает те же два месяца только (в этом месяце и в прошлом месяце). Если я опускаю данные логов мая и июня, я получаю март и апрель - снова два месяца только.
Я попытался опустить возрастающий режим (использующий файл конфигурации по умолчанию) и вручил webalizer единственный файл журнала, содержащий 30 месяцев журналов. Это привело к webalizer создание сводного графического и списка ссылок мая 11 раз и в 1 раз июнь.
Важный для замечания: ежемесячные статистические данные выглядят корректными, даже те три или больше месяца назад, я просто должен ввести URL рукой любой записи статистики больше чем 2 месяца назад.
Я искал сеть с любыми комбинациями "webalizer", "два месяца", "только", и т.д. и нашел только один вопрос как это - но без любого ответа.
Какие-либо люди идей, что случилось или что я мог бы делать неправильно?
Хорошо, конечно, Вы хотите видеть более точно, что я попробовал, таким образом, я буду включать примеры командной строки того, что я попробовал:
$ logdir=/path-to-logdir
$ ls $logdir
...
2015.0617-access.log.gz
2015.0618-access.log.gz
2015.0619-access.log.gz
$ outputdir=/path-to-webroot/statistics
$ rm $outputdir/*
$ for logfile in $logdir/*-access.log.gz; do webalizer -r http://$hostname -n $hostname -o $outputdir $logfile; done
... lots of verbose output about webalizer's activity
... last of it being:
Webalizer V2.23-08 (Linux 3.13.0-55-generic x86_64) locale: htm*
Using logfile /path-to-logdir/2015.0619-access.log.gz (gzip-clf)
Creating output in /path-to-webroot/statistics
Hostname for reports is 'myhostname'
Reading history file... webalizer.hist
Reading previous run data.. webalizer.current
Saving current run data... [06/19/2015 23:27:09]
Generating report for June 2015
Saving history information...
Generating summary report
20 records in 1 seconds, 20/sec
$
Это привело только за два месяца к общей сводке, но ежемесячные сводки (даже более старые, чем 2 месяца) были созданы и доступны через вручную введенный URL.
Другая попытка (все данные сразу - невозрастающий) была:
$ zcat $logdir/*-access.log.gz >/tmp/access.log
$ rm $outputdir/*
$ webalizer -r http://$hostname -n $hostname -o $outputdir /tmp/access.log
... lots of verbose output just as before
$
Подобный результат, но общая сводка имел 11 маев записей и один июнь записи.
Кто может помочь получить корректные сводки?
Спасибо, TomTomTom
=================================================== РЕДАКТИРОВАНИЕ: я исправил некоторые опечатки, и я сделал больше тестов
Ни один ответ или комментарий больше 24 часов - не похожи на этот материал webalzer, не является настолько видным. Ну, это - то, что я сделал:
Это означает, что webalizer пакет Ubuntu-14.04 повреждается? Дольше одного года теперь? Трудно верить.
Если никто не может объяснить, что пошло не так, как надо, по крайней мере, для тех из Вас ищущий webalizer сводные проблемы - Вы нашли, что это не Ваш один.
Я буду рад услышать о других, у которых есть подобные webalizer проблемы - и еще более счастливый, конечно, если кто-то может указать на меня на решение, которое не требует компиляции webalizer источники.
Спасибо!
TomTomTom
Это - известная ошибка, и существует патч: https://bugs.launchpad.net/ubuntu / + source/webalizer / + ошибка/1471387
Ну, у меня есть та же проблема, поле Fedora все же. И никакое решение также. Я использую "обходное решение", на основе сценария, который я нашел по http://stevehavelka.com/rebuilding-broken-webalizer-history-tcl/, с которым Вы воссоздаете файл истории. Это грязно, стиль вставки копии, но это работает. По крайней мере, в течение одного месяца (то есть, пока webalizer не воссоздает индексную страницу и перезаписывает файл истории):
#!/bin/sh
#Using this script is straightforward:
#
# 1. Run it within the folder that has your old webalizer files, and it produces as much historical data as it can.
# 2. Copy/paste that historical data into your webalizer.hist file, and rerun Webalizer.
# 3. That’s it! You should have all your stats back.
#
# the next line restarts using tclsh \
exec tclsh "$0" "$@"
# first, find the right files
foreach file [lsort -decreasing [glob usage_*.html]] {
# and get the date from the files
regexp {usage_(\d{4})(\d\d).html} $file -> year month
# open the file to get some data from it
set fh [open $file r]
set text [list]
while { ![eof $fh] } {
lappend text [gets $fh]
}
close $fh
# now start pulling out data with Total Hits
set idx [lsearch -glob $text {*Total Hits*}]
regexp {<B>(\d+)</B>} [lindex $text $idx+1] -> totalHits
# Total Files
set idx [lsearch -glob $text {*Total Files*}]
regexp {<B>(\d+)</B>} [lindex $text $idx+1] -> totalFiles
# Total Unique Sites
set idx [lsearch -glob $text {*Total Unique Sites*}]
regexp {<B>(\d+)</B>} [lindex $text $idx+1] -> totalUniques
# Total kB Files
set idx [lsearch -glob $text {*Total kB Files*}]
if { $idx == -1 } {
set idx [lsearch -glob $text {*Total KBytes*}]
}
regexp {<B>(\d+)</B>} [lindex $text $idx+1] -> totalKb
# Process days
set first [lsearch -glob $text {*Daily Statistics for*}]
set last [lsearch -glob $text {*Hourly Statistics for*}]
set subtext [lrange $text $first $last]
set dates [lsearch -glob -all -inline $subtext {<TR*><TD ALIGN=center><FONT SIZE="-1"><B>*</B></FONT></TD>}]
# First day processed
regexp {<B>(\d+)</B>} [lindex $dates 0] -> firstDay
# Last day processed
regexp {<B>(\d+)</B>} [lindex $dates end] -> lastDay
# Total Pages
set idx [lsearch -glob $text {*Total Pages*}]
regexp {<B>(\d+)</B>} [lindex $text $idx+1] -> totalPages
# Total Visits
set idx [lsearch -glob $text {*Total Visits*}]
regexp {<B>(\d+)</B>} [lindex $text $idx+1] -> totalVisits
# and that's it!
puts "[string trimleft $month 0] $year $totalHits $totalFiles $totalUniques $totalKb $firstDay $lastDay $totalPages $totalVisits"
}
Как указано, поместите этот сценарий в каталог, содержащий сводки статистики, выполните его и вставка копии результат в Ваш webalizer.hist файл.Вот так.
Это, вероятно, означает, что обратная запись истории в файл истории не работает как ожидалось. Так как у меня нет идеи вообще, где посмотреть на в источнике, я надеюсь, что кто-то еще может пролить больше света на ту проблему... Любое приветствие предложения.