Sarg
Sarg (http://sarg.sourceforge.net) - Анализатор журналов
- Sarg (Squid Analysis Report Generator – Генератор Аналитических Отчётов Squid) доступен на нескольких языках, а на русском аж в трёх кодировках: koi-8, UTF-8, windows-1251
- Понимает журналы Squid, Microsoft ISA, Novell Border Manager. Sarg также может обрабатывать журналы DansGuardian и SquidGuard - сторонних программ, написанных для Squid и ограничивающих доступ к сайтам на основании различных правил (по URL, по содержимому сайта и т.д.)
Установка и настройка Sarg из исходников
Собираем стандартным способом
# ./configure
Если вы используете Linux и хотите размещать конфигурационные файлы в /etc/sarg (по умолчанию /usr/local/sarg), в этом случае укажите соответствующую опцию:
# ./configure --enable-sysconfdir='/etc/sarg' # make # make install
Создаём каталог, где будем хранить отчёты:
# mkdir -p /var/www/html/reports/
В /etc/sarg/sarg.conf устанавливаем следующие параметры:
language Russian_koi8 access_log /var/log/squid/access.log.1 #вчерашний журнал title "Squid report for proxy1" output_dir /var/www/html/reports/sarg date_format e charset Koi8-r www_document_root /var/www/html
Опцией date_format мы определяем, как будет выглядеть имя выходного файла, который состоит из форматированной даты. Возможные варианты значения этой опции такие:
- e - dd/mm/yyyy - европейский формат даты
- u - mm/dd/yyyy - американский формат даты (предлагается по умолчанию)
- w - yyyy.ww - год и номер недели в году
Все необходимые настройки сделаны, запускаем:
# sarg SARG: Records in file: 19329, reading: 100.00% SARG: Отчет успешно сгенерирован в: /var/www/html/reports/sarg/04Jun2006-06Jun2006
Видим, что всё прошло успешно. Теперь отчёт можно посмотреть в браузере.
Ещё несколько параметров, которые могут понадобиться:
#ограничить отчёт несколькими пользователями include_users "petrov:ivanov:secretar" #не учитывать записи журнала, содержащие подстроки exclude_string "подстрока1:подстрока2" #не учитывать обращения к перечисленным доменам exclude_hosts /etc/sarg/hosts.txt #сколько файлов отчётов нужно хранить в директории, самый старый убирается lastlog 30 #создавать отчёт только для указанных дней недели. Воскресенью соответствует 0 weekdays 1-5 #создавать отчёт только для определённых часов hours 8-18
Можно отправлять отчёт по почте. Правда, в этом случае не будет формироваться html-файл.
В параметре report_type можно указать, какие отчёты нас интересуют. Sarg предоставляет следующие:
- topsites отображает название сайта, количество подключений к нему, количество взятых с него байт и общее время соединений
- sites_users отображает список всех посещённых сайтов, и какие пользователи на них заходили
- users_sites отображает список сайтов, на которые заходил пользователь, количество подключений к каждому и скаченный объём (рис.1)
- date_time отображает таблицу интенсивности использования прокси сервера пользователем в часах и днях (рис.2)
- denied отображает список сайтов, в доступе к которым было отказано
- auth_failures отображает ошибки аутентификации
- site_user_time_date отображает для каждого пользователя дату и время всех обращений к сайту
- downloads отображает отчёт по загрузкам (download). Какие файлы отнести к этой категории, определяем в параметре donwload_suffix. Например, можно указать расширения аудио-файлов и узнать кто, когда и откуда скачивал музыку
рис.1. Sarg. Cписок сайтов, на которые заходил пользователь
рис.2. Sarg. Интенсивность использования прокси сервера пользователем
- Осталось автоматизировать генерацию отчётов путём добавления в /etc/crontab соответствующих заданий:
#Генерируем отчёты прокси сервера Squid 5 0 * * * root /usr/sbin/sarg