Сегодня будем разбирать логи Squid и присваивать тариф "Имеемый" человеку стоящему на первом месте в статусе "Загружено мегабайт".
Установка банальна и тривиальна.
# make search name=sarg Port: sarg-2.2.7.1_2 Path: /usr/ports/www/sarg Info: Squid log analyzer and HTML report generator Maint: garga@FreeBSD.org B-deps: expat-2.0.1_1 fontconfig-2.8.0,1 freetype2-2.4.2 gd-2.0.35_7,1 R-deps: expat-2.0.1_1 fontconfig-2.8.0,1 freetype2-2.4.2 gd-2.0.35_7,1 WWW: _http://sarg.sourceforge.net/ # cd /usr/ports/www/sarg # make config Options for sarg 2.2.7.1_2 [X] GD Enable GD support # make install clean
Настроим по вкусу Sarg я укажу свои настройки вы можете поэкспериментировать:
# cd /usr/local/etc/sarg/ # cp sarg.conf.default sarg.conf # cat sarg.conf # Укажем нужный язык language Russian_koi8 # Указываем путь до логов Squid access_log /var/log/squid/access.log # Включаем построение графиков graphs yes graph_days_bytes_bar_color orange title "Squid User Access Reports" font_face Tahoma,Verdana,Arial header_color darkblue header_bgcolor blanchedalmond font_size 12px header_font_size 12px title_font_size 14px text_bgcolor lavender logo_text_color #000000 image_size 80 45 temporary_dir /tmp # Куда складывать отчеты. output_dir /usr/local/www/sarg/ # Преобразовывать IP в имя по DNS. При большом парке машин # или проблема с DNS рекомендую отключать эту опцию. resolve_ip yes # Сортировка юзеров в выводе по USER CONNECT BYTES TIME topuser_sort_field BYTES reverse user_sort_field BYTES reverse date_format e remove_temp_files yes index yes overwrite_report yes topsites_num 100 index_sort_order D max_elapsed 28800000 # Разнообразные типы отчетов, включим все. report_type topusers topsites sites_users users_sites date_time denied auth_failures site_user_time_date downloads date_time_by elap charset Koi8-r show_sarg_info no download_suffix "zip,arj,bzip,gz,ace,doc,iso,adt,bin,cab,com,dot,drv$,lha,lzh,md b,mso,ppt,rtf,src,shs,sys,exe,dll,mp3,avi,mpg,mpeg"
Добавляем задачу в Cron каждую пятницу в 23.00 парсим логи и каждый месяц прибираем Squid
# SARG 0 23 * * 5 /usr/local/bin/sarg > /dev/null 2>&1 # Moved Old Squid Log 0 0 1 * * /root/scripts/squid_log_moved > /dev/null 2>&1
Скрипт очисти логов Squid:
# cat /scripts/squid_log_moved #!/bin/sh # current_year=`date '+%Y'` current_month=`date '+%m'` current_date=`date '+%d'` ## Создаем директорию для логов log_dir="/var/squid/old_logs/${current_year}/${current_month}" mkdir -p ${log_dir} 2>/dev/null ## Очищаем логи SQUID cat /var/squid/logs/access.log > /tmp/log.tmp cat /dev/null > /var/squid/logs/access.log gzip -c /tmp/log.tmp > ${log_dir}/squid.log.gz #gzip -c ${log_dir}/squid.log > ${log_dir}/squid.log.gz #rm -R /usr/local/www/sarg/*
В вашей директории технического сайта сделайте символическую ссылку.
% cd /home/serv/www/data # ln -s /usr/local/www/sarg/ sarg # ll total 4 lrwxr-xr-x 1 root serv 20B 5 авг 11:32 glpi -> /usr/local/www/glpi/ lrwxr-xr-x 1 root serv 26B 5 авг 11:17 phpMyAdmin -> /usr/local/www/phpMyAdmin/ -rw-r--r-- 1 serv serv 21B 5 авг 10:51 phpinfo.php lrwxr-xr-x 1 root serv 27B 5 авг 12:23 phpldapadmin -> /usr/local/www/phpldapadmin lrwxr-xr-x 1 root serv 20B 17 авг 13:16 sarg -> /usr/local/www/sarg/ drwxr-xr-x 3 serv serv 512B 12 авг 13:19 sqstat
Анализируем логи, заходим на технический сайт и смотрим:
# sarg SARG: Records in file: 8717, reading: 100.00% SARG: Отчет успешно сгенерирован в: /usr/local/www/sarg//01Feb2011-01Feb2011
Кто тут интернет активный? 192.168.0.56 самый работящий!
Офис должен работать и заниматься делом! Вот как тут и надо бы выписать ему премию. =)
Theme by Danetsoft and Danang Probo Sayekti inspired by Maksimer
Для ротации логов сквида
Для ротации логов сквида делается простой запрос вида squid -k rotate. Сквид сам все сделает - обрежет как надо.
RE:Для ротации логов сквида
Не дописал просто
Если хочешь разобраться... Так иди и разбирайся!
[ igNix.ru | Технология жизни - технологии будущего ] [ Forum.igNix.ru ]
А еще советую посмотреть на
А еще советую посмотреть на SAMS - это намного удобней в плане мониторинга и лимитирования.
RE:А еще советую посмотреть на
ИМХО для любителей ГУИ да
Если хочешь разобраться... Так иди и разбирайся!
[ igNix.ru | Технология жизни - технологии будущего ] [ Forum.igNix.ru ]
можно указать несколько -l и
можно указать несколько -l и передать несколько лог файлов, в том числе и сжатые, а ротацией пусть занимается что там есть уже
cat /etc/cron.daily/0sarg
cat /etc/cron.weekly/0sarg
3-й в том же духе.