Документация ISPmanager Business

Настройка сбора статистики запросов к сайтам

В ISPmanager можно настроить сбор статистики запросов пользователей к сайтам. Для этого используются журналы:

  • журнал запросов — содержит статистику соединений веб-сервера для WWW-домена;
  • журнал ошибок — содержит статистику ошибок веб-сервера для WWW-домена.

Чтобы собирать статистику для WWW-домена, при его создании или изменении включите опции Журнал запросов и Журнал ошибок и настройте их параметры:

  1. Подключите анализатор журнала запросов для WWW-домена:
    1. Выберите Генератор отчётов.

    2. Укажите Период сбора статистики по запросам.

    3. Выберите Язык отчёта.

    4. Если нужно, включите опцию Ограничить доступ к статистике, укажите Пароль для доступа к статистике и его Подтверждение. В качестве логина будет использоваться имя владельца WWW-домена.

  2. Чтобы ISPmanager собирал статистику ошибок веб-сервера для WWW-домена, включите опцию Журнал ошибок.

  3. Выберите Период ротации журналов.

  4. В поле Хранить архивов укажите количество файлов журналов, которое будет храниться в заархивированном виде.

     Пояснения

    В конфигурационном файле Nginx для WWW-домена добавляются строки вида:

    Конфигурационный файл Nginx
    access_log /var/www/httpd-logs/<имя WWW-домена>.access.log;
    error_log /var/www/httpd-logs/<имя WWW-домена>.error.log notice;

    В конфигурационном файле Apache для WWW-домена добавляются строки вида:

    Конфигурационный файл Apache
    CustomLog /var/www/httpd-logs/<имя WWW-домена>.access.log combined
    ErrorLog /var/www/httpd-logs/<имя WWW-домена>.error.log

Обратите внимание!

Дисковое пространство, занимаемое архивами, входит в квоту владельца WWW-домена. Подробнее см. в статье Подключение дисковых квот.

Для просмотра записей в журналах перейдите в Настройки web-сервера → WWW-журналы.

Для просмотра сгенерированных отчётов по статистике перейдите в Домены → WWW-домены → Статистика. Статистика для WWW-домена хранится в /var/www/<имя владельца WWW-домена>/data/www/<имя WWW-домена>/webstat.

Принципы ротации журналов


Ротация используется для архивирования журналов, чтобы они не занимали большой объём дискового пространства. Для ротации используется утилита logrotate, которая запускается по планировщику cron ежедневно: /etc/cron.daily/logrotate.

Глобальные настройки ротации хранятся в конфигурационном файле /etc/logrotate.conf.

Конфигурационные файлы logrotate

Параметры ротации WWW-доменов хранятся в конфигурационных файлах /etc/logrotate.d/web/<Имя WWW-домена>. Например:

Конфигурационный файл ротации логов WWW-домена
/var/www/httpd-logs/<имя WWW-домена>.access.log {
        olddir /var/www/<имя владельца WWW-домена>/data/logs
        rotate 65530
        size=16M
        copytruncate
        compress
        <период ротации>
        prerotate
                /etc/webanalyzer.d/<имя владельца WWW-домена>/<имя WWW-домена>
        endscript
}
/var/www/httpd-logs/<имя WWW-домена>.error.log {
        olddir /var/www/<имя владельца WWW-домена>/data/logs
        copytruncate
        compress
        <период ротации>
}
 Пояснения

olddir — директория, в которую архивируются журналы.
rotate — количество хранимых архивов.
size — максимальный размер файла, при превышении которого журнал будет ротирован.
copytruncate — предписывает при ротации создать копию журнала, а затем его обнулить. Таким образом сам файл журнала не удаляется.
compress — опция сжатия файлов. По умолчанию для сжатия используется gzip.
<период ротации>: daily — ежедневно, weekly — еженедельно, monthly — ежемесячно.
/etc/webanalyzer.d/<имя владельца WWW-домена>/<WWW-домен> — опция анализа логов перед ротацией.

Ручной запуск ротации

Чтобы запустить ротацию вручную, выполните команду:

/usr/sbin/logrotate -d -f <путь к конфигурационному файлу logrotate для WWW-домена>
 Пояснения

-d — ключ для детального вывода информации.
-f — ключ принудительной ротации.
<путь к конфигурационному файлу logrotate для WWW-домена> — например, "/etc/logrotate.d/web/domain.com".

Запустить ротацию для всех WWW-доменов можно командой:

/usr/sbin/logrotate -f /etc/logrotate.conf

В результате выполнения команды может появиться сообщение об ошибке "log does not need rotating". Оно означает, что ротация не была выполнена, т. к. уже выполнялась в текущий день. Чтобы выполнить ротацию, измените статус последней ротации для WWW-домена в файле /var/lib/logrotate/logrotate.status.

Принципы работы анализатора логов awstats


Конфигурационный файл awstats

При включении анализатора лога для WWW-домена создаётся конфигурационный файл в /etc/awstats/awstats.<WWW-домен>.conf. Основные параметры:

  • LogFile — путь к анализируемому журналу;
  • SiteDomain — анализируемый WWW-домен;
  • DirData — путь к директории, в которой хранятся полученные в результате анализа данные.

Автоматический запуск сбора статистики

Если Период сбора статистики — "в момент ротации", то анализатор логов запускается непосредственно утилитой logrotate. Для этого в конфигурационный файл /etc/logrotate.d/web/<WWW-домен> добавляются строки:

Конфигурационный файл ротации логов WWW-домена
prerotate 		
        /etc/webanalyzer.d/<имя владельца WWW-домена>/<WWW-домен>

Если Период сбора статистики — "каждый час", то анализатор логов запускается по заданию в планировщике cron пользователя:

Список заданий планировщика cron
# crontab -u username -l
MAILTO=""#
#ISPmanager log rotate <WWW-домен>
0 * *	/etc/webanalyzer.d/<имя владельца WWW-домена>/<WWW-домен>

Ручной запуск сбора статистики

Чтобы запустить сбор статистики вручную, выполните команду:

/etc/webanalyzer.d/<имя владельца WWW-домена>/<WWW-домен>