From: Gosha <gosha-necr@yandex.ru.>
Newsgroups: email
Date: Mon, 27 Dec 2006 14:31:37 +0000 (UTC)
Subject: Скрипт для перевода статистики SQUID в MySQL
Скрипт для перевода статистики SQUID в MySQL
Полностью ли вас устраивают отчеты генерируемые с помощью систем
статистики (sarg и т.п.)?
Если нет и вы желаете иметь возможность с помощью одного запроса на SQL
создать свой собственный отчет, то может быть вам пригодиться данный
скрипт.
Скрипт переносит данные из лог файла squid в БД MySQL или любую другую
(подправить недолго)
#/bin/sh
# Создаем файл с SQL командами для занесения данных в БД.
# (Заносятся данные: IP адрес, время, объем полученных данных, адрес посещенной страницы)
#Обнуляем после этого лог SQUID чтобы потом не занести данные снова
truncate -s 0 /tmp/squid/access.log
/usr/local/mysql/bin/mysql -u MYSQL_USER --password=MYSQL_PASS -D SQUID_DB_NAME < /tmp/tmp.squid
truncate -s 0 /tmp/tmp.squid
#Все
Файл можно занести в Cron с регулярным запуском (каждый день например)
чтобы лог SQUID'а особо не разрастался, иначе скрипт будет долго
работать.
Пример запроса на выборку данных (объем скачанного за день)
select sum(data_size)/(1024*1024) as size_t, CAST(from_unixtime(date_stamp) AS CHAR(10)) AS date_t from
logtab WHERE FROM_UNIXTIME(date_stamp) LIKE "%-04-%" group by date_t;
Структура таблицы для хранения данных:
+------------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------+------------------+------+-----+---------+----------------+
| id | int(10) unsigned | NO | PRI | | auto_increment |
| ip_addr | varchar(16) | NO | | | |
| date_stamp | int(10) unsigned | NO | | | |
| data_size | int(10) unsigned | NO | | | |
| link_href | varchar(255) | NO | | | |
+------------+------------------+------+-----+---------+----------------+
839 Прочтений • [Скрипт для перевода статистики SQUID в MySQL (squid proxy mysql log statistic)] [08.05.2012] [Комментариев: 0]