Мы — долго запрягаем, быстро ездим, и сильно тормозим.

FreeBSD
  настройка
  подсчёт трафика
  программы
  почтовые системы
  Шелезяки
  Мелочи
  Файловая система
  WWW
  hosting
  mod_gzip
  mod_log_sql
  mod_geoip
  mod_bandwidth
  mod_accounting
  mod_bunzip2
  mod_mp3
  mod_shapvh
  mod_limitipconn
  mod_sqlinclude
  mod_auth_imap
  webalizer
  Apache + SSL
  auth_ldap
  Настройка AWStats
  apache 2.0
  mod_auth_external
  CMS - TYPO3
  phpBB-2/3
  mod_ntlm
  mod_ntlm2
  Nginx+php+fcgi
  OTRS на Apache1
  OTRS на Apache20
  ApacheStats
  mod_evasive
  Lighttpd
  nginx+php-fpm+mysql
  php + mssql
  MySQL + кодировки
  svn+apache+trac
  php5-oci8
  Lighttpd + Apache
  CMS Drupal 6.9
  Apache22+MySQL
  Оптимизация хоста для CMS
  блокировка spam на www
  PostgreSQL 8
  Apache 22 + PHP5 + suPHP
  lighttpd + mod_uploadprogress
  VirtualBox + phpVirtualBox
  DNS API
  Security
  system
  Games Servers
  X11
  Programming
Очумелые Ручки
OpenBSD
Cisco


www.lissyara.su —> статьи —> FreeBSD —> WWW —> webalizer

webalizer - анализ посетителей сайта

Автор: lissyara.


    Решил проанализировать статистику своего сайта - кто, откуда, как часто :))) Пошёл в порты, искать чё-нить, благо слово раньше уже слышал - webalizer.
/usr/home/lissyara/>cd /usr/ports/
/usr/ports/>make search name='webalizer'
......................
......................
Port:   webalizer-geoip-2.1.10_6
Path:   /usr/ports/www/geolizer
Info:   A web server log file analysis program
Maint:  dinoex@FreeBSD.org
B-deps: GeoIP-1.3.17 freetype2-2.1.10_3 gd-2.0.33_4,1 jpeg-6b_4 pkg-config-0.20_2
png-1.2.8_3
R-deps: GeoIP-1.3.17 freetype2-2.1.10_3 gd-2.0.33_4,1 jpeg-6b_4 pkg-config-0.20_2
png-1.2.8_3
WWW:    http://www.mrunix.net/webalizer/

Port:   webalizer-2.1.10_6
Path:   /usr/ports/www/webalizer
Info:   A web server log file analysis program
Maint:  dinoex@FreeBSD.org
B-deps: freetype2-2.1.10_3 gd-2.0.33_4,1 jpeg-6b_4 pkg-config-0.20_2 png-1.2.8_3
R-deps: freetype2-2.1.10_3 gd-2.0.33_4,1 jpeg-6b_4 pkg-config-0.20_2 png-1.2.8_3
WWW:    http://www.mrunix.net/webalizer/

Ага. Во-первых их много - на нескольких языках. Русского правда нет. И есть ещё geolizer - чтоб до кучи определять страну по IP. Посмотрев Makefile его и других webalizer`ов - понял, что всё это есть в конфиге, в том числе и русский язык. Потому рихтуем файл /etc/make.conf, добавляем такие строки:
PORTSDIR?=      /usr/ports
# webaliser
.if ${.CURDIR} == ${PORTSDIR}/www/webalizer
# опции должны быть без "косметических" пробелов,
# о чём так и сказано в Makefile
WEBALIZER_LANG=russian
WITH_GEOIP=yes
.endif

После чего инсталлируем:
/usr/ports/>cd /usr/ports/www/webalizer
/usr/ports/www/webalizer/>make && make install && make clean

А после установки, рихтуем конфиг, тока его изначально нету, надо скопировать из дистрибутивного:
/usr/ports/www/webalizer/>cd /usr/local/etc/
/usr/local/etc/>ll | grep weba
-r--r--r--  1 root  wheel  24259 18 июн 11:36 webalizer.conf-dist
/usr/local/etc/>cp webalizer.conf-dist webalizer.conf
/usr/local/etc/>ll | grep weba
-r--r--r--  1 root  wheel  24259 18 июн 11:37 webalizer.conf
-r--r--r--  1 root  wheel  24259 18 июн 11:36 webalizer.conf-dist
/usr/local/etc/>

После чего и правим его до такого состояния:
# конфиг Webalizer, начат 2006-06-14 в 11:42
#
# В родном конфиге тут было чё-то про лицензию GNU
# Вникать не стал - лень :)
#
# Это пример конфигурационного файла для Webalizer (версии 2.01)
# Линии начинающиеся с '#' - комменты и игнорируются. Пустые линии
# пропускаются. Прочие линии считаются за конфигурационные линии, и
# должны иметь форму "ConfigOption  Value" где ConfigOption - действительное
# ключевое слово, и Value - значиение конфигурационной опции. Неправильные
# кейворды/значения игнорируются и по этому поводу показываются варнинги.
# После кейворда может быть один пробел или таб до значения.
#
# Для версии, Webalizer будет искать дефолтовую конфигурацию в файле с
# именем "webalizer.conf" в текущей директории, и, если не найдёт, то
# полезет в "/etc/webalizer.conf".


# Лог-файл, который будет анализироваться. Если он не задан тут, или
# в командной строке, то вводом будет считаться STDIN. Если имя лог-файла
# заканчиватся на '.gz' (т.е.: файло сжато gzip), он будет распакован на
# лету, по мере чтения.
#LogFile        /var/lib/httpd/logs/access_log

# LogType определяет тип обрабатываемых логов. Обычно, Webalizer ожидает,
# что логи будут CLF или Combined логи веб-сервера. Используя эту опцию
# можно обрабатывать логи ftp (xferlog наструганный wu-ftp и прочими
# аез-серверами), или логами Squid. Значения могут быть 'clf', 'ftp' или
# 'squid'. 'clf' - по умолчанию.
#LogType clf

# OutputDir - куда класть нагенерённые файлы. Путь должен быть абсолютным,
# но и относительные пути могут работать. Если этот пункт не задан, то
# логи будут сложены в текущую директорию.
#OutputDir      /var/lib/httpd/htdocs/usage

# HistoryName - позволяет определить имя файла истории Webalizer. Файл
# истории содержит данные за 12 месяцев, для генерации индексной страницы
# (index.html). Дефолтовый файл - "webalizer.hist", сохраняется в
# директории заданной в OutputDir. Если задать только имя файла, без
# пути, он будет сохранён в OutputDir, если же задать абсолютный путь,
# то он будет сохранён по нему.
#HistoryName webalizer.hist

# Возрастающая (накопительная) обработка позволяет использовать много
# маленьких логов вместо одного большого. Полезно для больших сайтов у
# которых ротация логов происходит чаще чем раз в месяц. Webalizer
# сохранит внутреннее состояние перед выходом, и восстановит его во время
# следующего запуска, чтобы продолжить обработку с того места на котором
# произошла остановка. Также при этом методе Webalizer просматривает
# предыдущие отчёты и игнорирует повторяющися отчёты (обработанные во
# время предыдущего запуска). За дополнительной информацией топайте в README.
# Опция может иметь значения 'yes' или 'no', с дефолтовым значением 'no'.
# Файл 'webalizer.current' используется для сохранения текущего состояния,
# и сохраняется в OutputDir, если это не переопределено в следующем
# пункте - IncrementalName. Убедительная просьбы прочесть хотябы секцию
# 'Incremental processing' в README-файле, прежде чем включать это.
#Incremental no

# IncrementalName - позволяет указать специфическое имя файла для
# сохранения накопленых данных.  Эта опция подобна HistoryName где имя
# относительно текущей директории, если путь относительный, и абсолютный,
# если начинается со слэша. По дефолту, это - "webalizer.current"
# сохранённый в OutputDir.  Если вы не задали "Incremental" как 'yes',
# то эта опция не имеет смысла.
#IncrementalName webalizer.current

# ReportTitle - текст показываемый в заголовке. Имя хоста (если пустое)
# добавляется в конце заголовка, отделённое пробелом, для генерации
# полного названия.
# По дефолту эта строка такая: (для инглиша) "Usage Statistics for".
ReportTitle    Статистика сайта

# HostName - определяет имя хоста для отчёта. Оно используется в заголовке,
# и в качестве пути к элементам URL в таблице. Зто позволяет кликать по
# URL'ам а отчёте и переходить по ссылкам, если отчёт выложен на ином
# сервере, чем тот, отчёт которого вы просматриваете (виртуальном), или
# вообще на другом сервере. если этот пункт не задан, то webalizer пробует
# получить имя хоста из через системную команду `uname`. Если это не
# получается, то подставляется "localhost".
HostName       www.lissyara.su

# HTMLExtension - определяет расширение для сгенерённых HTML страниц.
# Обычно, это "html", но оно может быть изменено на другое, если есть
# такая необходимость.
HTMLExtension  html

# PageType указывает Webalizer`у о какие типы URL'ов вы считаете
# веб-страницами. Большинство людей рассматривают html и cgi документы
# как страницы, в то же время таковыми не считают звуковые файлы и
# изображения. Если никакие типы не определены, то будут использоваться
# умолчания ('htm*', 'cgi' и HTMLExtension - различные для web-логов,
# 'txt' для ftp-логов).

PageType htm*
PageType cgi
PageType        php
#PageType phtml
#PageType php3
#PageType pl

# UseHTTPS должен использоваться, если результаты анализа просматриваются
# через секурное соединение, и ссылки должны начинаться на 'https://',
# вместо дефолтового 'http://'. Если это вам необходимо, поставьте
# эту опцию в 'yes'. Дефолтовое значение - 'no'. Это изменяет тока поведение
# ссылок в таблице 'Top URL's'.
#UseHTTPS       no

# DNSCache задаёт местоположение кэша DNS для поиска обратных DNS записей.
# Этот файл должен быть определён, если вы хотите резольвить какие-то IP
# адреса, найденные в лог-файле. Если абсолютный путь не задан, то файло
# ищется в дефолтовой директории для отчётов. Смотрите файл DNS.README
# для дополнителоьной информации.
#DNSCache dns_cache.db

# DNSChildren позволяет задать, как много "детей" процессов запускается
# для DNS лукапа при создании или обновлении файла кэша DNS. Если задано
# число, файл кэша DNS будет создан/обновлён каждый раз, когда Webalizer 
# запускается, до нормальной обработки, путём запуска указанного числа
# чилдренов для выполнения поиска в DNS. Если эта опция используется,
# то имя для кэша DNS должно быть задано. Значение по-умолчанию - ноль,
# оно запрещает создание/обновление файла кэша DNS при запуске. Число
# чилдренов может быть 1-100, однако большое число может замедлить систему.
# Разумные значения находятся в диапазоне между 5 и 20. Смотрите файл
# DNS.README для дополнителоьной информации.
#DNSChildren 0

# HTMLPre задаёт HTML-код, добавляемый в самое начало файла. По-дефолту
# вставляется линия DOCTYPE. Максмальная длинна линии - 80 символов,
# поэтому используйте несколько линий (HTMLPre), чтобы ввесли больше инфы.

HTMLPre <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
HTMLPre <!-- powered by lissyara :) -->

# HTMLHead задаёт HTML-код, добавляемый в пределах тегов <HEAD></HEAD>
# сразу после тега <TITLE>. Максмальная длинна линии - 80 символов,
# поэтому используйте несколько линий (HTMLHead), чтобы ввесли больше инфы.
HTMLHead <META NAME="author" CONTENT="The Webalizer">
HTMLHead <META name="copyright" content="lissyara">
HTMLHead <META http-equiv="Content-Type" content="text/html;charset=koi8-r">

# HTMLBody задаёт HTML-код, добавляемый после тега <BODY>. Если не задано,
# то дефолтовые значение показаны ниже. Если будете это использовать, то
# вы должны включить ваш тег <BODY> как первую линию.Максмальная длинна
# линии - 80 символов, поэтому используйте несколько линий (HTMLBody),
# чтобы ввесли больше инфы.
HTMLBody <BODY BGCOLOR="#E8E8E8" TEXT="#000000"
HTMLBody LINK="#0000FF" VLINK="#FF0000">

# HTMLPost задаёт HTML-код, добавляемый сразу перед первым <HR> в документ
# котороый только после заголовка и линии "summary period"-"Generated on:".
# Это должно использоваться для очистки рисунка вставленного с HTMLBody(?).
# Как и с HTMLHead, вы можете задать несколько линий в том порядке, в
# котором они будут вставлены. Максмальная длинна линии - 80 символов,
# поэтому используйте несколько линий (HTMLPost), чтобы ввесли больше инфы.
#HTMLPost <BR CLEAR="all">

# HTMLTail задаёт HTML-код, добавляемый внизу каждой страницы, обычно это
# линк на хомяк, логотип и т.п. Это вставляется как элемент таблицы
# (т.е.: <TD> тут ваш код </TD>) и отцентровано опправому краю страницы
# Максмальная длинна линии - 80 символов.
#HTMLTail <IMG SRC="msfree.png" ALT="100% Micro$oft free!">

# HTMLEnd задаёт HTML код добавляемый в самом конце сгенерённых файлов
# Дефолт показан ниже. Если используете это, то нужно задать закрывающие
# теги </BODY> и </HTML> в последней линии.
# Максмальная длинна линии - 80 символов.
#HTMLEnd </BODY></HTML>

# Опция Quiet подавляет выводимые сообщения... Полезно когда запуск
# осуществляется кроном, чтобы пришло письмо. Значение может быть
# "yes" или "no". По умолчанию "no".  Отметтье: Это не подавляет
# варнинги и ошибки (выводимые на stderr - стандартный вывод).
#Quiet no

# ReallyQuiet подавляет все сообщения, в том числе и ошибки и
# варнинги. Значение может быть "yes" или "no". По умолчанию "no".
# Если тут указано 'yes' это не может быть переопределено с командной
# строки, так что используйте с осторожностью. Значение 'no' не
# имеет никакого эффекта.
#ReallyQuiet no

# TimeMe позволяет форсировать вывод на экран информации о времени
# окончания процесса. Значение 'yes' позволит вывести время.
# Значение 'no' не имеет никакого эффекта.
#TimeMe no

# GMTTime позволяет показывать, в отчётах, время GMT (UTC), вместо
# локального. По дефолту время показыается в той временной зоне, в
# которой находится машина, по EDT или PST. Это ключевое слово позволяет
# использовать время UTC вместо этого. Используйте, только если для
# этого есть серьёзная необходимость, т.к. скорей всего это сдвинет
# все переиоды на несколько часов относительно локального времени.
#GMTTime no

# Debug - выводит дополнительную информацию для сообщений об ошибках.
# Это заставит webalizer делать дамп плохого отчёта/поля, вместо того
# чтобы тока сказать что он плохой. Обычно, значение может быть
# "yes" или "no". дефолт - "no". Это нужно лишь в случае если выводится
# nмного варнингов и ерроров, и вы хотите понять почему.
# Примечание: варнинги и эрроры печатаются на stderr а не stdout,
# как нормальные сообщения.
#Debug no

# FoldSeqErr застваляет Webalizer игнорировать ошибки последовательности.
# Зтополезно для Netscape и других веб-серверов которые кэшируют
# запись логов и не гарантируют что они будут в хронологическом порядке.
# Использование FoldSeqErr выберет из отчётов последовательности, которые
# будут расмотрены, как если бы они имели ту же метку времени, как и
# последняя нормальная запись. Дефолт - игнорировать.
#FoldSeqErr no

# VisitTimeout позволяет установить дефолтовый таймаут для визита,
# также называемый 'сесией'. Значение по умолчанию - полчаса, и
# оно подходит для большиннства сайтов. Визиты детерминиуются по
# времени текущего запроса и и времени последнего визита на сайт.
# Если разница во времени больше чем значение VisitTimeout, то это
# считается новым визитом, и общее число посещений увеличивается.
# Значение - число в секундах (дефолт=1800=30min)
#VisitTimeout 1800

# IgnoreHist не должен использоватся в конфигурационном файле,
# но тут этот пункт есть лишь потому что может быть молезным в
# определённых ситуациях. Если файл истории игнорируется, то 
# индексный файл содержит тока текущие логи. Используйте тока
# если хотите что-то выкинуть из отчёта. Используйте с осторожностью!!
# Валидные значения "yes" или "no". Дефолт - "no".
#IgnoreHist no

# CountryGraph позволяет отключить постороение графика по странам.
# Валидные значения "yes" или "no". Дефолт - 'yes'.
#CountryGraph yes

# DailyGraph и DailyStats позволяют отключить графики и таблицы для
# ежедневной статистики.
# Валидные значения "yes" или "no". Дефолт - 'yes'.
#DailyGraph yes
#DailyStats yes

# HourlyGraph и HourlyStats позволяют отключить графики и таблицы для
# ежечасной статстики.
# Валидные значения "yes" или "no". Дефолт - 'yes'.
#HourlyGraph yes
#HourlyStats yes

# GraphLegend разрешает кодировать цветом легенду графиков.
# По дефолту оно показано. Это тока для кнопочек (?) остальные
# легенды не затрагиваются. Если вам это не понравиться - поставьте
# тут - 'no' :)
#GraphLegend yes

# GraphLines  позволяет иметь индексные линии находящиеся позади
# графиков. Значение - это число линий которые должны быть отображены.
# Дефолт - 2. Можно отключить - тогда 0. Максимальное число - 20.
# Из-за ошибок округления некоторые значения работают не совсем верно.
# Чем меньше - тем лучше. Самые хорошие результаты получаются с
# 1,2,3,4,6 и 10.
#GraphLines 2

# Опция "Top" определяет число входов для каждой таблицы. дефолт:
# Sites=30, URL's=30, Referrers=30 и Agents=15, и
# Countries=30. TopKSites и TopKURLs (в KByte таблицах) оба значения по
# дефолту 10, также как и главные таблицы входа/выхода (TopEntry/TopExit).
# Самый популярный search и usernames = 20, по дефолту. Таблицы могут
# быть отключены, использованием нуля в качестве значения.

#TopSites        30
#TopKSites       10
#TopURLs         30
#TopKURLs        10
#TopReferrers    30
#TopAgents       15
#TopCountries    30
#TopEntry        10
#TopExit         10
#TopSearch       20
#TopUsers        20

# Ключевые слова All* разрешены для показа всех URL'ов, Sites, Referrers
# User Agents, Search Strings и Usernames. Если разрешено, будет создана
# разделительная HTML страница, и будет добавлен соответствующий линк
# в таблицу "Top". Есть несколько условий, для того, чтоы это произошло
# Первое - должно быть больше значений, чем в таблице "Top" (иначе это
# бы дублировало то, что уже в ней есть). Во-вторых листинг покажет
# только те элементы которые обычно видны, и не будет показывать
# скрытые элементы. Вначале будут перечислены групповые вхождения,
# сопровождаемые индивидуальными значениями. Для этих ключевых
# слов значение может быть 'yes' или 'no', дефолт - 'no'. Пожалуйста,
# учтите, что эти страницы могут быть довольно большого размера,
# особенно страница сайтов, и разделительные страницы наструганные на
# каждый месяц могут потребовать довольно большого дискового пространства
# в зависимости оттраффика на вашем сайте.
# (added by lissyara - я поставил yes - ничё, не умер :))
AllSites yes
AllURLs yes
AllReferrers yes
AllAgents yes
AllSearchStr yes
AllUsers yes

# Webalizer, обычно, разбирает строку 'index.' чтобы объединить общие
# URL'ы. Например, URL /somedir/index.html тоже самое что и /somedir/ 
# Эта опция позволяет определить дополнительные строки, которые можно
# обработать таким же образом. Не нужно определять 'index.', поскольку
# эта строка всегда просматривается. Если вым ничё не нужно - не задвайте
# ничего, ибо каждая строка обрабатывается в каждом отчёте и это сильно
# замедлит обработку... 
#IndexAlias     home.htm
#IndexAlias homepage.htm

# Ключевые слова Hide*, Group* и Ignore* и Include* позволят изменить
# способ, которым управляют сайтами, URL'ми, реферерами, юзер-агентами
# и юзерами. Ключевое слово Ignore* заставит Webalizer полностью
# игнорировать записи как будто их нет (и в общем количестве их тоже не
# будет). Кейворд Hide* будет препятствовать отображению в 'Top' таблицах
# но в общих количествах эти записи считаться будут. Group* позволяет
# группировать схожие объекты, как будто он (объект) один. Группированные
# отчёты могут быть отображены, в главных таблицах, жирным шрифтом, и/или
# затенёнными. Группы не могут быть скрыты и неподсчитаны в общем отчёте.
# Group*, по дефолту, не скрывает элементы входящие в неё. Если нужно
# скрыть записи которые совпадают, надо юзать Hide* с тем же значением.
# Кроме того у Group* может быть метка, показываемая вместо значения.
# Метка должна быть отделена по крайней мере одним символом пробелом
# или табом.
#
# Значение может содержать групповой символ '*'. Если подстановочный
# знак не наёден, то соответствие может найтись где угодно в строке.
# Дана строка "www.yourmama.com", значения "your",
# "*mama.com" и "www.your*" все подойдут.

# Ваш сайт должен быть скрыт
HideSite *lissyara.su
#HideSite localhost

# Ваш сайт даёт большинство перенаправлений (рефереров)
HideReferrer lissyara.su/

# Это скрывает поле скрывает запросы без реферера ("-" прямые запросы)
#HideReferrer Direct Request

# Обычно скрывают это:
HideURL *.gif
HideURL *.GIF
HideURL *.jpg
HideURL *.JPG
HideURL *.png
HideURL *.PNG
HideURL *.ra

# Сокрытие агентов, отчасти, бесполезно...
#HideAgent RealPlayer

# Также можно скрыть некоторых юзеров, из базовой аутентификации
#HideUser root
#HideUser admin

# Опции группировки
#GroupURL /cgi-bin/* CGI Scripts
#GroupURL /images/* Images

#GroupSite *.aol.com
#GroupSite *.compuserve.com

#GroupReferrer yahoo.com/ Yahoo!
#GroupReferrer excite.com/     Excite
#GroupReferrer infoseek.com/   InfoSeek
#GroupReferrer webcrawler.com/ WebCrawler

#GroupUser      root            Admin users
#GroupUser      admin           Admin users
#GroupUser      wheel           Admin users

# Следущие строки - способ получить общее количество браузеров и
# не отображать подробные записи.
# (Вы должны использовать MangleAgent для дальнейшей очистки(?)...)
#GroupAgent MSIE Micro$oft Internet Exploder
#HideAgent MSIE
#GroupAgent Mozilla Netscape
#HideAgent Mozilla
#GroupAgent Lynx* Lynx
#HideAgent Lynx*

# HideAllSites разрешает принудительное сокрытие всех сайтов в
# отчёте. Это особенно полезно при использовании с конструкцией
# "GroupDomain", но может быть полезно и в других ситуациях, когда вы
# хотите показать сгруппированные сайты (с ключевыми словами GroupSite)
# Значение этого кейворда может быть 'yes' или 'no', дефолт - 'no',
# разрешает отображать индивидуальные сайты.
#HideAllSites no

# Ключевое слово GroupDomains позволяет группировать индивидуальные
# имена хостов в их соотетствующие домены. Значение определяет уровень
# уровень группирования, и его можно представить как 'число точек'
# которые будут показаны. Например, если посещаемый хост будет
# называться cust1.tnt.mia.uu.net, а GroupDomains = 1, результатом будет
# "uu.net", когда 2 - "mia.uu.net". Дефолтовое значение - 0. Домены
# будут сгруппированы лишь в том случае если они не совпадают с
# существующими записями "GroupSite", который перекрывает этот пункт.
#GroupDomains 0

# GroupShading позволяет оттенить группированные строки в отчёте. Полезно,
# если много групп и индивидуальных записей, смешивающихся в отчёте, и
# есть желание дифферинцировать групповые записи, которые несколько больше.
# Значение может быть 'yes' или 'no', дефолт - 'yes'.
#GroupShading yes

# GroupHighlight - для отображения групповых записей жирным шрифтом.
# Значение может быть 'yes' или 'no', дефолт - 'yes'.
#GroupHighlight yes

# Ключевые слова Ignore* позволяют полностью игнорировать, в отчётах,
# совпадения основанные на имени хоста, УРЛе, юзер-агенте, реферере или
# имени пользователя. Можно юзать '*' как подстановочный символ.
# (на самом деле, в оригинале, тут много воды о том, для чего аффтар
# настругал этот ваебализёр, и о том что он против какого-то игнорирования
# и мол статистика должна быть полной, но народ попросил, и он сделал :))
#IgnoreSite bad.site.net
#IgnoreURL /test*
#IgnoreReferrer file:/*
#IgnoreAgent RealPlayer
#IgnoreUser     root

# Ключевое слово Include* позволяет принудительно включить в отчёт логи
# на основе имени хоста, УРЛе, юзер-агенте, реферере или имени
# пользователя. 
# Пример: показывается тока статистика хомяка Joe...
#IgnoreURL *
#IncludeURL ~joeuser*
# Или на основе базовой аутентификации
#IgnoreUser     *
#IncludeUser    someuser

# Опция MangleAgents указывает, насколько сильно, по-возможности Webalizer
# искажает название юзер-агента. Это позволяет разделить статистику на
# несколько уровней детализации. Есть шесть уровней детализации. Уровень 5
# показывает тока имя браузера (MSIE or Mozilla) и номер версии. Уровень 4
# Добвляет первое десятичное число в номере версии. Упрвень три - два
# десятичных числа. Уровень два добавляет все названия подверсий
# браузера (типа Mozilla/3.01Gold или MSIE 3.0b). Уровень 1, также
# пытается добавить тип ОС, если он задан. Дефолтовый уровень 0 - это
# самая полная статистика без модификаций. Юзер агент, который не
# может быть урезан, показывается в полном виде.
#MangleAgents    0

# Ключевые слова SearchEngine позволяют задать спецификации поисковых
# серверов и их строк запроса URL. Они используются для нахождения и
# включения в отчёт по каким словам находили сайт. Первое слово -
# подстрока из поля `referrer`, она позволяет идентифицировать поисковик,
# и вторая - переменная URL используемая для определения, как в
# писковой машине задаются слова.
SearchEngine yahoo.com p=
SearchEngine altavista.com q=
SearchEngine google.com q=
SearchEngine eureka.com q=
SearchEngine lycos.com query=
SearchEngine hotbot.com MT=
SearchEngine msn.com MT=
SearchEngine infoseek.com qt=
SearchEngine webcrawler searchText=
SearchEngine excite search=
SearchEngine netscape.com search=
SearchEngine mamma.com query=
SearchEngine alltheweb.com query=
SearchEngine northernlight.com  qr=
# Добавлено мною, lissyara
SearchEngine    yandex.ru text=
SearchEngine    google.ru q=
SearchEngine    rambler.ru words=
SearchEngine aport.ru r=
SearchEngine mail.ru q=  


# Ключевые слова Dump* пoзволяют убирать сайты, УРЛы, рефереры,
# юзер-агенты, имена пользователей и поисковые запросы в разные текстовые
# файлы, в формате, подходящем для импорта в большинство БД или
# программ для работы с электронными таблицами (Ёксель, короче :)).

# DumpPath дадаёт путь к файлам дампа. Если он не задан то они будут
# сложены в туже лиректорию, где и генеряться отчёты. Не используйте
# в конце пути завершающий слэш ('/')!
#DumpPath /var/lib/httpd/logs

# Ключевое слово DumpHeader задаёт запись заголовка в файл. Заголовок -
# это первая запись в файле. Обычно для импорта заголовок не требуется,
# но для электронных таблиц он может понадобиться. Значение может быть
# 'yes' или 'no', дефолт - 'no'.
#DumpHeader no

# DumpExtension задаёт расширение файла для дампа. Дефолт - "tab",
# но некоторые программы не понимают такое расширение, и его можно
# изменить в этом пункте. (например, некоторые могут предпочесть "csv").
#DumpExtension tab

# Тут контролируются дампы отдельных таблиц. Значение может быть
# 'yes' или 'no'. Дефолт - 'no'.
#DumpSites no
#DumpURLs no
#DumpReferrers no
#DumpAgents no
#DumpUsers no
#DumpSearchStr  no

# Вы можете скомпилить Webalizer c библиотекой GeoIP и это так
# и есть по дефолту. По дефолту оно включено, для отключения
# поставьте в этом пункте 'no'. Вы можете задать путь к БД
# вручнцю, если она не интсаллирована в системе.
GeoIP yes
#GeoIPDatabase /usr/local/share/GeoIP/GeoIP.dat

# 2006-06-15, 14:54 MSK, lissyara

Ну, и пробуем запустить:
/usr/local/etc/>webalizer
webalizer: Command not found.
/usr/local/etc/>rehash
/usr/local/etc/>webalizer
Webalizer V2.01-10-glzr (FreeBSD 6.0-RELEASE) Russian
Используется учётный файл STDIN (clf)
Using default GeoIP database:
GEO-106FREE 20060501 Build 1 Copyright (c) 2006 MaxMind LLC All Rights Reserved
Результат создаётся в текущем каталоге
Для отчётов используется имя хоста 'www.lissyara.su'
Файл состояния не найден...
^C
/usr/local/etc/>webalizer -h
Использование: webalizer [параметры] [учётный файл]
-h        = выдать это информационное сообщение
-v -V     = выдать информацию о версии
-d        = выдавать дополнительную отладочную информацию
-F тип    = вид исходной статистики. тип = (clf | ftp | squid)
-f        = fold sequence errors
-i        = игнорировать файл состояния
-p        = сохранять информацию о состоянии (последовательно)
-q        = не выдавать информационных сообщений
-Q        = не выдавать _НИКАКИХ_ сообщений
-Y        = не выдавать график по странам
-G        = не выдавать почасовой график
-H        = не выдавать почасовую статистику
-L        = не выдавать описание цветов в таблицах
-l число  = размер тени в 'число' линий
-m число  = интервал для определения 'посещения' (seconds)
-T        = выдать информацию о затраченном времени
-c файл   = использовать файл конфигурации 'файл'
-n имя    = использовать в качестве имени хоста
-o кат.   = использовать в качестве выходного каталога
-t имя    = заголовок отчёта 'имя'
-a имя    = не обрабатывать броузер 'имя'
-r имя    = не обрабатывать ссылку 'имя'
-s имя    = не обрабатывать хост 'имя'
-u имя    = не обрабатывать URL 'имя'
-x имя    = использовать расширение 'имя' для HTML-файлов
-P имя    = файлы с расширением 'имя' - страницы на сервере
-I имя    = использовать как дополнительный индексный файл
-A число  = Отображать 'число' записей статистики броузеров
-C число  = Отображать 'число' записей статистики стран
-R число  = Отображать 'число' записей статистики ссылающихся страниц
-S число  = Отображать 'число' записей статистики сайтов
-U число  = Отображать 'число' записей статистики URL
-e число  = Отображать 'число' записей начальных страниц
-E число  = Отображать 'число' записей последних страниц
-g число  = Группировать домены уровня 'число'
-X        = Скрыть отдельные сайты
-D имя    = Использовать DNS 'имя' кэш-файл
-N число  = Число DNS процессов (0=отключить)
/usr/local/etc/>

Вот и обещщанный русский язык :) Итак, пробуем:
/usr/home/lissyara/>webalizer -F clf -o \
? my_sites/www/lissyara_su/webaliser/ \
? my_sites/logs/forum_lissyara_su_access.log
Webalizer V2.01-10-glzr (FreeBSD 4.11-RELEASE-p17) English
Using logfile my_sites/logs/forum_lissyara_su_access.log (clf)
Using default GeoIP database:
GEO-106FREE 20060501 Build 1 Copyright (c) 2006 MaxMind LLC All Rights Reserved
Creating output in my_sites/www/lissyara_su/webaliser/
Hostname for reports is 'ametist.derzhava.com'
History file not found...
Generating report for May 2006
Generating report for June 2006
Generating summary report
Saving history information...
205989 records in 13.40 seconds, 15374/sec
/usr/home/lissyara/>

Тут-то и была засада. Подписи на графиках были нечитабельны. Рыскания по инету дали следующее - в библиотеке gd нет русского языка... Пришлось пересобрать без него...



Ссылка на обсуждение: http://forum.lissyara.su/viewforum.php?f=3.

размещено: 2006-06-18,
последнее обновление: 2006-06-18,
автор: lissyara

оценить статью:

jails, 2006-06-27 в 18:22:06

http://sadmitry.livejournal.com/27076.html решение проблемы с русским языком.

Дмитрий, 2006-08-23 в 15:12:52

Кстати, а если у меня много виртуальных хостов, то как увидеть статистику именно по хостам, а не по запросам GET?

Михаил, 2006-08-25 в 19:19:30

А старый добрый апачевский /server-status уже отменили?

WAG[LAMO], 2006-12-28 в 11:41:52

Вебалайзер строит отчеты на основе лог файла апача.
А что мещает тебе подготовить эти логи?
А после последовательно подсовывать вебалайзеру, который будет сохранять отчеты в разные диры.
Такой скрипт написать можно за 5 минут.
Логи готовить можно элементарно:
cat /usr/local/apache/log/access.log|grep www.xepsgory.ru >/var/spool/xersgoru.log
А после сувать его в вебалайзер.

P.S. к словам не придираться, сами остальное додумаете -не маленькие.

shelma, 2007-01-09 в 16:22:56

awstats умеет считать "по хостно". много рюшек. русский знает без шаманства :)

dovg, 2008-01-16 в 10:58:52

В очередной раз огромное спасибо Лисяре!
ресурс просто классный!

Andryu, 2008-08-01 в 15:03:48

В последних версиях вебализера на русском установить можно очень просто:
cd /usr/ports/www/geolizer
make WEBALIZER_LANG=<russian> install clean
Сразу с GeoIP ставится. На графиках только шрифт великоват,но на это можно не обращать внимания.
Запускаю по крону через скрипт
/usr/local/bin/webalizer -Q -c /usr/local/etc/webalizer/domen1.conf ; \
/usr/local/bin/webalizer -Q -c /usr/local/etc/webalizer/domen2.conf ; \
/usr/local/bin/webalizer -Q -c /usr/local/etc/webalizer/domen3.conf ; \
/usr/local/bin/webalizer -Q -c /usr/local/etc/webalizer/domen4.conf ; \
---------////////---------
/usr/local/bin/webalizer -Q -c /usr/local/etc/webalizer/domen100.conf

конфиги для каждого домена свои,но очень похожие. Почти всё как у lissyarы, только добавил
IgnoreURL       /stats*
IgnoreURL       /admin*
IgnoreURL       /administrator*
IgnoreURL       /plugins*
IgnoreURL       /templates*
Кто-то может другое добавит. Спасибо Лису за подробные русские мануалы, как бы без них жил незнаю :)

Laa, 2009-10-16 в 18:45:22

Чтобы собрать с русским без шаманства можно просто перед сборкой webalizer собрать ports/russian/gd, а потом начать собирать webalizer. Он увидет gd.4 библиотеку в системе и продолжит сборку. После этого у меня стали на русском картинки. Шрифт, правда, великоват. :-)

gswa, 2010-12-07 в 16:04:26

Andryu спасибо - классный солюшн. предлагаю вписать метод в статью. Laa про gd тоже все правильно и сработало.


Оставьте свой комментарий:
Ваше имя:   *
e-mail:  
жирный
наклонный
подчёркнутый
ссылка
цвет
Нынешний год:   *
 


Хостинг HOST-FOOD

2014-07-27, lissyara
gmirror

Удалённое создание софтверного зеркала средствами gmirror, на диске разбитом с использованием gpart. Использование меток дисков для монтирования разделов.
2013-08-20, zentarim
Scan+Print server FreeBSD 9

Настройка сервера печати и сервера сканирования под управлением операционной системы FreebSD 9 для МФУ Canon PIXMA MP540
2011-11-20, BlackCat
Разъём на WiFi-карту

Делаем съёмной несъёмную антену на WiFi-карте путём установки ВЧ-разъёма
2011-09-14, manefesto
Настройка git+gitosis

Настройка системы контроля версия исходного кода в связке git+gitosis+ssh
подписка

    вверх      
Статистика сайта
Сейчас на сайте находится: 20 чел.
За последние 30 мин было: 105 человек
За сегодня было
15380 показов,
1060 уникальных IP
 

  Этот информационный блок появился по той простой причине, что многие считают нормальным, брать чужую информацию не уведомляя автора (что не так страшно), и не оставляя линк на оригинал и автора — что более существенно. Я не против распространения информации — только за. Только условие простое — извольте подписывать автора, и оставлять линк на оригинальную страницу в виде прямой, активной, нескриптовой, незакрытой от индексирования, и не запрещенной для следования роботов ссылки.
  Если соизволите поставить автора в известность — то вообще почёт вам и уважение.

© lissyara 2006-10-24 08:47 MSK

Время генерации страницы 0.0827 секунд
Из них PHP: 64%; SQL: 36%; Число SQL-запросов: 77 шт.
Исходный размер: 155443; Сжатая: 31504