Webalizer показывает только 2 месяца на сводной странице (Ubuntu 14.04)

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, не является настолько видным. Ну, это - то, что я сделал:

  • Я скопировал файлы журнала в ноутбук с новой установкой 14,04 - те же результаты
  • Я отбросил файлы журнала, созданные 14.04's апач - тот же результат
  • Я захватил источник webalizer и скомпилировал его на двух различных 14,04 машинах - эти работы, наконец.

Это означает, что webalizer пакет Ubuntu-14.04 повреждается? Дольше одного года теперь? Трудно верить.

Если никто не может объяснить, что пошло не так, как надо, по крайней мере, для тех из Вас ищущий webalizer сводные проблемы - Вы нашли, что это не Ваш один.

Я буду рад услышать о других, у которых есть подобные webalizer проблемы - и еще более счастливый, конечно, если кто-то может указать на меня на решение, которое не требует компиляции webalizer источники.

Спасибо!

TomTomTom

1
задан 22 June 2015 в 17:16

2 ответа

Это - известная ошибка, и существует патч: https://bugs.launchpad.net/ubuntu / + source/webalizer / + ошибка/1471387

0
ответ дан 4 October 2019 в 02:47

Ну, у меня есть та же проблема, поле 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 файл.Вот так.

Это, вероятно, означает, что обратная запись истории в файл истории не работает как ожидалось. Так как у меня нет идеи вообще, где посмотреть на в источнике, я надеюсь, что кто-то еще может пролить больше света на ту проблему... Любое приветствие предложения.

0
ответ дан 4 October 2019 в 02:47

Другие вопросы по тегам:

Похожие вопросы: