я сделал ещё одну таблицу в mysql
и каждый час делаю такой запрос:start TRANSACTION;
insert into stat (traff_in, traff_out, name, log_date)
select sum(ip_in), sum(ip_out), k, log_date
from
(
select
if(INET_NTOA(ip_saddr) like '192.168.%', ip_totlen, 0) as ip_out,
if(INET_NTOA(ip_daddr) like '192.168.%', ip_totlen, 0) as ip_in,
if (INET_NTOA(ip_saddr) like '192.168.%', INET_NTOA(ip_saddr), INET_NTOA(ip_daddr)) as k,
date(from_unixtime(oob_time_sec)) as log_date
from ulog_router
where oob_time_sec > UNIX_TIMESTAMP('2007-07-01')
and oob_time_sec < UNIX_TIMESTAMP('2007-07-31')
) a
group by k, log_date;
delete
from ulog_router
where oob_time_sec > UNIX_TIMESTAMP('2007-07-01') and
oob_time_sec < UNIX_TIMESTAMP('2007-07-31');
commit;
а дальше из этой таблички простенький скипт выводит отчтик