![]() |
Модераторы: marykone |
![]() ![]() ![]() |
|
konshyn |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 295 Регистрация: 19.9.2013 Репутация: нет Всего: нет |
Добрый день.
Собственно сам предмет обсуждения: как хранить статистику трафика? Где хранить? Что входит в статистику: количество пакетов в период времени 1 сек (входящих/исходящих), кол-во байт в единицу времени 1 сек (входящий/исходящий). Есть 6 различных сетевых интерфейсов, для которых будет храниться статистика. По этим данных нужно будет рисовать график на web-страничке. Как это делается? Как правильно сделать и почему? -------------------- «Потому что ценность акта действия в этой стране возрастает в несколько раз». |
|||
|
||||
Akina |
|
|||
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 22 Всего: 454 |
ТО есть ни адрес источника, ни адрес приёмника, ни протокол и прочая фигня не нужны? ну так сливай это всё в какую-нить БД, делов-то... 6 интерфейсов, 6 записей в секунду по 4 интеджера плюс штамп времени, полгига в год - мелочь. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
konshyn |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 295 Регистрация: 19.9.2013 Репутация: нет Всего: нет |
Не совсем. Есть и протокол, и задержки пакетов, и потери. Для каждой задержки должна быть своя запись. Для каждого протокола тоже отдельная запись. За прошлые сутки вышло 2 млн записей. И это не всю статистику записывал. -------------------- «Потому что ценность акта действия в этой стране возрастает в несколько раз». |
|||
|
||||
tzirechnoy |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1173 Регистрация: 30.1.2009 Репутация: нет Всего: 16 |
График рисовать для начала rrdtoolом. Соответственно, аггрегированную статистику складывать, видимо, в него. Неаггрегированную... 2 млн записей/сутки -- можно тожэ в него, на самом деле. Но это так, близко к разумному пределу.
|
|||
|
||||
konshyn |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 295 Регистрация: 19.9.2013 Репутация: нет Всего: нет |
tzirechnoy, спасибо. То, что нужно)
-------------------- «Потому что ценность акта действия в этой стране возрастает в несколько раз». |
|||
|
||||
konshyn |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 295 Регистрация: 19.9.2013 Репутация: нет Всего: нет |
Пытаюсь сделать графики через rrdtool.
Использую python. Не могу понять, как мне получать данные сколько байт было отправлено и получено на интерфейсах, и как мне организовать передачу данных с моего приложения (написано на с++) в базу данных rr? -------------------- «Потому что ценность акта действия в этой стране возрастает в несколько раз». |
|||
|
||||
tzirechnoy |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1173 Регистрация: 30.1.2009 Репутация: нет Всего: 16 |
<quote>>Не могу понять, как мне получать данные сколько байт было отправлено и
> получено на интерфейсах</quote> Взять исходники, например, collectd или netsaint и посмотреть, как там сделано. Ну, или ifconfig. Но лучшэ -- collectd. И вообще, этих мониторилок -- дофига, если тебе надо только сколько байт отправлено и получено -- то зачем писать свою? <quote>>и как мне организовать передачу данных с моего приложения (написано на > с++) в базу данных rr?</quote> Так python или C++? В любом случае, для python поиск по rrdtool python API выдаёт какие-то довольно вменяемые библиотеки, а для C -- в комплекте есть librrd, в котором из rrd.h можно понять смысл всяких rrd_update_r(). |
|||
|
||||
konshyn |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 295 Регистрация: 19.9.2013 Репутация: нет Всего: нет |
приложение на с++, а графики собирался через питон делать. -------------------- «Потому что ценность акта действия в этой стране возрастает в несколько раз». |
|||
|
||||
konshyn |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 295 Регистрация: 19.9.2013 Репутация: нет Всего: нет |
Что нужно смотреть, в общем-то:
1) CPU 2) Memory 3) NTP 4) Traffic (для начала общий, в последствии нужно по отдельным протоколам) 5) Данные, которые я собираю в своем приложении, которое написано на С++. Собираюсь все это делать на python, или почти все - создание базы данных, занесение, html страничку. Так вот, данные с моего приложения планирую просто записывать в файл, а на питоне его парсить и заносить в rrdb. для cpu нашел библиотеку kvm, но на Си; для трафика пока что ничего не нашел, кроме вывода ifconfig. NTP и memory пока не трогаю, в последнюю очередь. хоть бы с этим разобраться. так вот, не могу понять, как это все собрать в кучу. собственно вопросы: 1) Когда rrdb создана, как туда каждые --steps заносится информация? Я так понял, что нужно написать скрипты, которые будут это делать и запускаться каждые --steps секунд. Допустим я эти скрипты написал, как сделать, чтобы они запускались переодически? С созданием графа тоже самое, похоже. 2) Откуда получать информацию о трафике? 3) насчет kvm, так планирую сделать тоже самое, как и со своим приложением. Написать отдельную программу, которую запускает скрипт, а после ее окончания парсит инфу с файла. P.S. но конкретного понимания не имею, как это все собрать. -------------------- «Потому что ценность акта действия в этой стране возрастает в несколько раз». |
|||
|
||||
tzirechnoy |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1173 Регистрация: 30.1.2009 Репутация: нет Всего: 16 |
Взять collectd, в котором 99.7% ужэ написана.
|
|||
|
||||
konshyn |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 295 Регистрация: 19.9.2013 Репутация: нет Всего: нет |
Чем рисовать тогда графики? rrdtool? Добавлено через 18 секунд Имею в виду, что посоветовать можешь? -------------------- «Потому что ценность акта действия в этой стране возрастает в несколько раз». |
|||
|
||||
tzirechnoy |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1173 Регистрация: 30.1.2009 Репутация: нет Всего: 16 |
Основной метод рисования графиков в collectd -- именно rrdtool. Впрочем, ещё раз: взять collectd или другой демон и именно его использовать, поскольку это и есть практически решэние твоей задачи -- это хорошая идея. Но если не хочешь почему-то, и хочешь написать свой -- возьми хотя бы исходник, и посмотри, как сделаны вещи, которых не знаешь совсем. |
|||
|
||||
konshyn |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 295 Регистрация: 19.9.2013 Репутация: нет Всего: нет |
Решил использовать cacti для сбора и отрисовки статистики. как написать к нему плагин или что-то похожее, чтобы cacti мог рисовать график по моим данным (данным, которые собирает мой демон)?
-------------------- «Потому что ценность акта действия в этой стране возрастает в несколько раз». |
|||
|
||||
_zorn_ |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1077 Регистрация: 21.8.2007 Репутация: 2 Всего: 12 |
В какти есть Data Input Method - Script/Command куда можешь прописать свой скрипт.
Если на каждое значение нужен один график - скрипт должен выводить одно число, а в Input методе будет одно поле Output Fields. Какое именно значение выводить, можно определить например параметром передаваемым скрипту. Если нужно несколько значений на одном графике - можешь посмотреть как сделано в "Unix - Get Load Average" (скрипт perl <path_cacti>/scripts/loadavg_multi.pl) |
|||
|
||||
polls |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 8.7.2014 Репутация: нет Всего: -1 |
на сервере запускаешь что то вроде tcpdump, чтобы он писал в файл,
далее, пишешь к этом txt-файлу веб-интрфейс, через который можно будет визуально смотреть, что пишется в этот файл, и через ajax обновлять постоянно веб интерфейс. В общем так должно быть верно. Добавлено через 2 минуты и 46 секунд я могу тебе помочь в этом, напиши мне в ЛС, возможно и получится. |
|||
|
||||
![]() ![]() ![]() |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Сетевые технологии | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |