Биллинговая система Nodeny
23 Ноября 2024, 21:37:29 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Прекращена поддержка версии Nodeny 49
 
   Начало   Помощь Поиск Войти Регистрация  
Страниц: 1 [2]
  Печать  
Автор Тема: раздельная статистика с нескольких независимых роутеров  (Прочитано 10678 раз)
ser970
NoDeny
Спец
*

Карма: 70
Offline Offline

Сообщений: 1323

262462619
Просмотр профиля Email
« Ответ #15 : 22 Сентября 2010, 15:07:28 »

напишите сами себе такой скриптик, или обратитесь к людям коотры смогут это сделать для вас за вознаграждение.
ну я так понимаю что вы можете написать такое))))
скока будет стоить?

давай ТЗ -посмотрим
Записан
blackjack
NoDeny
Старожил
*

Карма: 24
Offline Offline

Сообщений: 352


Просмотр профиля Email
« Ответ #16 : 23 Сентября 2010, 06:40:34 »

напишите сами себе такой скриптик, или обратитесь к людям коотры смогут это сделать для вас за вознаграждение.
ну я так понимаю что вы можете написать такое))))
скока будет стоить?

давай ТЗ -посмотрим
да, напишите конкрето, мне надо то и то и чтобы выглядело так ....
Записан
Aivanzipper
NoDeny
Старожил
*

Карма: 62
Offline Offline

Сообщений: 387


206967443
Просмотр профиля
« Ответ #17 : 23 Сентября 2010, 09:08:31 »

Наваял скрипт для вывода трафика за последние 5 мин, если немного изменить SQL-запрос то можно по разным сателлитам выбирать. В качестве параметра передавать номер направления.

Код:
#!/usr/bin/perl

use DBI;

$dbt=`date +x%Yx%-mx%-d`;
chomp $dbt;
$dbh=DBI->connect("DBI:mysql:database=bill;host=localhost;mysql_connect_timeout=3",yourlogin,yourpass);
$dbh or die ("Can't connect to database!");
$sth = $dbh->prepare(qq/SELECT sum(`in`) AS sin,sum(`out`) AS sout FROM $dbt WHERE time BETWEEN unix_timestamp()-300 AND unix_timestamp() AND class=$ARGV[0]/);
$sth->execute();
($sin, $sout)=$sth->fetchrow_array();
print "traffic_in:$sin traffic_out:$sout";
Записан
ser970
NoDeny
Спец
*

Карма: 70
Offline Offline

Сообщений: 1323

262462619
Просмотр профиля Email
« Ответ #18 : 23 Сентября 2010, 09:58:47 »

Наваял скрипт для вывода трафика за последние 5 мин, если немного изменить SQL-запрос то можно по разным сателлитам выбирать. В качестве параметра передавать номер направления.
 unix_timestamp()-300 AND unix_timestamp() ;

так не коретконо будет
дело в том что

не всегда 300  тоетсь тут надо учитівать время віпонения скрипта и не только
Записан
Aivanzipper
NoDeny
Старожил
*

Карма: 62
Offline Offline

Сообщений: 387


206967443
Просмотр профиля
« Ответ #19 : 23 Сентября 2010, 10:22:58 »

а что еще учитывать?
Записан
Aivanzipper
NoDeny
Старожил
*

Карма: 62
Offline Offline

Сообщений: 387


206967443
Просмотр профиля
« Ответ #20 : 01 Октября 2010, 10:09:45 »

Почуму у этого запроса в 0:00 трафика нету, а если его запустить утром - есть  Непонимающий

Код:
SELECT sum(`sin`) as sin,sum(`sout`) as sout from (SELECT sum(`in`) AS sin,sum(`out`) AS sout FROM x2010x10x1 WHERE time BETWEEN 1285880401-5*60 AND 1285880401 AND class=1 UNION ALL SELECT sum(`in`) AS sin,sum(`out`) AS sout FROM x2010x9x30 WHERE time BETWEEN 1285880401-5*60 AND 1285880401 AND class=1) as temp

нет, я конечно понимаю что создается таблица для следующего дня, но куда пишется трафик в период с 23:55 по 0:00 ? Что за временная таблица?
Записан
ser970
NoDeny
Спец
*

Карма: 70
Offline Offline

Сообщений: 1323

262462619
Просмотр профиля Email
« Ответ #21 : 02 Октября 2010, 09:34:26 »

нет, я конечно понимаю что создается таблица для следующего дня, но куда пишется трафик в период с 23:55 по 0:00 ? Что за временная таблица?
30.09.2010 : 25.59 -> x2010x9x30

1.10.2010 : 0.0.1 x2010x10x1

0:00  єто уже другая таблица - точка отсчета начинается именно с 0,0,0


 
Записан
Aivanzipper
NoDeny
Старожил
*

Карма: 62
Offline Offline

Сообщений: 387


206967443
Просмотр профиля
« Ответ #22 : 06 Октября 2010, 08:28:30 »

Сделал в скрипте отсылку писем: в 23:55, в 0:00 и в 0:05. Формат письма: принятно отправлено SQL-запрос.

343440265 64691684 SELECT sum(`in`) AS sin,sum(`out`) AS sout FROM x2010x10x5 WHERE time BETWEEN 1286312101-5*60 AND 1286312101 AND class=1

0 0 SELECT sum(`sin`) as sin,sum(`sout`) as sout from (SELECT sum(`in`) AS sin,sum(`out`) AS sout FROM x2010x10x6 WHERE time BETWEEN 1286312401-5*60 AND 1286312401 AND class=1 UNION ALL SELECT sum(`in`) AS sin,sum(`out`) AS sout FROM x2010x10x5
 WHERE time BETWEEN 1286312401-5*60 AND 1286312401 AND class=1) as temp

403599694 64872490 SELECT sum(`in`) AS sin,sum(`out`) AS sout FROM x2010x10x6 WHERE time BETWEEN 1286312701-5*60 AND 1286312701 AND class=1

Во втором запросе (который в 0:00) выборка ведется из 2-х таблиц с UNION ALL. Так вот проблема в том что в 0:00 данных нету а если проверить утром этим-же запросом то есть Улыбающийся хрень какая-то
Записан
Страниц: 1 [2]
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.20 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!